|
Publicité ' | ||||||||||||||||||||||
|
|
#1 |
|
Nouveau Membre du Club
![]() Inscription : octobre 2007 Messages : 55 ![]() |
Je souhaiterais simplement obtenir la position d'un mot (par exemple : {texte}) qui peut se trouver nimporte où dans mon document word pour ensuite le remplacer par un tableau.
Je n'ai pas de problème à générer mon tableau mais il se positionne au début du document Voilà mon code de d'ajout de tableau et d'essai de positionnement. Code :
$word->ActiveDocument->Tables->Add($word->Selection->Range, 5, 3); Je galère pas mal avec ça. Au passage, comment faut-il faire pour afficher les bordures d'un tableau? Car, lorsque que je crée un tableau grâce au code ci-dessus, il n'y a pas de bordures. |
|
|
00
|
|
|
#2 |
![]() ![]() ![]() Olivier LebeauContrôleur d'industrie Inscription : février 2006 Messages : 17 354 ![]() |
C'est pas vraiment pareil, en VBA, tu peux utiliser des fonctions intégrées qui permettent de le faire, on peut travailler avec des objets Range, Selection, qui peuvent être très utiles
Ce que je te propose, d'est d'ajouter un BookMark et essayer de mettre ton tableau dessus.
__________________
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 |
|
Nouveau Membre du Club
![]() Inscription : octobre 2007 Messages : 55 ![]() |
J'ai bien l'impression que les objets range, selection, ... fonctionnent aussi avec php
Merci pour ta propositions mais j'ai déjà essayé avec des bookmark mais j'ai besoin qu'ils puissent être très facilement déplacable dans le document et même en les rendant visible, je les trouve pas très pratique ... |
|
|
00
|
|
|
#4 |
![]() ![]() ![]() Olivier LebeauContrôleur d'industrie Inscription : février 2006 Messages : 17 354 ![]() |
Alors, la meilleure façon est de travailler avec un objet Selection.
J'ai jamais essayé avec PHP. Rechercher ton mot, le sélectionner. Sur la sélection insérer le tableau.
__________________
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 | ||
|
Nouveau Membre du Club
![]() Inscription : octobre 2007 Messages : 55 ![]() |
Merci pour ta rapidité
J'avais essayé de faire à peu près cque tu m'as dit mais sans succès. Code :
|
||
|
|
00
|
|
|
#6 |
|
Nouveau Membre du Club
![]() Inscription : octobre 2007 Messages : 55 ![]() |
C'est bon, j'ai trouvé
Il ne faut pas faire un Find->Text mais Find->Execute Code :
$word->Selection->Find->Execute("{texte}"); J'en profite au passage: comment doit-on faire pour nommer un tableau lors de sa création? car ne sahant pas où il peut être, il serait plus simple qu'il ait un nom plutôt qu'un numéro (ActiveDocument->Tables(2)) pour sa manipulation. |
|
|
00
|
|
|
#7 |
![]() ![]() JF JousseaumeInscription : octobre 2007 Messages : 2 390 ![]() |
![]() C'est bien comme truc mais c'est compliqué. Tu as une solution directe avce Word : le publipostage qui je rapelle est une focntion qui remplace directement (sans savoir où c'est) un élément d'insertion (comme {texte} par exemple) le contenu d'une ligne d'un fichier (mais qui en fait peut être n'importe quoi donc un tableau) en une seule opération. Maintenant si tu veux vraiment nommer ton tableau, tu fais comme Word, tu lui colles un signet (tu peux même si tu t'y connais réutiliser celui que Word met sur ton tableau), mais il n'est pas franchement explicite (_Ref183262855 par exemple) ce qui ne doit pas vraiment t'arranger, alors qu'en revanche mettre "Tableau01" (il ne faut pas d'espace et si tu veux les trier par ordre d'apparition,, prévoir tout de suite une numérotation à 2 ou 3 chiffres si tu as plus de 10 ou 100 tableaux...) |
|
|
00
|
|
|
#8 | |
|
Inactif
Inscription : février 2005 Messages : 12 466 ![]() |
Citation:
|
|
|
|
00
|
|
|
#9 |
![]() ![]() JF JousseaumeInscription : octobre 2007 Messages : 2 390 ![]() |
Oui et je l'ai déjà testé avant.
|
|
|
00
|
|
|
#10 | |
|
Inactif
Inscription : février 2005 Messages : 12 466 ![]() |
Citation:
Tu peux bien sûr lui affecter un signet mais il suffit de savoir que l'index correspond à l'ordre dans le document. Si tu veux utiliser un nom, alors crée une collection avec les noms, l'index de la collection correspondant au N° du tableau. Mais c'est plus compliqué...
|
|
|
|
00
|
|
|
#11 | ||
|
Inactif
Inscription : février 2005 Messages : 12 466 ![]() |
Comme j'avais envie de m'amuser, je t'ai fait ça
Tu places 4 tableaux d'au moins deux lignes et deux colonnes dans un document tout neuf et tu testes ça Code :
|
||
|
|
00
|
Copyright © 2000-2012 - www.developpez.com