- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:ExcelのVBA 正規表現でタブを利用するには?)
ExcelのVBAで正規表現を使ってタブを利用する方法
このQ&Aのポイント
- Excel2010を利用している場合、正規表現の置換を使ってスペースをタブに変更することができます。ただし、タブ文字自体は「 」という文字で表示されるため、置換結果を見る際には注意が必要です。
- VBAの場合、正規表現を利用するにはMicrosoft VBScript Regular Expressions 5.5ライブラリを参照設定する必要があります。また、置換結果をファイルに保存する場合はファイルのオープンとクローズの処理も必要です。
- 上記のVBAコードでは、指定の範囲のセルの値に対して正規表現の置換を行い、結果をテキストファイルに保存しています。セルの値が変換されたかどうかを確認するには、保存したテキストファイルを確認することができます。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
下記コードで試してみると、うまくいっている様です。ご参考まで。 temp = reg.Replace(temp, "$1" & vbTab) とか、 temp = reg.Replace(temp, "$1" & chr(9)) でも。 Debug.Printとしても成否が分からないので、クリップボードにコピーして確認してみました。 'Microsoft Forms 2.0 Object Libraryを参照設定 Sub test() Dim reg Dim pat As String Dim temp As String Dim CB As New DataObject Set reg = CreateObject("VBScript.RegExp") With reg .Pattern = "(\d+?)[ | ]" .ignoreCase = True .Global = True End With temp = "123 45 67 9" temp = reg.Replace(temp, "$1" & vbTab) With CB .SetText temp .PutInClipboard End With 'TABが視認できるテキストエディターに貼り付けてみる End Sub
お礼
できました! 本当にありがとうございました。 タブは\tだけと思い込んでいました。 頭が固すぎました。