前提・実現したいこと
ExcelのデータA列にある各セルから名前だけ抜き出したいのです。
1個のセル各々には1人、複数人の名前とコメントが書いてあります。
下説明にあります(1)⇒(2)のようにしたいのです。
【追記】アドバイスをいただき追記いたしました。ありがとうございます。
改行を追記しました。「○○さん」はコメントの中にも存在しますが、コメントの中にある〇〇さんの後には改行はありません。
(1)<Excelにあるデータ>
A1セル:○○さん\改行 本日はテスト
A2セル:BBさん\改行vvさん\改行ccさん\改行 本日はBBさんありがとうございました。
A3セル:ddさん\改行FFさん\改行HHさん\改行GGさん\改行 テストテストテスト
・
・
・
・
・
A1000セル:zzさん\改行ccさん\改行HHさん\改行 晴れです。よろしくお願いいたします。
(2)<やりたいこと>
B1セル:○○さん\改行
B2セル:BBさん\改行vvさん\改行ccさん\改行
B3セル:ddさん\改行FFさん\改行HHさん\改行GGさん\改行
・
・
・
・
・
B1000セル:zzさん\改行ccさん\改行HHさん\改行
発生している問題・エラーメッセージ
コンパイルエラー 修正候補 ステートメントの最後と表示されました。 ※ActiveCell.FormulaR1C1の行で発生しました。
該当のソースコード
VBA
1Sub Do_While_Loop_Sam() 2 3 Dim i As Long 4 i = 1 5 Do While Cells(i,1) 6 Cells(i,1)=Cells(i,1)+1 7 i=i+1 8 Range(B1:B1000).Select 9 ActiveCell.FormulaR1C1 = "=LEFT(A1:A1000,FIND("さん",A1:A1000)+1" 10 11 Loop 12 End Sub
試したこと
ここに問題に対して試したことを記載してください。
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。
・コメントの中に「さん」という文字が含まれることはありませんか?(「みなさん」とか)
・VBA使用可能なら、タグに「VBA」を含めると回答が集まりやすいかもしれません。
ありがとうございます。VBAを追加しました。
コメントの中にも、確かに「さん」が含まれる可能性があります。
⇒例えばですが、「〇〇さん 本日はありがとうございました。○○さんのご協力で……」の場合があります。この場合はLEFTやLENの関数を使っていくと良いのでしょうか?
ルールが明確であればいろいろ方法はあるかと思います。
最初の「〇〇さん △△さん 」といった部分ですが、
これは名前の後に必ずスペースがあるのでしょうか?(あるとしたら半角?全角?)
そして、コメントの中で「さん」が使われるとき、そのあとにスペースは入りませんか?
ありがとうございます。〇〇さん △△さん ××さん のそれぞれの空欄には
「○○さん\n△△さん\n××さん\n」の改行が入ります。
コメントの中にある「〇〇さん」のあとには改行はありません。
「改行」であることは質問本文からは読み取れませんので、ぜひ本文を修正なさってください。
コードも変わってくると思います。
ありがとうございます。