Bordure de cellule et lien hypertexte

7 réponses
Avatar
Brat'ac
Bonjour,

dans une cellule qui a des bordures et un lien hypertexte
si je supprime le lien avec Range("F2").Hyperlinks.Delete la cellule
pert ses bordures

une explication ?
Merci

7 réponses

Avatar
MichD
Le 21/09/20 à 09:06, Brat'ac a écrit :
Bonjour,
dans une cellule qui a des bordures et un lien hypertexte
si je supprime le lien avec Range("F2").Hyperlinks.Delete la cellule
pert ses bordures
une explication ?
Merci

Bonjour,
Au lieu d'utiliser "Range("F2").Hyperlinks.Delete",
utilise plutôt cela "Range("F2").ClearHyperlinks"
Cela supprime le lien hypertexte, mais ne supprime pas le "bleu" du
format hyperlink bien que le lien soit devenu inactif.
Ce sont les 2 possibilités. Une troisième serait de recréer les bordures
de la cellule après avoir supprimé le lien hypertexte comme ceci :
'-----------------------------------
Sub test()
Dim S As Borders
With Range("F2")
.Hyperlinks.Delete
Ajout_Bordure .Item(1, 1)
End With
End Sub
'-----------------------------------
Sub Ajout_Bordure(MaCell As Range)
For A = 7 To 10
With MaCell.Borders(A)
.LineStyle = xlContinuous
.ColorIndex = xlAutomatic
.TintAndShade = 0
.Weight = xlThin
End With
Next
End Sub
'-----------------------------------
MichD
Avatar
Brat'ac
MichD a écrit :
Bonjour,
Au lieu d'utiliser "Range("F2").Hyperlinks.Delete",
utilise plutôt cela "Range("F2").ClearHyperlinks"

Un Excel non standard chez moi ?
"Range("F2").ClearHyperlinks" ne supprime pas le lien, il est toujours
actif
Avatar
MichD
Le 21/09/20 à 11:53, Brat'ac a écrit :
MichD a écrit :
Bonjour,
Au lieu d'utiliser "Range("F2").Hyperlinks.Delete",
utilise plutôt cela "Range("F2").ClearHyperlinks"

Un Excel non standard chez moi ?
"Range("F2").ClearHyperlinks" ne supprime pas le lien, il est toujours
actif

Ben, il va falloir que tu t'adresses à Microsoft
https://docs.microsoft.com/fr-fr/office/vba/api/excel.range.clearhyperlinks?f1url=%3FappId%3DDev11IDEF1%26l%3Dfr-FR%26k%3Dk(vbaxl10.chm144250);k(TargetFrameworkMoniker-Office.Version%3Dv16)%26rd%3Dtrue
Avatar
MichD
Le 21/09/20 à 11:53, Brat'ac a écrit :
MichD a écrit :
Bonjour,
Au lieu d'utiliser "Range("F2").Hyperlinks.Delete",
utilise plutôt cela "Range("F2").ClearHyperlinks"

Un Excel non standard chez moi ?
"Range("F2").ClearHyperlinks" ne supprime pas le lien, il est toujours
actif

ATTENTION : Si la cellule contenant ce lien hypertexte passe en mode
édition doit par la touche de raccourci clavier F2 ou par un double-clic
sur la cellule. Le lien devient à nouveau actif. C'est probablement ce
que tu observes chez toi!
Avatar
Brat'ac
MichD a émis l'idée suivante :
ATTENTION : Si la cellule contenant ce lien hypertexte passe en mode édition
doit par la touche de raccourci clavier F2 ou par un double-clic sur la
cellule. Le lien devient à nouveau actif. C'est probablement ce que tu
observes chez toi!

C'est OK, par ontre cela ne garde pas non plus la mise en forme des
bordures.
Je vais donc les recréer.
Merci pour les conseils
Avatar
MichD
Le 21/09/20 à 12:16, Brat'ac a écrit :
MichD a émis l'idée suivante :
ATTENTION : Si la cellule contenant ce lien hypertexte passe en mode
édition doit par la touche de raccourci clavier F2 ou par un
double-clic sur la cellule. Le lien devient à nouveau actif. C'est
probablement ce que tu observes chez toi!

C'est OK, par ontre cela ne garde pas non plus la mise en forme des
bordures.
Je vais donc les recréer.
Merci pour les conseils

Cette ligne de code : Range("F2").ClearHyperlinks
Cela ne modifie pas le format appliqué à la cellule y compris les bordures.
Avatar
Brat'ac
MichD a présenté l'énoncé suivant :
Cette ligne de code : Range("F2").ClearHyperlinks
Cela ne modifie pas le format appliqué à la cellule y compris les bordures.

Oups j'avais gardé .delete :-@