Bonjour
J'ai un petit souci, que voici. Savez vous comment sélectionner le texte qui se trouve dans une cellule d'un tableau Word ? J'arrive à sélectionner la cellule, mais pas le texte.
(Je ne peux pas utiliser de signet, hélas).
Une idée ?
Bonjour
J'ai un petit souci, que voici. Savez vous comment sélectionner le texte qui se trouve dans une cellule d'un tableau Word ? J'arrive à sélectionner la cellule, mais pas le texte.
(Je ne peux pas utiliser de signet, hélas).
Une idée ?
Salut,
Pour sélectionner le texte d'une cellule, il faut en plus de l'adressage de la cellule une petite fonction de nettoyage.
Pour obtenir le texte de la cellule :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 Public Function netText(stTemp As String) netText = Left( stTemp , (Len(stTemp) - 2 ) End Function
Avec l'application de la fonction :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 Document.Tables(1).Cell(1,1).Range.Text
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 Dim myString As String myString = netText ( Document.Tables(1).Cell(1,1).Range.Text )
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 !
Mmmmh, j'ai essayé mais ça ne marche pas.
Précisément, je cherche à intégrer un lien hypertexte dans une cellule d'un tableau, mais ça n'a l'air de marcher qu'avec des mots, et pas une cellule. (dans ce dernier cas, le lien apparait en clair, pas "derrière" le mot.
Voila le code (avec un signet couvrant la cellule du tableau, pas avec la référence à une cellule d'un tableau) :
J'ai essayé avec "Selection.range.text" à la fin, mais ça ne marche pas.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 Sub exemple() LienHypertexte = "http://www.test.com/" Selection.GoTo What:=wdGoToBookmark, Name:="Societe" LienHypertexteSociete = Selection LienHypertexteAdresse = LienHypertexte & LienHypertexteSociete ActiveDocument.Hyperlinks.Add Anchor:=Selection.Range, Address:= _ LienHypertexteAdresse End Sub
Salut,
Voilà le code que je viens d'essayer. J'ai simplement mis un signet sur le texte de la cellule, pas la cellule et j'ai bien le résultat que tu veux, maintenant, j'ai pas très bien compris ce que tu veux faire avec ton code.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 Sub AjoutHyperlink() Dim stLink As String 'Dim oTbl As Table stLink = "http://heureuxoli.developpez.com/" 'Set oTbl = ActiveDocument.Tables(1) 'oTbl.Cell(1, 1).Select Selection.Hyperlinks.Add Anchor:=ActiveDocument.Bookmarks("S1").Range, Address:=stLink End Sub
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 !
Oui, parce qu'en fin de cellule, tu as un caractère indésirable. C'est bien pourquoi je te demandais ton codeJ'ai essayé avec "Selection.range.text" à la fin, mais ça ne marche pas.
Pour avoir le lien tout propre, tu peux mettre
Avec Selection, tu remplaces ActiveDocument par selection
Code : Sélectionner tout - Visualiser dans une fenêtre à part Lien = Left(ActiveDocument.Tables(1).Cell(1, 1).Range.Text, Len(ActiveDocument.Tables(1).Cell(1, 1).Range.Text) - 2)
Heureux... t'avait d'ailleurs mis la solution![]()
Désolé, mais je n'ai pas été suffisamment clair.
En fait, je travaille sur un fichier qui sera utilisés par plusieurs personnes. C'est un support de création pour la rédaction d'articles sur des sociétés. Le client, s'il lit l'article et veut en savoir plus sur la société, doit pouvoir cliquer sur le nom et arriver à la bonne partie du site web grâce à un lien hypertexte.
L'adresse des sociétés sur le site web est toujours la même :
www.nomdusiteweb.com/société
Ce support de création est utilisé par plusieurs personnes. Elles doivent rentrer le nom de la société dans une case du tableau. Ensuite, la création du lien hypertexte doit être automatique.
Le problème, c'est qu'il ne faut pas que le lien hypertexte soit visible ! Et ça...
Encore désolé de ne pas avoir été clair.
Et la fonction
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 Sub AjoutHyperlink() Dim stLink As String Dim stSociete As String Dim oTbl As Table stLink = "http://heureuxoli.developpez.com/" Set oTbl = ActiveDocument.Tables(1) stSociete = netText(oTbl.Cell(1, 1).Range.Text) oTbl.Cell(1, 1).Select Selection.Delete Selection.Bookmarks.Add "S1" Selection.Hyperlinks.Add Anchor:=ActiveDocument.Bookmarks("S1").Range, Address:=stLink, TextToDisplay:=stSociete End Sub
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 Public Function netText(stTemp As String) netText = Left(stTemp, (Len(stTemp) - 2)) End Function
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 !
Ouf, merci. Désolé d'avoir été laborieux.
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager