În articolul de astăzi, vă vom oferi o modalitate de a schimba în lot mai multe nume de marcaje în documentul dvs. Word.
Este puțin dificil să schimbi numele unui marcaj în documentul Word. Și într-unul dintre articolele noastre precedente, ți-am explicat modalități. Pentru informații detaliate, puteți consulta acest link: 2 moduri corecte de a schimba un nume de marcaj în documentul Word
De data aceasta, dorim să vă oferim modalitatea de a schimba în lot mai multe nume de marcaje în documentul dvs.
Schimbarea în lot a mai multor nume de marcaje prin VBA
- În primul rând și înainteost, introduceți un tabel cu 2 coloane cu mai multe rânduri la sfârșitul tabelului dvs tarobține documentul. În tabel, introduceți numele marcajelor originale în prima coloană. Și introduceți nume noi în al doilea. De asemenea, asigurați-vă că plasați cursorul în interiorul tabelului. Iată exemplul:
- Apoi invocați editorul VBA în Word apăsând „Alt+ F11”.
- Apoi, în editor, faceți clic pe „Normal” în coloana din stânga.
- Și în bara de meniu de mai sus, faceți clic pe fila „Inserare”.
- În meniul derulant al „Inserare”, alegeți „Modul”.
- Faceți dublu clic pe modulul nou pentru a-l deschide și apoi lipiți următoarele coduri în zona de codare:
Sub BatchChangeTheBookMarkNameAndUpdateCrossReference() Dim nCurrentTableIndex As Integer Dim objTable As Table Dim nRowNumber As Integer Dim objOriBookMarkList As Cell Dim objOriBookMarkListR As Range Dim objNewBookMarkListR As Range Dim ObjNewBookMarkListR As String As Range Dim Dim Str. MarkRange As Range Dim objField As Field Dim strFieldCode As String nCurrentTableIndex = ActiveDocument.Range(0, Selection.Tables(1).Range.End).Tables.Count Set objTable = ActiveDocument.Tables(nCurrentTableIndex) nRowNumber = 1 Pentru fiecare objOriBookMarkList În objTable.Columns(1).Cells Set objOriBookMarkList.ObjOriBookMarkList. Range objOriBookMarkListR.MoveEnd Unit:=wdCharacter, Count:=-1 Set objNewBookMarkListR = objTable.Cell(nRowNumber, 2).Range objNewBookMarkListR.MoveEnd Unit:=wdCharacter, Count:=-1 If objOriBookMarkListR. = objOriBookMarkListR.Text strNewName = objNewBookMarkListR.Text End If With ActiveDocument If .Bookmarks.Exists(strBookMarkName) Then Set objBookMarkRange = .Bookmarks(strBookMarkName).Range .Bookmarks(strBookMarkName).Range .Bookmarks(strBookMarkName).Range .Bookmarks(strBookMarkName).Range .Bookmarks(strBookMarkName).Dr. =objBookMarkRange ' Actualizați referința încrucișată If .Fields.Count >= 1 Then For Each objField In .Fields strFieldCode = objField.Code.Text If strFieldCode = " REF " & strBookMarkName & " \h " Then objFieldText. Înlocuiți(strFieldCode, strBookMarkName, strNewName, , 1, vbTextCompare) objField.Update End If Next objField End If Else MsgBox ("Marcajul: " & strBookMarkName & " nu este fondat.") End If End With NoBookth = Set objNumbering = nRonge nRowNumber + 1 Next MsgBox ("Toate marcajele din lista tabelului au fost redenumite.") End Sub
- Nu în ultimul rând, faceți clic pe „Run” sau apăsați „F5” pentru a executa coduri.
Când procesul este încheiat, va apărea o casetă de mesaj, cum ar fi mai jos:
De asemenea, puteți face clic pe fila „Inserare” și apoi pe „Marcaj” pentru a declanșa caseta de dialog „Marcaje”. Acum puteți vedea că numele marcajelor au fost schimbate.
Faceți față erorilor de cuvinte
Deoarece Word nu este imun la greșeli, este necesar să luați măsurile corecte când Coruperea cuvintelor se întâmplă. Most din timp, puteți recupera datele înapoi alegând un instrument de reparare competent.
Introducerea autorului:
Vera Chen este expertă în recuperarea datelor DataNumen, Inc., care este lider mondial în tehnologiile de recuperare a datelor, inclusiv repara Excel și pdf repararea produselor software. Pentru mai multe informații vizitați www.datanumen.com
Lasă un comentariu