Les Allergies
Alimentaires
Posez votre question Signaler

Commander word a partir d'excel

coldfuneral 1Messages postés 13 décembre 2007Date d'inscription - Dernière réponse le 13 déc. 2007 à 17:02
Bonjour,
voici une partie de mon programme :
Sub Traitement()
Dim AppWord As Object
Dim Chemin As String
Dim Nom As String
Chemin = ThisWorkbook.Path
Nom = Sheets("Locaux").Range("B1").Value
Set AppWord = CreateObject("Word.Application")
AppWord.Visible = True
AppWord.documents.Open Filename:=Chemin & "\" & Nom & ".txt"
AppWord.Selection.Find.ClearFormatting
AppWord.Selection.Find.Replacement.ClearFormatting
With AppWord.Selection.Find
.Text = "CLEAR"
.Replacement.Text = "ADD"
.Forward = True
.Wrap = wdFindAsk
.Format = False
.MatchCase = True
.MatchWholeWord = True
.MatchWildcards = False
.MatchSoundsLike = False
.MatchAllWordForms = False
End With
AppWord.Selection.Find.Execute Replace:=wdReplaceAll
AppWord.Activedocument.Save
AppWord.Quit
Set AppWord = Nothing
End Sub
et voici ce que je veux faire : ouvrir un fichier *.txt avec word dont le nom se trouve dans une cellule dans excel. puis rechercher le texte CLEAR et le remplacer par ADD.
problème 1 : word s'ouvre et se ferme bien, aucune erreur pendant l'execution ...... mais il ne se passe rien !! le texte n'est pas remplacé :(
problème 2 : en fait je ne veux pas remplacer CLEAR par ADD mais je veux suprimer tous les caractères " (guillemets). je voudrais donc faire une recherche de " et les remplacer par rien du tout.
quand on le fait dans word à la main, ca marche très bien. le problème c'est que dans le code de la macro excel, excel complète automatiquement les instructions (et ce meme en désactivant l'option ????) et donc lorsque je veut remplacer des guillemets je devrait mettre .Text = """ a la place de .Text = "CLEAR" mais excel rajoute un guillemet et je me retrouve avec .Text = """"
si vous avez une solution, je suis preneur
PS : j'ai vu pas mal de gens qui font
Set AppWord = New Word.Application
a la place de
Set AppWord = CreateObject("Word.Application")
mais chez moi ca ne marche pas, il me dit objet non défini :(
voila
bonne journée
Lire la suite 

Commander word a partir d'excel »

1 réponses
Réponse
+0
moins plus
t'aurais pas un plus grand monstre que ça ?

pour remplacer des caractères dans un fichier texte on lit le texte dans une variable et puis en fait

Replace(MyText, TextToFind, ReplacementText)

et voilà.

Diable, de faire ça avec Word, ça j'appelle OVERKILL
Ajouter un commentaire
Ce document intitulé « commander word a partir d'excel » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?