• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:VBAでの文字列置換)

VBAでの文字列置換

このQ&Aのポイント
  • VBAを使用してExcelのワークシートで文字列の置換を行いたいです。
  • 置換する文字列と置換後の文字列のリストを追加および変更する必要があります。
  • Word用のVBAマクロの経験はありますが、Excelでは初めての利用です。具体的な手順を教えていただけると助かります。

質問者が選んだベストアンサー

  • ベストアンサー
  • end-u
  • ベストアンサー率79% (496/625)
回答No.1

ExcelもWordと同じくマクロ記録を録る事ができますから、 実際に「置換」作業をやってみてください。 Sub Macro1() ' ' Macro1 Macro ' マクロ記録日 : 2012/7/9 ユーザー名 : end-u ' '   Cells.Replace What:="A", Replacement:="'001", LookAt:=xlWhole, _     SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _     ReplaceFormat:=False   Cells.Replace What:="B", Replacement:="'002", LookAt:=xlWhole, _     SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _     ReplaceFormat:=False End Sub こんな感じのが録れます。 [検索と置換]ダイアログの[オプション]で、必要に応じて 「セル内容が完全に同一..」などのオプションを設定して下さい。 構文の詳細は[Replaceメソッド]のヘルプを参照して下さい。 #置換後文字が 『0』から始まるなら"'001"のように先頭にプリフィックスをつけるのを忘れずに。 >ただ置換リストは追加、変更する必要があります。 この場合、作業用シートに「置換前」「置換後」の文字を入力して、それをLoop処理する、など考えられます。 例えば「Sheet1」のA1以降に「置換前」、B1以降に「置換後」の文字があるとすれば以下の感じ。 Sub test()   Dim i As Long   With Worksheets("Sheet1").Cells     For i = 1 To .Item(.Rows.Count, 1).End(xlUp).Row       MsgBox "What " & .Item(i, 1).Value & vbLf & _           "Replacement " & .Item(i, 2).Value     Next   End With End Sub

関連するQ&A

専門家に質問してみよう