エクセルマクロで、括弧で囲まれた文字を取得するVBAコードをご紹介します。
このページのマクロコードは、コピペで使えます。
ぜひ、お試しください。
括弧に囲まれた文字抽出
以下のExcelVBAを実行すると、括弧内の文字だけ抽出します。
Sub 括弧の中身の値を一括転記()
Dim i As Long
Dim j As Long
Dim s As Long
Dim e As Long
Dim Target As String
Dim TempChar As String
Dim k1 As String
Dim k2 As String
Dim Chk As Boolean
Dim Cnt As Long
k1 = "("
k2 = ")"
Application.ScreenUpdating = False
'1~9行目までループ
For i = 1 To 9
'A列の値を変数格納
Target = Cells(i, 1)
'転記開始列
Cnt = 1
'セルを1文字ずつループ
For j = 1 To Len(Target)
'1文字ずつ変数へ
TempChar = Mid(Target, j, 1)
'括弧の始まりだったら
If TempChar = k1 Then
Chk = False
s = j
'括弧の終わりだったら
ElseIf TempChar = k2 Then
Chk = True
e = j
End If
'B列から転記
If Chk = True Then
Cells(i, Cnt + 1) = Mid(Cells(i, 1), s + 1, (e - s) - 1)
Cnt = Cnt + 1
Chk = False
End If
Next j
Next i
Application.ScreenUpdating = True
End Sub
マクロ実行後
A列で括弧の間にある文字を、B列以降に抽出します。
括弧が複数ある場合も、抽出可能です。
“[“ と “]” で囲まれた文字列から、括弧の中身を抽出する場合は、
変数 [k1] と [k2] を以下のように指定します。
k1 = “[”
k2 = “]”
この記事がお役に立ちますと幸いです。
【エクセルマクロ】シートの追加・削除を自動化:超便利12選
...
「たった1秒で仕事が片づくExcel自動化の教科書【増強完全版】」
「5時間かかる作業が3時間でできます」ではなく「1秒で終わらせます」へ
毎日の業務を瞬時に終わらせるしくみを解説
リンク