Ik probeer via VBA een formule in een cel te plaatsen die het object HYPERLINK bevat.
Na lang testen en uitzoeken ben ik tot de conclusie gekomen dat het vba de code niet meer wil uitvoeren vanaf het moment dat de string dubbele quotes bevat.
Ik stel eerst de formule manueel op met de hulp van exel en bekom dan het volgende:
=HYPERLINK("[Componenten.xlsm]Basisproducten!A7";"PCB_O-3")
Om deze string te maken in VBA gebruik ik onder andere de functie Chr(34) wat me dubbele quotes oplevert.
De variable j is op dit moment 7 zoals gewenst. Met de MsgBox controleer ik de string voordat ik deze aan de cel koppel (Enkel bij het testen).
De string formule ziet er exact hetzelfde uit als wat in de formule moet staan. Toch heeft VBA een fout als ik deze code uitvoer:
Fout 1004 tijdens de uitvoering:
Door de toepassing of door object gedefinieerde fout
Ik krijg deze fout vanaf het moment dat ik de functie Chr(34) aan m'n formule toevoeg. Dit zorgt voor een correcte weergave in de MsgBox maar heeft een fout bij het toekennen aan de juiste cel.
Ik heb al op de forums van tweakers gezocht naar iemand met hetzelfde probleem maar niet veel gevonden behalve dit topic:
\[Excel/VBA]Hyperlink genereren naar ander tabblad
Dit topic gaat meer over het niet vinden van een hyperlink nadat deze met succes aan een cel gekoppeld werd. Waarschijnlijk heeft mijn probleem hier ook wat mee te maken maar ik heb wat moeite met de formule gegeven als oplossing te interpreteren en te gebruiken in VBA om m'n eigen probleem op te lossen.
De bedoeling van dit alles is om een samenvattende lijst te genereren uit andere bladen en door op de cel van de samenvatting te klikken wordt naar de desbetreffende rij gesprongen.
Na lang testen en uitzoeken ben ik tot de conclusie gekomen dat het vba de code niet meer wil uitvoeren vanaf het moment dat de string dubbele quotes bevat.
Ik stel eerst de formule manueel op met de hulp van exel en bekom dan het volgende:
=HYPERLINK("[Componenten.xlsm]Basisproducten!A7";"PCB_O-3")
Om deze string te maken in VBA gebruik ik onder andere de functie Chr(34) wat me dubbele quotes oplevert.
Visual Basic:
1
2
3
4
5
6
| Dim formule As String formule = "=HYPERLINK(" & Chr(34) & "[Componenten.xlsm]Basisproducten!A" & j & Chr(34) & ";" & Chr(34) & Blad5.Cells(j, 1).Text & Chr(34) & ")" MsgBox formule Blad14.Cells(rij, 1) = formule |
De variable j is op dit moment 7 zoals gewenst. Met de MsgBox controleer ik de string voordat ik deze aan de cel koppel (Enkel bij het testen).
De string formule ziet er exact hetzelfde uit als wat in de formule moet staan. Toch heeft VBA een fout als ik deze code uitvoer:
Fout 1004 tijdens de uitvoering:
Door de toepassing of door object gedefinieerde fout
Ik krijg deze fout vanaf het moment dat ik de functie Chr(34) aan m'n formule toevoeg. Dit zorgt voor een correcte weergave in de MsgBox maar heeft een fout bij het toekennen aan de juiste cel.
Ik heb al op de forums van tweakers gezocht naar iemand met hetzelfde probleem maar niet veel gevonden behalve dit topic:
\[Excel/VBA]Hyperlink genereren naar ander tabblad
Dit topic gaat meer over het niet vinden van een hyperlink nadat deze met succes aan een cel gekoppeld werd. Waarschijnlijk heeft mijn probleem hier ook wat mee te maken maar ik heb wat moeite met de formule gegeven als oplossing te interpreteren en te gebruiken in VBA om m'n eigen probleem op te lossen.
De bedoeling van dit alles is om een samenvattende lijst te genereren uit andere bladen en door op de cel van de samenvatting te klikken wordt naar de desbetreffende rij gesprongen.