- ベストアンサー
エクセル2003で半角のみを削除するマクロ
以下のように、半角英数のタグに囲まれた全角文字の文から、半角英数(タグ部分のみ)を削除し、全角文字だけを抽出するマクロを組みたいです。 実際の使用タグは数パターンあります。 マクロに詳しい方、よろしくおねがいします。 ------------------- (現在) A1セル:<tr bgcolor="#0000ff"><td>い組</td><td>ヤマダ</td></tr> A2セル:<tr align="center" valign="middle"><td>ろ組</td><td>モリ</td></tr> A3セル:<tr><td>はに組</td><td>コバヤシ</td></tr> ↓ (やりたいこと) A1セル:い組ヤマダ A2セル:ろ組モリ A3セル:はに組コバヤシ
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
次の方法は如何でしょうか。 「置換→検索文字列欄に<*>、置換文字列欄は未入力→すべて置換」をマクロ記録した例です。 Sub 半角タブ削除() Cells.Replace What:="<*>", Replacement:="", LookAt:=xlPart, SearchOrder _ :=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False End Sub
その他の回答 (1)
- hige_082
- ベストアンサー率50% (379/747)
お試し有れ Sub test() Dim i As Long, ii As Integer Dim a As String, b As String With Worksheets("sheet1") For i = 1 To .Range("a65336").End(xlUp).Row a = "" If Not .Cells(i, 1).Value = "" Then For ii = 1 To Len(.Cells(i, 1).Value) b = .Cells(i, 1).Characters(Start:=ii, Length:=1).Caption If Asc(b) < 0 Then a = a & b End If Next ii End If .Cells(i, 1).Value = a Next i End With End Sub 多分出来ると思う
お礼
アドバイスありがとうございました。 マクロはまだまだ勉強中ですが、読み解いていってみようと思います
お礼
すばやいアドバイスありがとうございました! <*>で指定できるなんて、目からうろこでした