Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Vba 用文本替换所有表_Vba_Ms Word - Fatal编程技术网

Vba 用文本替换所有表

Vba 用文本替换所有表,vba,ms-word,Vba,Ms Word,我想用以下文本替换文档中的所有表格: “表1”(替换第一个表) “表2”(替换第二个表) 谁能帮帮我吗 提前谢谢 我在这里提供一个我自己开发的解决方案: Sub MyMacro() Dim i As Integer For i = 1 To ActiveDocument.Tables.Count ActiveDocument.Tables(1).Select ActiveDocument.Tables(1).Delete Selection.TypeText Tex

我想用以下文本替换文档中的所有表格:

“表1”(替换第一个表) “表2”(替换第二个表)

谁能帮帮我吗


提前谢谢

我在这里提供一个我自己开发的解决方案:

Sub MyMacro()

Dim i As Integer

For i = 1 To ActiveDocument.Tables.Count
    ActiveDocument.Tables(1).Select
    ActiveDocument.Tables(1).Delete
    Selection.TypeText Text:="Table" & i
    Selection.InsertParagraphAfter
Next i

End Sub

像这样的东西更优雅,它可能会帮助你更好地学习这些概念

Sub LoopThroughAllTablesinWorkbook()

'PURPOSE: Loop through and apply a change to all Tables in the Excel Workbook
'SOURCE: www.TheSpreadsheetGuru.com/the-code-vault

Dim tbl As ListObject
Dim sht As Worksheet

'Loop through each sheet and table in the workbook
  For Each sht In ThisWorkbook.Worksheets
    For Each tbl In sht.ListObjects

      'Do something to all the tables...
        tbl.ShowTotals = True

    Next tbl
  Next sht

End Sub
”“或者

Sub tableAllSheet()

    Dim sh As Worksheet
    Dim tbl As ListObject

    'Loop through all sheets
    For Each sh In ThisWorkbook.Worksheets
        'Loop through all table on a sheet
        For Each tbl In sh.ListObjects
            'Print table name, table header row address and data range address to Immediate window
            Debug.Print tbl.Name & vbTab & tbl.HeaderRowRange.Address & vbTab & tbl.DataBodyRange.Address
        Next tbl
    Next sh

End Sub

请向我们展示您迄今为止所做的尝试,但这些尝试并不奏效,因此我们可以提供帮助。@RobertBaron我不知道VBA,但我打算学习它。然而,我现在没有必要的时间来学习它,而且我的问题的答案很紧迫(截止日期),所以我想也许这里有人会提供一个解决方案——我想解决方案只需几行代码就可以找到。由于没有人愿意帮助我,我同时手动替换了我文档中的所有表格。你做得对。所以,不是一个网站,你可以得到免费的代码!一旦您开始学习VBA并在特定代码方面遇到问题,人们将乐于帮助您。谢谢!你所分享的内容非常有趣,也很有启发性。然而,我主要关注MS Word文档的表,而不是Excel文档的表。