2016-09-21 18 views
1

我有多個表的文檔的第一列替換文本,我需要看看只在第一列的每一個細胞,做一次更換:查找和表

  • 發現:( [0-9] {1; 2})2 -S
  • 取代: \ 1^p

是否有可能選擇其中列以查找,以便將其用於其他解決的文ents,替換?

+0

你能分享一下你面臨問題的部分代碼嗎? –

+0

它不是某些代碼的一部分,它只是一個查找/替換通配符,並且我必須逐步(逐個單元格)在第1列中才能打破文本中的數字。 例子: 我: 1.一些文字 2.一些文本 ,我需要使它看起來像這樣: 1(^ P) 文本.... 2(^ P) 。文字... 我希望這更清楚。 預先感謝您。 –

回答

0

在這裏你去:

Sub Replace_in_Tables(strFind As String, strReplace As String, intColumn As Integer) 

    Dim oTable As Table 
    Dim oRow As Row 

    For Each oTable In ThisDocument.Tables 

     For Each oRow In oTable.Rows 
      oTable.Cell(oRow.Index, intColumn).Range.Text = Replace(oTable.Cell(oRow.Index, intColumn).Range.Text, strFind, strReplace) 
     Next oRow 

    Next oTable 

End Sub 

這樣稱呼它:

Sub test() 

    ' replace in all tables of this document, on column 1, the string "aaa" with "xxxxxxxxxxx" 

    Replace_in_Tables "aaa", "xxxxxxxxxxxxx", 1 

End Sub 

這將替換字符串只是......不知道你的查找/替換的例子是一個正則表達式與否,在你的問題中沒有明確說明。

+0

謝謝你的迴應。 是的...在我的查找/替換我用通配符。 –

+0

感謝您使用此代碼。問題是我不知道如何使它工作。我想我必須在某個地方完成一些值,因爲它不是以這種形式工作。我更新VBA編碼...你可以更明確地說明如何實現這個代碼(我應該在哪裏放置這個代碼應該看的列的數量,在哪裏我必須把查找正則表達式和在哪裏放置替換正則表達式)。我應該如何處理seconde代碼?非常感謝你。 –