0

テーブルの2列目のセルごとに数字と小数点を検索し、それらを切り取り、テキストを残して左側のセルに貼り付けるコードを探しています。

例えば:

    • 1(タブスペース)テスト
    • 1.1(タブスペース)テスト
    • 1.1.1(タブスペース)テスト
    • 1.1.1.1(タブスペース)テスト

箇条書きは、異なる列の個別のセルを表します。

すべての例で、数字はタブ スペース「Chr9」によってテキストから区切られます (例に示されているように)。

ヘルプや便利なコード スニペットをいただければ幸いです。

編集:列内の各セルをスキャンするコードがいくつかありますが、最初のタブスペースまで数字と小数点のみを切り取るように指示するコードがわかりません。

4

1 に答える 1

0

このSplit機能は、あなたが求めているものを提供します。サンプルコード:

Dim inputString As String
Dim splitArray() As String
Dim result As String

inputString = "1 Test"
splitArray = Split(inputString, " ")

If(UBound(splitArray) >= 1) Then 'Making sure that it found something before using it
    result = splitArray(1) 'Text
End If

inputString = "1.1 Test"
splitArray = Split(inputString, " ")

If(UBound(splitArray) >= 1) Then
    result = splitArray(1) 'Text
End If
'etc.

アップデート

必要な機能を提供するコード:

  Dim splitArray() As String
  Dim curTable As Table
  Set curTable = ActiveDocument.Tables(1)
  For Row = 1 To curTable.Rows.Count
     With curTable
        splitArray = Split(.Cell(Row, 2).Range.Text, " ")

        If (UBound(splitArray) >= 1) Then 
           .Cell(Row, 2).Range.Text = splitArray(1)
           .Cell(Row, 1).Range.Text = splitArray(0)
        End If
     End With
  Next Row
于 2013-08-29T13:47:05.493 に答える