Contournement de code vba simple

isfaen Messages postés 74 Date d'inscription jeudi 10 juin 2010 Statut Membre Dernière intervention 19 octobre 2011 - 25 mai 2011 à 15:31
isfaen Messages postés 74 Date d'inscription jeudi 10 juin 2010 Statut Membre Dernière intervention 19 octobre 2011 - 26 mai 2011 à 11:20
Bonjour!

Connaitriez vous un code VBA qui fasse la même chose que:

Sheets("Feil1").Range("A4:C4").Copy
worddoc.Bookmarks("signet1").Range.PasteSpecial Link:=True, DataType:=wdPasteOLEObject, Placement _
:=wdInLine, DisplayAsIcon:=False


Ce code copie une plage dans Excel pour la coller dans un signet prédifini Word avec liaison active

Je voudrai faire exactement la même chose mais sans copier coller? (je ne veux pas utiliser le presse papier office).

Merci beaucoup pour vos réponses!


Alex

14 réponses

ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
25 mai 2011 à 18:16
Bonjour,

utilise la méthode Copy en utilisant l'argument Destination
(ouvre ton aide en ligne sur la méthode copy. Tu uy trouveras même un exemple)


____________________
Vous aimez Codes-Sources ? Il vous aide ? Cliquez ici pour l'aider à continuer
Cliquer sur "Réponse acceptée" en bas d'une solution adéquate est
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
25 mai 2011 à 18:22
Et va lire cette discussion récente
Tu y trouveras un autre exemple


____________________
Vous aimez Codes-Sources ? Il vous aide ? Cliquez ici pour l'aider à continuer
Cliquer sur "Réponse acceptée" en bas d'une solution adéquate est
0
isfaen Messages postés 74 Date d'inscription jeudi 10 juin 2010 Statut Membre Dernière intervention 19 octobre 2011
25 mai 2011 à 18:29
J'ai trouvé ceci (merci!):

Worksheets("Sheet1").Range("A1:D4").Copy _
    destination:=Worksheets("Sheet2").Range("E5")


Ce code n'utilise pas le presse papier, je suis d'accord.

Par contre comment activer la liaison avec word, j'ai essayer d'ajouter un link:=true mais sans résultat...


Alex
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
25 mai 2011 à 18:37
Une précision : les documents Office Word et Excel sont-ils sur le même PC ? (tu ne ele précise pas !)

____________________
Vous aimez Codes-Sources ? Il vous aide ? Cliquez ici pour l'aider à continuer
Cliquer sur "Réponse acceptée" en bas d'une solution adéquate est
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
isfaen Messages postés 74 Date d'inscription jeudi 10 juin 2010 Statut Membre Dernière intervention 19 octobre 2011
25 mai 2011 à 18:44
Oui, je teste d'abord sur le même PC, par la suite ça evoluera peut être.

Merci en tout cas de te pencher sur mon problème


Alex
0
isfaen Messages postés 74 Date d'inscription jeudi 10 juin 2010 Statut Membre Dernière intervention 19 octobre 2011
25 mai 2011 à 18:46
Au début, j'ai essayé de vider le presse papier, mais je me suis rendu compte que sous Excel 2003 (V SP2) il est impossible de le toucher avec du VBA, donc je me penche sur la solution alternative qui consiste à ne pas l'utiliser.


Alex
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
25 mai 2011 à 18:59
tu sembles avoir créé un objet worddoc (bien qu'on n'en voie pas le code de création)
as-tu donc essayé de l'utiliser, genre :
worddoc.Bookmarks("signet1")= Sheets("Feil1").Range(.....)


____________________
Vous aimez Codes-Sources ? Il vous aide ? Cliquez ici pour l'aider à continuer
Cliquer sur "Réponse acceptée" en bas d'une solution adéquate est
0
isfaen Messages postés 74 Date d'inscription jeudi 10 juin 2010 Statut Membre Dernière intervention 19 octobre 2011
25 mai 2011 à 19:02
Oui, on y arrive en faisant ça.

Le problème est que ça colle en tableau Excel sans liaison, et je voudrai sauvegarder cette liaison (en double cliquant sur le tableau dans Word on arrive dans le fichier Excel d'origine)


Alex
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
25 mai 2011 à 19:07
Je connais mal Word, mais je suppose (me trompe-je ?) que tu peux y insérer/définir, en vba wordb depuis Excel dans ton objet worddoc, une liaison pour ce signet.
Est-ce le cas

____________________
Vous aimez Codes-Sources ? Il vous aide ? Cliquez ici pour l'aider à continuer
Cliquer sur "Réponse acceptée" en bas d'une solution adéquate est
0
isfaen Messages postés 74 Date d'inscription jeudi 10 juin 2010 Statut Membre Dernière intervention 19 octobre 2011
26 mai 2011 à 09:22
Re salut!

En fait, j'ai une maquette word prédéfinie avec des signets à des endroits bien spécifiques.

Je génére un fichier Excel (unique en terme de résultats de calcul), puis je lance une macro qui va ouvrir la maquette, enregistrer sous un autre nom cette maquette et ensuite déverser des tableaux ou du texte aux emplacements des signets selon les résultats du calcul.

Voili voilou!

Donc pour répondre à ta question, les signets sont déjà créés à la base et je me contente de remplir le Word.

Bonne journée!


Alex
0
4u4me4us Messages postés 780 Date d'inscription lundi 22 janvier 2007 Statut Membre Dernière intervention 30 octobre 2013 3
26 mai 2011 à 10:50
Peut être (si tu n'a pas résolut les cas) tu peux enregistrer une macro et voir le code qu'a généré excel. Parfois cela m'aide.
0
isfaen Messages postés 74 Date d'inscription jeudi 10 juin 2010 Statut Membre Dernière intervention 19 octobre 2011
26 mai 2011 à 10:55
Et bien justemment!

J'ai tenté l'opération:

J'ai selectionné une plage de cellule et l'ai fait glisser sur un doc Word. Ca marche nickel, le tableau dans word est en liaison avec Excel MAIS quand je consulte le code et ben il n'y a rien (j'ai lancé les deux enregistrement de macro: dans word ET dans Excel mais rien)...

Je vais pas en dormir de cette histoire....


Alex
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
26 mai 2011 à 11:18
MAIS quand je consulte le code et ben il n'y a rien

Pas étonnant, puisque tu es en dynamique, d'une part et que donc ton code VBA Word n'est pas modifié ! . Le résultat n'est donc apparent que pendant la session sous Excel .


____________________
Vous aimez Codes-Sources ? Il vous aide ? Cliquez ici pour l'aider à continuer
Cliquer sur "Réponse acceptée" en bas d'une solution adéquate est
0
isfaen Messages postés 74 Date d'inscription jeudi 10 juin 2010 Statut Membre Dernière intervention 19 octobre 2011
26 mai 2011 à 11:20
...
Pensez vous que le problème soit soluble ou je risque de tourner en rond?


Alex
0
Rejoignez-nous