Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


20977 / 76738 ←次へ | 前へ→

【61169】Re:正規表現による文字の置換
発言  HAM  - 09/4/14(火) 14:03 -

引用なし
パスワード
   ▼Abyss さん
御指南ありがとうございます。
おかげさまで下記のようにだいぶすっきりさせることができました
こうなるとまた欲が出てきまして
ループ処理を何度か繰り返していますが
これを1度でやる方法などはあるのでしょうか
ありましたら教えていただきたく思います。

  Dim RE, strPattern As String
  Dim r As Range, LP, Endcol As Long
    Endcol = Cells(1, Columns.Count).End(xlToLeft).Column
    Rows(2).Clear
  Set RE = CreateObject("VBScript.RegExp")
  With RE
    .Pattern = "(|青森|岩手|宮城|秋田|山形)県||^不明" ''検索パターンを設定
    .IgnoreCase = True     ''大文字と小文字を区別しない
    .Global = True       ''文字列全体を検索
    For LP = 1 To Endcol
      If .Test(Cells(1, LP).Formula) Then Cells(2, LP) = "その他"
    Next LP
    .Pattern = "(北海道)" ''検索パターンを設定
    For LP = 1 To Endcol
      If .Test(Cells(1, LP).Formula) Then Cells(2, LP) = "北海道地方"
    Next LP
    .Pattern = "^(?:茨城|栃木|群馬|埼玉|千葉|神奈川)県|^東京都" ''検索パターンを設定
    For LP = 1 To Endcol
      If .Test(Cells(1, LP).Formula) Then Cells(2, LP) = "関東"
    Next LP
    .Pattern = "^(?:新潟|富山|石川|福井)県" ''検索パターンを設定
    For LP = 1 To Endcol
      If .Test(Cells(1, LP).Formula) Then Cells(2, LP) = "北陸"
    Next LP
    .Pattern = "^(?:山梨|長野|岐阜|静岡|愛知)県" ''検索パターンを設定
    For LP = 1 To Endcol
      If .Test(Cells(1, LP).Formula) Then Cells(2, LP) = "中部"
    Next LP
    .Pattern = "(三重|滋賀|兵庫|奈良|和歌山)県|(京都|大阪)府" ''検索パターンを設定
    For LP = 1 To Endcol
      If .Test(Cells(1, LP).Formula) Then Cells(2, LP) = "近畿"
    Next LP
    .Pattern = "(鳥取|島根|岡山|広島|山口|徳島|香川|愛媛|高知)県" ''検索パターンを設定
    For LP = 1 To Endcol
      If .Test(Cells(1, LP).Formula) Then Cells(2, LP) = "中国/四国"
    Next LP
    .Pattern = "(福岡|佐賀|長崎|熊本|大分|宮崎|鹿児)県" ''検索パターンを設定
    For LP = 1 To Endcol
      If .Test(Cells(1, LP).Formula) Then Cells(2, LP) = "九州"
    Next LP
    .Pattern = "(沖縄県)" ''検索パターンを設定
    For LP = 1 To Endcol
      If .Test(Cells(1, LP).Formula) Then Cells(2, LP) = "沖縄"
    Next LP
  End With
  Set RE = Nothing

0 hits

【61145】正規表現による文字の置換 HAM 09/4/11(土) 17:01 質問
【61146】Re:正規表現による文字の置換 Abyss 09/4/11(土) 17:13 回答
【61147】Re:正規表現による文字の置換 Abyss 09/4/11(土) 17:22 回答
【61169】Re:正規表現による文字の置換 HAM 09/4/14(火) 14:03 発言
【61174】Re:正規表現による文字の置換 Abyss 09/4/14(火) 15:33 回答
【61175】Re:正規表現による文字の置換 HAM 09/4/14(火) 15:43 お礼

20977 / 76738 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free