[英]How to split all the vertically merged cells in Microsoft Word table using word vba?
[英]Replace text in multiple cells in a table on Microsoft Word using VBA
我在 Microsoft Word 中有一個大表格,我想突出顯示最后一列中的單元格選擇,並將其中的文本從“當前”更改為“已更改”。 我知道您可以只使用復制和粘貼或使用查找/替換,但我每天都會多次執行此操作,因此只需突出顯示並單擊一個按鈕將非常有用。
我在 Excel 中有一些 VBA 可以在電子表格上正常工作,但在 Word 中似乎不起作用。
Sub WordEdit()
Dim x As Range
For Each x In Selection
If x.Value <> "" Then x.Value = "Changed"
Next
End Sub
我不是 VBA 專家,因此非常感謝您的幫助。 謝謝。
以下將在選擇中將單詞“Current”更改為“Changed”。 請注意,對於此宏,您必須將單詞作為選擇的一部分。 它不需要在最后一列,也不需要在表中; 它確實需要在選擇中。
Sub ChangeSelectionCurrentToChanged()
' Charles Kenyon 13 Oct 2020
Dim rng As Range
'
Set rng = Selection.Range
With rng.Find
.ClearFormatting
.Replacement.ClearFormatting
.Text = "Current"
.Replacement.Text = "Changed"
.Execute Replace:=wdReplaceAll
End With
Set rng = Nothing
End Sub
如果它位於文檔中任何表的最后一列,下面的宏會將單詞“Current”更改為“Changed”。 選擇什么並不重要。
Sub ChangeCurrentToChanged()
' Charles Kenyon 13 Oct 2020
Dim rng As Range
Dim iColumns As Long
Dim iRows As Long
Dim iCount As Long
Dim oTable As Table
'
For Each oTable In ActiveDocument.Tables
Let iColumns = oTable.Columns.Count
Let iRows = oTable.Rows.Count
For iCount = 1 To iRows
Set rng = oTable.Cell(iCount, iColumns).Range
With rng.Find
.ClearFormatting
.Replacement.ClearFormatting
.Text = "Current"
.Replacement.Text = "Changed"
.Execute Replace:=wdReplaceAll
End With
Next iCount
Next oTable
Set oTable = Nothing
Set rng = nothing
End Sub
下面的宏會將當前表的最后一列(插入點所在的列)中的“Current”更改為“Changed”。
Sub ChangeCurrentToChangedSelectedTable()
' Charles Kenyon 13 Oct 2020
Dim rng As Range
Dim iColumns As Long
Dim iRows As Long
Dim iCount As Long
Dim oTable As Table
'
Set oTable = Selection.Tables(1)
Let iColumns = oTable.Columns.Count
Let iRows = oTable.Rows.Count
For iCount = 1 To iRows
Set rng = oTable.Cell(iCount, iColumns).Range
With rng.Find
.ClearFormatting
.Replacement.ClearFormatting
.Text = "Current"
.Replacement.Text = "Changed"
.Execute Replace:=wdReplaceAll
End With
Next iCount
Set oTable = Nothing
Set rng = Nothing
End Sub
其中之一會滿足您的需求嗎?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.