• 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.

Lijst van tabblad namen

Status
Niet open voor verdere reacties.

marcovand

Gebruiker
Lid geworden
16 sep 2007
Berichten
22
Hallo,

Ik heb een bestand waarin misschien wel meer dan 100 tabbladen zitten. Nu wil ik aan het begin van het bestand een index pagina maken waarin de namen komen te staan van alle tabbladen. Vervolgens zou ik d.m.v een hyperlink makkelijk naar het betreffende tabblad willen.

In elk tabblad kan ik een knop zetten met een macro die me weer naar de index brengt.

Hoe is die index pagina zo makkelijke mogelijk te maken? Ik weet nagenoeg niets over VB of hoe ik dat kan toepassen

Alvast bedankt.
 
Hallo Rob,

Nee, dit had ik niet gezien. Bedankt.

Echter ik krijg een foutmelding als ik de laatste code in This Workbook zet.
In de regel "For Each sh In Sheets" geeft hij een compileerfouut bij "sh" Dat hij het project of bibliotheek niet kan vinden.
Moet ik zelf iets aanpassen in de code? Wat ik zeg, ik weet nagenoeg niets van VB

Marco


Private Sub Worksheet_Activate()
With Cells(4, 4)
.CurrentRegion.ClearContents
For Each sh In Sheets
c0 = c0 & sh.Name & "|"
Next
.Resize(Sheets.Count) = WorksheetFunction.Transpose(Split(c0, "|"))
End With
End Sub
 
De code

Code:
Private Sub Workbook_Open()
Dim i As Integer

For i = 1 To Sheets.Count
With Sheets(1)
'.Value = Sheets(i).Name
.Cells(i, 1).Hyperlinks.Add Anchor:=.Cells(i, 1), Address:="", SubAddress:=Sheets(i).Name & "!A1", TextToDisplay:=Sheets(i).Name
End With
Next i

kreeg ik werkend. Top. Bedankt.
 
Nog een aanvulling hierop. De lijst wordt elke keer als ik het bestand open bijgewerkt. Geweldig. Echter Ik loop nu tegen het volgende aan. Ik krijg 170 resultaten en dat geeft een lange lijst. Is de laatste code zo te maken dat hij in een kolom maximaal 35 resultaten geeft en dan in de kolommen A, C, E, G, I , enzovoort. Dus telkens 1 kolom overslaand?

Marco
 
Marco,

Goed dat je de code deels werkend hebt. Bewijst dat zoeken nut heeft. Voor een antwoord op je laatste vraag zul je even moeten wachten op VBA-specialisten, een categorie waar ik me niet toe reken.
 
Marco,

hoewel ik mezelf niet reken tot de VBA-specialisten toch een poging:

voeg na next i toe:

Code:
Max = 35
[a1].Select
Do While Selection.CurrentRegion.Rows.Count > Max
i = Selection.CurrentRegion.Rows.Count
Selection.Range("A" & Max + 1 & ":A" & i).Cut Destination:=Selection.Offset(, 2)
Selection.Offset(, 2).Select
Loop

waarbij max het max aantal toegestane regels is
 
Laatst bewerkt:
Ik moet zeggen, geen onaardige poging. Het werkt gewoon! top

Bedankt voor je hulp. Hier was ik zelf niet uitgekomen.
 
Sorry, helaas moet ik mij weer hierover melden.

De volgende macro staat succesvol in een bestand over 2011:


Sub Indexpage()
'
' Indexpage Macro
'

'
Dim i As Integer

For i = 1 To Sheets.Count
With Sheets(1)
'.Value = Sheets(i).Name
.Cells(i, 1).Hyperlinks.Add Anchor:=.Cells(i, 1), Address:="", SubAddress:=Sheets(i).Name & "!A1", TextToDisplay:=Sheets(i).Name
End With
Next i

Max = 35
[a1].Select
Do While Selection.CurrentRegion.Rows.Count > Max
i = Selection.CurrentRegion.Rows.Count
Selection.Range("A" & Max + 1 & ":A" & i).Cut Destination:=Selection.Offset(, 2)
Selection.Offset(, 2).Select
Loop
End Sub


Nu heb ik de macro exact zo overgezet naar een bestand over 2012 echter daar blijft de macro een compolieerfout geven. Hij kan het object of bibliotheek niet vinden en selecteert daarbij "Max =" net onder Next i

Ik heb hem ook even naar een blanco bestand gezet en dan krijg ik netjes het resultaat dat het zou moeten opleveren. Alleen in het bestand over 2012 krijg ik dan niet voor elkaar.

Ik kom er gewoon niet uit en snap het niet

Marco
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan