1

テキストを検索し、次に隣接するセルを検索してメッセージボックスにテキストを表示するアルゴリズムを作成するために、VBA Excel マクロを作成しようとしています。

「建物の 1 階下の配管が壊れています」という文を解析しました。別々のセルに。このコードの使用:

Sub Module3()
'
' Parse text
'

'
    Selection.TextToColumns Destination:=Range("A2"), DataType:=xlDelimited, _
        TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=True, Tab:=True, _
        Semicolon:=False, Comma:=False, Space:=True, Other:=False, FieldInfo _
        :=Array(Array(1, 1), Array(2, 1), Array(3, 1), Array(4, 1), Array(5, 1), Array(6, 1), _
        Array(7, 1), Array(8, 1), Array(9, 1), Array(10, 1)), TrailingMinusNumbers:=True
End Sub

文が解析されます。セルを選択したら、隣接するセルをメッセージボックスに表示するにはどうすればよいですか

  1. 「壊れた」テキストを検索</li>
  2. テキスト「broken」と隣接する単語「pipe」を検索</li>
4

1 に答える 1

2

これはあなたが必要とすることをします:

Sub FindPlusOffset()
    Dim ws As Worksheet
    Dim match As Range
    Dim findMe As String
    Dim findOffset As String

    Set ws = ThisWorkbook.Sheets("Sheet1")
    findMe = "broken"

    Set match = ws.Cells.Find(findMe)
    findOffset = match.Offset(, 1).Value
    MsgBox "The adjacent word to """ & findMe & """ is """ & findOffset & """."
End Sub

探している単語が見つからない場合に備えて、エラー処理を追加する必要があるでしょう。ws作業中のシート名にオブジェクトを設定できます。

于 2013-07-01T19:52:57.493 に答える