Opgelost Inhoudsopgave sheets

Dit topic is als opgelost gemarkeerd

RoVo1211

Gebruiker
Lid geworden
24 feb 2024
Berichten
61
Besturingssysteem
Windows 11
Office versie
Office 365
Ik heb een macro die een inhoudsopgave van alle sheets genereert en deze wil ik uitbreiden met de naam die in het deelvenster "Eigenschappen" tussen haakjes staat (de interne naam).
In het deelvenster "Eigenschappen" staan 2 velden met Name: één met haakjes en één zonder haakjes.
Zie de twee omkaderde velden in de afbeelding. Deze laatste is terug te vinden op het tabblad en in de inhoudsopgave.

Ik heb de volgende macro geschreven:
Code:
Sub Sheetnames()
Sheets(ActiveWorkbook.Sheets.Count).Select

Dim teller As Integer

With Sheets(ActiveWorkbook.Sheets.Count).[A:C]
.ClearContents
.[A1].Value = Date
.[B1].Value = FormatDateTime(Time, vbShortTime)
End With

For teller = 1 To Sheets.Count
    Sheets(ActiveWorkbook.Sheets.Count).Select
    Range("A" & teller + 1) = "Sheets(" & teller & ")"
    Range("B" & teller + 1) = Sheets(teller).???? 'Ik wil hier de naam tussen haakjes weergeven
    Range("C" & teller + 1) = Sheets(teller).Name 'Dit is de naam op het tabblad

Next teller
'Debug.Print Sheets(ActiveWorkbook.Charts.Count)

Range("A:C").Columns.AutoFit

End Sub
Is het ook mogelijk om "(Name)" -de interne naam- op te nemen in de inhoudsopgave?
 

Bijlagen

  • Deelvenster Eigenschappen VBA-editor.png
    Deelvenster Eigenschappen VBA-editor.png
    15,2 KB · Weergaven: 8
Dit bedoel je?
Code:
Range("B" & teller + 1) = "(" &  Sheets(teller).Name & ")" 'Ik wil hier de naam tussen haakjes weergeven
 
Dat bedoelde ik niet, sorry. Daarmee krijg ik de naam op het tabblad tussen haakjes.
Zoals in de afbeelding te zien is, zijn er 2 velden Name. In de alfabetische weergave de bovenste, de interne naam (Name) en even verder naar beneden het veld Name (zonder haakjes, zoals deze verschijnt op het tabblad).
Kan ik het veld (Name) in de inhoudsopgave krijgen?
 
Ik snap al wat je bedoelt.
De naam tussen de haakjes is Sheet.CodeName
Dus:
Code:
 Range("B" & teller + 1) = Sheets(teller).CodeName 'Ik wil hier de naam tussen haakjes weergeven
 
Hier is het voorbeeld. Dit is handmatig gedaan, maar wil ik laten genereren door VBA
 

Bijlagen

  • Inhoudsopgave sheets.png
    Inhoudsopgave sheets.png
    11,4 KB · Weergaven: 4
Bedankt, maar het antwoord staat al in #4.
 
Jij ook bedankt. Dit was wat ik bedoelde.
 
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan