Rechercher : dans
Par :

[Macro Excel] Pb copier/coller depuis Word

Dernière réponse le 29 fév 2008 à 09:42:46 ML08, le 28 fév 2008 à 14:53:39 
 Signaler ce message aux modérateurs

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

Configuration: Windows XP
Internet Explorer 7.0

Meilleures réponses pour « [Macro Excel] Pb copier/coller depuis Word » dans :
Ubuntu - Un copier coller rapide VoirUn copier-coller ultra-rapide Sous Ubuntu, Linux, il est très simple de faire un copier coller, encore plus simple qu'un “Ctrl + C” “Ctrl + V” : Il suffit de sélectionner le texte (juste le sélectionner) pour le mettre en mémoire puis de...

1

LatelyGeek, le 28 fév 2008 à 21:10:53

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?

Répondre à LatelyGeek

2

 ML0808, le 29 fév 2008 à 09:42:46

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

Répondre à ML0808
Collection CommentÇaMarche.net