Dieses Makro nummeriert Ihre Anlagen variabel und setzt interaktive Querverweise darauf im Text.

1. So funktioniert das Makro:

Dieses Codebeispiel bietet Ihnen die Möglichkeit, Anlagen variabel zu nummerieren und interaktive Verweise im Text zu setzen. Verwenden Sie dazu den Ausdruck ”{#VN}”, der an die Stelle der jeweiligen Nummerierung gesetzt wird, gefolgt vom individuellen Namen des Anhangs. Für die Verweise im Text wird der Ausdruck ”(…Attachment {#VN}: Name_of_the_attachment)” verwendet.

2. Codebeispiel:

Bei der Verwendung des Makros sind einige Besonderheiten zu beachten. Um eine einwandfreie Funktion zu gewährleisten, muss die Vorlage die Überschrift „Anhänge“ enthalten. Außerdem müssen die Anhänge in einer nummerierten Liste angezeigt werden. Im Folgenden finden Sie eine Illustration zur Funktionsweise des Makros:

Sub Numbering_N_Bookmarks_Updated_3()

'ADT = Mid(AD.Text, 24, Len(AD.Text))
'Selection.Find.Execute Trim(Left(Mid(AD.Text, 5, Len(AD.Text)), Len(Mid(AD.Text, 5, Len(AD.Text))) - 1)), Forward:=False

    Dim BMT, ADT, L1 As String
    Dim H As Integer
    Dim AD, MyRange As Range: Set MyRange = ActiveDocument.Range

    Selection.EndKey wdStory
    Selection.Find.Execute "Attachements:", Forward:=False

    MyRange.SetRange Start:=Selection.End, End:=MyRange.End

    With MyRange.Find
        .Text = "{#VN}:"
        Do While .Execute
        L1 = MyRange.ListFormat.ListString
        If Right(L1, 1) = "." Then L1 = Left(L1, Len(L1) - 1)
        
        BMT = MyRange.Paragraphs(1).Range.Text
        BMT = Left(BMT, Len(BMT) - 1)
        MyRange.Text = L1 & ":"
        
        '===  Bookmark  ==='
        ActiveDocument.Bookmarks.Add Range:=MyRange.Paragraphs(1).Range, _
                  Name:="BByB" & L1
        '=================='
        Set AD = ActiveDocument.Range
        AD.SetRange Start:=AD.Start, End:=MyRange.Start

            With AD.Find
                .Text = "\(?*\)"
                .MatchWildcards = True
                .Forward = False
                Do While .Execute
                    AD.MoveEnd wdCharacter, -1
                    AD.MoveStart wdCharacter, 1
                        If InStr(.Parent.Text, BMT) Then
                        
                            AD.Select
                            Selection.Find.Execute "{#VN}"
                            Selection.TypeText L1
                            AD.Select
                            H = H + 1
                            '===  Hyperlink  ===='
                        ActiveDocument.Hyperlinks.Add Anchor:=Selection.Range, _
                        SubAddress:="BByB" & L1
                            '===================='
                        
                        Application.StatusBar = L1 & " Reference is in process!!!..."
                        
                        End If
                .Parent.Collapse wdCollapseEnd
                Loop
            End With
                
        .Parent.Collapse wdCollapseEnd
        Loop
    End With
    
Application.StatusBar = L1 & " Reference are linked converted to " & H & " Hyperlinks. 100% Completed!!!"

End Sub

WICHTIG: Wenn Sie möchten, dass das Makro beim Öffnen der Word-Datei automatisch ausgeführt wird, können Sie es “AutoOpen” nennen. Für Hilfe wenden Sie sich bitte an unseren Support (support@lawlift.com).

Makro ausführen: siehe So fügen Sie ein Word-Makro ein und führen es aus.