Property TextToDisplay blijft leeg na creatie van hyperlink met VBA-code.

Status
Niet open voor verdere reacties.

MDN111

Gebruiker
Lid geworden
13 aug 2007
Berichten
503
Hallo !

Of het alleen aan mij ligt weet ik niet, maar de hyperlinks in Excel gedragen zich soms toch bizar. Na geruime tijd van goede werking, beginnen sommige hyperlinks in een Excelsheet zich eigenaardig te gedragen. De volgende VBA-code resulteert niet aan wat ik er van verwacht:

Code:
ActiveSheet.Hyperlinks.Add Anchor:=ActiveCell, Address:=cAddress, ScreenTip:=cAddress, TextToDisplay:=cRefString

Bij de creatie van de hyperlink weigert Excel de waarde van de variabele "cRefString" in te schrijven in de property "TextToDisplay". Niettegenstaande er alleen cijfers in staan, is de variabele cRefString zeker en vast een string-type want ze is als volgt in het leven geroepen:

Code:
Dim cRefString As String
cRefString = CStr(ActiveCell.Value)

Toch blijft de property "TextToDisplay" leeg.

Bij nader onderzoek ben ik in Excel manueel een en ander gaan proberen en hier ben ik ook op iets bizar gestuit: Bij de manuele creatie van een hyperlink in de actieve cel, verschijnt de waarde van de cel als Text to Display in het "editeerscherm" van de hyperlink. Zie attachment Hyperlink-na-Creatie.jpg.

Vervolgens wijzig ik in het editeerscherm de waarde van de Text to Display in een waarde die alleen uit cijfers bestaat. En wat blijkt nu? Als ik het editeerscherm opnieuw open kan ik de Text to Display niet meer wijzigen want er staat "<< Selection in Document >>". Zie attachment Hyperlink-na-Wijziging.pjg

Dat is vervelend want in een andere macro wens ik de property TextToDisplay te evalueren op een bepaalde waarde, maar de zaak draait in de fout omdat die famueze property leeg blijft.

Iemand een idee?

Grtz,
MDN111.
 

Bijlagen

  • Hyperlink-na-Creatie.jpg
    Hyperlink-na-Creatie.jpg
    64,7 KB · Weergaven: 18
  • Hyperlink-na-Wijziging.jpg
    Hyperlink-na-Wijziging.jpg
    61,5 KB · Weergaven: 38
Laatst bewerkt:
Code:
ActiveSheet.Hyperlinks.Add Anchor:=ActiveCell, Address:=cAddress, ScreenTip:=cAddress, TextToDisplay:=format(cRefString,"_@")
 
Dag SNB,

Het werkt op voorwaarde dat de cel, waar de hyperlink in moet, geformatteerd is als "Text".
Men mag de celinhoud ook niet meer manueel wijzigen want dan krijgen we weerom "<< Selection in Document >>".

Wat ik niet begrijp is dat de Format-functie de variabele cRefString nog "méér stringer" maakt dan ze al was (???).

Erg comfortabel voel ik me niet. Ik had al eens problemen met het adres (zie http://www.helpmij.nl/forum/showthread.php/636419-Hoe-vermijden-dat-Excel-het-absolute-adres-van-een-hyperlink-omzet-naar-een-relatief) en nu weer met de TextToDisplay.

Wat is dat toch met die hyperlinks?

Grtz,
MDN111.
 
Laatst bewerkt:
Excel 'helpt' soms ongevraagd: 'herkenning' data, cijfers, tekst.

Wellicht is deze nog net iets robuuster: '@

Code:
activecell.numberformat="@"
ActiveSheet.Hyperlinks.Add Anchor:=ActiveCell, Address:=cAddress, ScreenTip:=cAddress, TextToDisplay:=format(cRefString,"[COLOR="red"]'@[/COLOR]")
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan