|
Publicité ' | ||||||||||||||||||||||
|
|
#1 |
|
Futur Membre du Club
![]() Grégory MARTIN Inscription : mars 2010 Messages : 72 ![]() |
Bonjour,
J'aimerais savoir s'il est possible en VBA d'insérer à l'endroit où se trouverait le curseur dans Document1 si Document1 était actif tout en travaillant dans Document2. Document2 serait modifié manuellement ou par programmation en parallèle aux modifications s'effectuant dans Document1. Choses que je voudrais insérer par VBA dans Document1 : tableaux, texte (avec modification de mise en forme), images, fichiers word, etc. Donc je voudrais l'équivalent de Selection.TypeText ou Selection.InlineShapes.AddPicture ou Selection.InlineShapes.AddOLEObject Pour insérer dans Document1 en ayant Document2 ouvert aussi en travaillant manuellement ou par programmation dans Document2. Merci |
|
|
00
|
|
|
#2 | ||
![]() ![]() ![]() Olivier LebeauContrôleur d'industrie Inscription : février 2006 Messages : 17 322 ![]() |
Salut,
Il n'y a qu'un seul objet selection et il se trouve dans le document actif. Si le document actif change, l'objet selection change. Cependant, si on sélectionne du texte dans le doc 1 que l'on bascule dans le doc 2, le texte du doc 1 reste sélectionné et lorsque l'on revient au doc 1 , la sélection està nouveau active et le texte est toujours contenu dans la selection. Pour exemple : Code :
__________________
J'ai pas encore de décodeur, alors, postez en clair ! Comment mettre une balise de code ? Débutez en VBA Mes articles Dans un MP, vous pouvez me dire que je suis beau, ... mais si c'est une question technique je ne la lis pas ! Vous êtes prévenus ! |
||
|
|
00
|
|
|
#3 |
|
Futur Membre du Club
![]() Grégory MARTIN Inscription : mars 2010 Messages : 72 ![]() |
Mon projet doit alterner ajout en fin de document / ajout à un endroit précis.
Il n'est donc pas possible de le faire sans perturber le travail de l'utilisateur dans un autre document ? |
|
|
00
|
|
|
#4 |
![]() ![]() ![]() Olivier LebeauContrôleur d'industrie Inscription : février 2006 Messages : 17 322 ![]() |
Salut,
J'avais pas lu cette particularité dans le premier message ! Il suffit d'ouvrir une instance de Word pour modifier un document. Mais si tu pouvais être plus clair et plus complet, ce serait pas plus mal.
__________________
J'ai pas encore de décodeur, alors, postez en clair ! Comment mettre une balise de code ? Débutez en VBA Mes articles Dans un MP, vous pouvez me dire que je suis beau, ... mais si c'est une question technique je ne la lis pas ! Vous êtes prévenus ! |
|
|
00
|
|
|
#5 | |||
|
Futur Membre du Club
![]() Grégory MARTIN Inscription : mars 2010 Messages : 72 ![]() |
Citation:
C'est dans ce document que, parfois je dois ajouter du texte à la suite, parfois à un endroit précis, par exemple dans un tableau word que je viens de créer par Code :
Dans le projet, c'est une boucle donc il faudrait qu'on puisse quand même travailler dans doc 2 sans avoir à attendre la fin de la macro. Il peut y avoir des changements de police par VBA que je veux garder donc avec l'objet Range, ça me semble compliqué. |
|||
|
|
00
|
|
|
#6 | ||
![]() ![]() ![]() Olivier LebeauContrôleur d'industrie Inscription : février 2006 Messages : 17 322 ![]() |
Salut,
Essaie ce code ? Code :
__________________
J'ai pas encore de décodeur, alors, postez en clair ! Comment mettre une balise de code ? Débutez en VBA Mes articles Dans un MP, vous pouvez me dire que je suis beau, ... mais si c'est une question technique je ne la lis pas ! Vous êtes prévenus ! |
||
|
|
00
|
|
|
#7 | ||
|
Futur Membre du Club
![]() Grégory MARTIN Inscription : mars 2010 Messages : 72 ![]() |
Merci, mais après avoir testé, je me rends compte que le document ne contient que le tableau et que "Salut comment vas tu bien a été effacé.
J'ai modifié ce code pour que ce ne soit plus le cas. Je l'ai mis dans une boucle pour que l'exécution soit assez longue pour voir si l'utilisateur peut entre temps modifier un autre document. Tant que la macro s'exécute, l'utilisateur ne peut modifier le document à partir de laquelle celle-ci a été lancée. Est-il possible de lancer une nouvelle application et lui demander de modifier elle-même odoc2 ? Qu'en est-il si la macro a des arguments ? Code :
|
||
|
|
00
|
|
|
#8 | ||
|
Futur Membre du Club
![]() Grégory MARTIN Inscription : mars 2010 Messages : 72 ![]() |
Suis-je bête...
Pour arriver à générer un document sans perturber l'utilisateur, il suffit que celui-ci lance le document word qui contient la macro avec la commande : Je suppose qu'on ne va jamais enregistrer un document dans C:\Program Files\Microsoft Office\Office14 On peut donc créer un fichier .cmd qui se trouve dans le répertoire où on a stocké MaMacro.docm et qui contient les lignes suivantes: Code :
|
||
|
|
00
|
Copyright © 2000-2012 - www.developpez.com