• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

Probleem met macro's achter een hyperlink.

Status
Niet open voor verdere reacties.

postal

Gebruiker
Lid geworden
20 apr 2006
Berichten
23
Goedemorgen,

Ik heb een excel bestand met verschillende tabs (series) die hidden zijn. Ik heb 1 hoofd sheet waar ik de hyperlinks heb die naar de series wijzen. Deze staan in: B2:B20, D2:D20en F2:F20. De macro achter elke hyperlinks is:

Code:
Private Sub Worksheet_FollowHyperlink(ByVal Target As Hyperlink)
link = Range("'Index'!B2").Value

    If Target.Range.Address = "$B$2" Then
    Sheets(link).Visible = True
    Sheets(link).Select
        Exit Sub
    End If
    
link = Range("'Index'!B3").Value

    If Target.Range.Address = "$B$3" Then
    Sheets(link).Visible = True
    Sheets(link).Select
        Exit Sub
    End If

Zoals je kunt zien is dit een statische verwijzing. Ik kan het wel werkend maken maar dan heb ik zo'n 60 van die verwijzingen. Ik ben zelf vrij novice in VBA en om dit bij elkaar te sprokkelen en het werkent te krijgen was ik al een geruime tijd bezig maar zie nou echt even geen uitweg meer hoe ik deze code in normaal formaat werkent kan hebben.
Heeft iemand enig idee?

Alvast bedankt!
Gr. Dennis
 

Bijlagen

  • voorbeeld.xlsx
    16,3 KB · Weergaven: 20
Laatst bewerkt:
Je hoeft niet noodzakelijk 60 hyperlinks op je werkblad te zetten. Het kan ook met dubbelklikken op de naam v/d serie en onderstaande macro
Code:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    If Target.Column = 2 Or Target.Column = 4 Or Target.Column = 6 Then
        Sheets(Target.Value).Visible = True
        Application.Goto Sheets(Target.Value).[a1]
    End If
End Sub
 
of
Code:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    Select Case Target.Column
    Case 2,4,6
        with Sheets(Target.Value)
           .Visible = True
           Application.Goto .[a1],true
        end with
    End Select
End Sub
PS. pas svp ook nog de tegenwoordige deelwoorden in je vraag aan: werkend
 
Laatst bewerkt:
Ongelovelijk bedankt voor de snelle en goede oplossing :cool:
Heb nog veel te leren op VBA gebied.

Gr.
Dennis
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan