Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

remplacer chaine de caractères dans un hyperlien

3 réponses
Avatar
intactsaphir
Bonjour,
Je construis une feuille excel avec des dessins (rectangles avec texte). Chaque dessin "contient" un lien hypertexte avec différents fichiers (xls, pdf, doc).

Je souhaiterais remplacer (supprimer) une chaine de caractères du type: "mastic\chaudron\plastique\" laquelle s'est insérée je ne sais comment dans les liens hypertexte différents déjà validés (plusieurs centaines de liens) hé hé...


Pouvez vous m'indiquer si cela est possible, et si oui comment, en vba.


merci à vous de me répondre..
IS

3 réponses

Avatar
isabelle
bonjour IS,

pour remplacer le texte de la forme,

For Each objShp In ActiveSheet.Shapes
With objShp
With .TextFrame.Characters
AncienText = .Text
NouveauText = Application.Substitute(AncienText, ""masticchaudronplastique"", "?")
.Text = NouveauText
End With
End With
Next

isabelle

Le 2010-08-20 09:17, intactsaphir a écrit :
Bonjour,
Je construis une feuille excel avec des dessins (rectangles avec texte). Chaque
dessin "contient" un lien hypertexte avec différents fichiers (xls, pdf, doc).

Je souhaiterais remplacer (supprimer) une chaine de caractères du type:
"masticchaudronplastique" laquelle s'est insérée je ne sais comment dans les
liens hypertexte différents déjà validés (plusieurs centaines de liens) hé
hé...


Pouvez vous m'indiquer si cela est possible, et si oui comment, en vba.


merci à vous de me répondre..
IS
Avatar
michel ou sam
Bonjour,
suivant ta version d'Excel et VBA ceci pourrait fonctionner

For Each chose In ActiveSheet.Hyperlinks
chose.Address = Replace(chose.Address, "masticchaudronplastique", "")
Next

Michel

"intactsaphir" a écrit dans le message de
news:
Bonjour,
Je construis une feuille excel avec des dessins (rectangles avec texte).
Chaque
dessin "contient" un lien hypertexte avec différents fichiers (xls, pdf,
doc).

Je souhaiterais remplacer (supprimer) une chaine de caractères du type:
"masticchaudronplastique" laquelle s'est insérée je ne sais comment
dans les
liens hypertexte différents déjà validés (plusieurs centaines de liens) hé
hé...


Pouvez vous m'indiquer si cela est possible, et si oui comment, en vba.


merci à vous de me répondre..
IS
Avatar
intactsaphir
isabelle a écrit le 20/08/2010 à 15h37 :
bonjour IS,

pour remplacer le texte de la forme,

For Each objShp In ActiveSheet.Shapes
With objShp
With .TextFrame.Characters
AncienText = .Text
NouveauText = Application.Substitute(AncienText,
""masticchaudronplastique"", "?")
.Text = NouveauText
End With
End With
Next

isabelle

Le 2010-08-20 09:17, intactsaphir a écrit :
Bonjour,
Je construis une feuille excel avec des dessins (rectangles avec texte).
Chaque
dessin "contient" un lien hypertexte avec différents fichiers
(xls, pdf, doc).

Je souhaiterais remplacer (supprimer) une chaine de caractères du type:
"masticchaudronplastique" laquelle s'est insérée je
ne sais comment dans les
liens hypertexte différents déjà validés
(plusieurs centaines de liens) hé
hé...


Pouvez vous m'indiquer si cela est possible, et si oui comment, en vba.


merci à vous de me répondre..
IS




Bonjour Isabelle. Merci de votre réponse

Je me suis mal exprimé dans mon message d'origine.

Au lieu de "Chaque dessin "contient" un lien hypertexte avec différents fichiers (xls, pdf, doc).", il faudrait lire "lorsqu'on clique sur le dessin celui ci ouvre un fichier (xls, pdf, doc) par l'intermédiaire d'un lien hypertexte.

Ainsi votre programme substitue la chaine de caractère dans le libellé du dessin...dans le cas ou le lien hypertexte est le libellé de cet objet (dessin).

La solution de Michel me convient mieux. Mais je garde précieusement votre programme lequel va me servir pour une autre application.

Je vous remercie de la rapidité de votre réponse. Je me sers aussi d'un autre programme que vous m'aviez envoyé l'année dernière.

Bonne continuation... IS