I dagens artikkel skal vi gi deg måten å batchendre flere bokmerkenavn i Word-dokumentet.
Det er litt vanskelig å endre et bokmerkenavn i Word-dokument. Og i en av våre tidligere artikler har vi forklart måter for deg. For detaljert informasjon, kan du se denne lenken: 2 riktige måter å endre et bokmerkenavn i Word-dokumentet ditt
Denne gangen ønsker vi å tilby deg måten å batchendre flere bokmerkenavn i dokumentet ditt.
Batch-endre flere bokmerkenavn via VBA
- Først og fremstost, sett inn en tabell med to kolonner med flere rader på slutten av din tarfå dokument. I tabellen skriver du inn de originale bokmerkenavnene i den første kolonnen. Og skriv inn nye navn i det andre. Pass også på at du plasserer markøren inne i tabellen. Her er eksempelet:
- Start deretter VBA-editoren i Word ved å trykke "Alt+ F11".
- Neste i redigeringsprogrammet, klikk "Normal" i venstre kolonne.
- Og på menylinjen ovenfor klikker du på "Sett inn"-fanen.
- På rullegardinmenyen til "Sett inn", velg "Modul".
- Dobbeltklikk på ny modul for å åpne den og lim deretter inn følgende koder i kodeområdet:
Sub BatchChangeTheBookMarkNameAndUpdateCrossReference() Dim nCurrentTableIndex As Heltall Dim objTable As Table Dim nRowNumber As Integer Dim objOriBookMarkList As Cell Dim objOriBookMarkListR As Range Dim objNewBookMarkListR As Range Dim objTable As Table Dimang strFieldCode As String nCurrentTableIndex = ActiveDocument.Range(0, Selection.Tables(1).Range.End).Tables.Count Set objTable = ActiveDocument.Tables(nCurrentTableIndex) nRowNumber = 1 For Every objOriBookMarkList In objTable.Columns(1).CellsBokLriMarkist.BokLriMarkist. Range objOriBookMarkListR.MoveEnd Unit:=wdCharacter, Count:=-1 Sett objNewBookMarkListR = objTable.Cell(nRowNumber, 2).Range objNewBookMarkListR.MoveEnd Unit:=wdCharacter, Count:=-1 Bookmark "TextBook"Text "Text" = objOriBookMarkListR.Text strNewName = objNewBookMarkListR.Text End If With ActiveDocument If .Bookmarks.Exists(strBookMarkName) Then Sett objBookMarkRange = .Bookmarks(strBookMarkName).Range .Bookmarks(strBookMarkName).Delete .Bookmarks:.=Nytt .Bookmarks:.= =objBookMarkRange ' Oppdater kryssreferansen Hvis .Fields.Count >= 1 Then For Hvert objField In .Fields strFieldCode = objField.Code.Text If strFieldCode = " REF " & strBookMarkName & " \h " Så objField.Code.Text = Replace(strFieldCode, strBookMarkName, strNewName, , 1, vbTextCompare) objField.Update End If Next objField End If Else MsgBox ("bokmerket: " & strBookMarkName & " er ikke grunnlagt.") End If End With Set objBookMarkRange = Nothing nRowNumber = Nothing nRowNumber nRowNumber + 1 Next MsgBox ("Alle bokmerker i tabelllisten har fått nytt navn.") End Sub
- Sist men ikke minst, klikk "Kjør" eller trykk "F5" for å utføre koder.
Når prosessen er ferdig, vil det være en meldingsboks, for eksempel nedenfor:
Du kan også klikke på "Sett inn"-fanen og deretter "Bokmerke" for å utløse "Bokmerke"-dialogboksen. Nå kan du se at bokmerkenavnene er endret.
Håndter ordfeil
Siden Word ikke er immun mot feil, er det nødvendig å ta de riktige handlingene når Ordkorrupsjon skjer. Most av tiden kan du hente data tilbake ved å velge et dyktig reparasjonsverktøy.
Forfatterintroduksjon:
Vera Chen er en datagjenopprettingsekspert innen DataNumen, Inc., som er verdensledende innen datagjenopprettingsteknologier, inkludert fikse Excel og pdf reparere programvareprodukter. For mer informasjon besøk www.datanumen. Med
Legg igjen en kommentar