dポイントプレゼントキャンペーン実施中!

エクセル2010を使用しています。

田中・
山本
広田
小林・
杉田
佐々木・

というように氏名の最後尾に  ・  がついたリストがあります。
これを

・田中・
山本
広田
・小林・
杉田
・佐々木・  

としようと思い、
文字列の最後に ・ がついている文字列を検索し、先頭に ・ をつけるような
マクロを教えていただけないでしょうか?

あちこちのサイトでヒントになりそうなものはあったのですが
基本知識に欠けるところがありうまくマクロが書けず自力は断念しました。

ぴったりくるマクロをお授けいただければ幸いです。

A 回答 (2件)

基本的な例。


 Like演算子でのワイルドカードの扱い方
 If Then ステートメントで条件分岐
 For Each ... Next ループの扱い方
 オブジェクト型変数の宣言と扱いかた
など、自信のないところは(Web上の)テキストなどで確認しておいてください。

Sub Re8015051()
Dim r As Range
  For Each r In Range("A1:A6") ' セル範囲を適宜指定
    If r.Value Like "*・" Then ' ...文字列の最後に ・ がついている文字列...ならば
      r.Value = "・" & r.Value  ' ...先頭に ・ をつける...
    End If
  Next
End Sub
    • good
    • 0
この回答へのお礼

どうもありがとうございました。

スッキリ解決し、仕事もサクサク進みました。

また、アドバイスいただいた点もいろんなサイトをチェックし
記述された内容も少しわかってきました。

回答+アドバイス、大変ありがとうございました。

お礼日時:2013/03/28 23:57

findとfindnextについてVBAのヘルプで出てくるサンプルマクロの、ほぼそのまんまなので、わざわざネットで記事にするまでも無いという内容です。



作成例:
sub macro1()
 dim c as range
 dim c0 as string

 set c = cells.find(what:="*・", lookin:=xlvalues, lookat:=xlwhole)
 if c is nothing then
  msgbox "NOT FOUND"
  exit sub
 end if
 c0 = c.address

 do
  c = "・" & c
  set c = cells.findnext(c)
 loop until c.address = c0
end sub
    • good
    • 0
この回答へのお礼

回答ありがとうございました。

どうやら「わざわざネットで記事にするまでもない」質問だったようで大変恐縮しておりますが….

「わざわざネットで記事にするまでもない質問」かどうか?

少なくとも、私にとっては今回回答をいただいたことで問題は解決し、このサイトを利用した意義は大いにありました。

このサイトは、職業、性別、年齢、その見識….質問者も回答者もいろいろな人が
いることが多種多様なQ&Aを生むポイントであると思われ、実際、他の質問を拝見しましても、人それぞれの悩みのレベルがあると思います。

たわいもない質問かもしれませんが、今後も利用させていただければ幸いです。

お礼日時:2013/03/28 23:59

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!