[Macro Excel] Pb copier/coller depuis Word

Fermé
ML08 - 28 févr. 2008 à 14:53
 ML0808 - 29 févr. 2008 à 09:42
Bonjour à tous,

Comme mon intitulé n'est pas limpide, je vais m'expliquer:
j'ai fait une macro qui copie un paragraphe de Word vers Excel. Le problème se produit quand se paragraphe comment par un tiret comme par exemple :

- ceci est mon paragraphe.

Quand la macro le selectionne, le copie et le colle dans une cellule excel, le texte se transforme en :
=- ceci est mon paragraphe.
Il prend le tiret pour un moins et donc transforme mon paragraphe en formule, qui s'affiche logiquement dans ma feuille par #NOM?

Quelqu'un a-t-il une idée pour résoudre ce problème?
D'avance merci,
Marc
A voir également:

2 réponses

LatelyGeek Messages postés 1758 Date d'inscription vendredi 4 janvier 2008 Statut Membre Dernière intervention 5 janvier 2023 550
28 févr. 2008 à 21:10
Pourrais tu nous coller le contenu de ta macro pour qu'on voie comment c'est fait pour l'instant et où on pourrait rajouter une phrase magique?
0
Bonjour,

Bien sûr, voivi la partie du code (la macro est longue) qui gère ça. Regardez surtout la fin...

Merci d'avance,
Marc

' *********************** Recherche *************************

' Trouve le mot dans le document

wrdApp2.Selection.Find.ClearFormatting
With wrdApp2.Selection.Find

.ClearFormatting


' Mot proche
If Proche.Value = False Then
.Text = Mot.Value

' Mot exact
If MotEx.Value = True Then
.MatchWholeWord = True
End If

' Respect de la casse
If Casse.Value = True Then
.MatchCase = True
End If
End If

' Mot proche
If Proche.Value = True Then
.Text = MotSSA
.MatchCase = False
.MatchSoundsLike = True
End If

' Toutes les formes
If Forme.Value = True Then
.Text = Mot.Value
.MatchCase = False
.MatchAllWordForms = True
End If






.MatchWildcards = 0
.Forward = 1
.Replacement.Text = ""
.Replacement.ClearFormatting
.Execute ' recherche du mot1
End With

' Répéter l'opération jusqu'à ce qu'un mot soit trouvé
Do While wrdApp2.Selection.Find.Execute = True
wrdApp2.Selection.ParaGraphs(1).Range.Select

' Donne le numéro du paragraphe
Dim pg As Integer
pg = wrdApp2.Activedocument.Range(Start:=1, End:=wrdApp2.Selection.End).ParaGraphs.Count

' Copie le paragraphe contenant le résultat
wrdApp2.Selection.Copy
' Place le curseur à droite du paragraphe copié pour continuer la recherche dans la suite
' du document
wrdApp2.Selection.Moveright , Extend:=0


' Colle le résultat dans la feuille "Résultat"
RECH.Sheets("Résultats").Cells(m, 4).PasteSpecial Paste:=xlValues, Operation:=xlNone
0