- 締切済み
2つのセルを一つにまとめ、不要な列を削除するマクロ
今度町内会の事務局になり、住民名簿を引き継ぎました。 エクセル2013で見ていると 住民の氏名が、A1名字A2名前A3名字A4名前A5名字.....B1名字B2名前.....といったように、 姓と名前が二つのセルに別れて入力されています。 色々必要なシートを作っていると、どうにも氏名が二つに分かれていると扱いづらい ので2つのセルを一つにまとめて整理しようと思っています。 始めは手作業でAの姓にスペースを入れてBの名前をくっ付け、Bセルを削除していましたが 効率が悪すぎます。マクロでやるにしても、スキルが足らずうまく出来ません。 複数のセルを選択し、上の作業を一気に終わらせる方法はなにかないでしょうか? よろしくお願いします。
- みんなの回答 (2)
- 専門家の回答
みんなの回答
30秒でてきる A B C Cに=concatenate(a1,b1) これでAとBの文字列が結合されてdump しかし 巨人 阪神 って名前の時に 巨人阪神 名前の間にスペースがはいらんから見にくい いくつか方法あるけどCをdummyにしてスペースを打ち込む Dに=concatenate(a1,c1,b1) これで 巨人 阪神 とdump dummyセルは幅を0に設定して見えなくする あとはセルの右下の+をつかんで一気にコピーする ここまで30秒 あとから拡張するなら、入力シートと出力シートは分けたらやりやすいかな、シート超えても関数は動作する 動的データと考えるなら入力は別にして消さない、flag作って管理 基本的な所や
- trytobe
- ベストアンサー率36% (3457/9591)
C1 に、=A1&" "&A2 のような、文字列をつなぎ合わせる式を入れて、C1-C2 の2マスを C3 以降にもコピペしてやるのが早いかもしれません。 これをやっておくと、C 列をまるごと D列にコピーしたら、D1 が自動的に =B1&" "&B2 になってくれるので。 または、これを機会に、将来のために、「姓」の次の列に「名」を並べる形にするなら、 C1 を =A1 、D1 を =A2 、として、C1-D1 を C3 以降にもコピペすると、「姓」の列の次が「名」の列にできます。 一旦、それをやっておくと、E1 に =C1&" "&D1 とすることで、フルネームの列が作れます。
補足
住民名簿と別シートで、姓と名が分かれた年度別役員名簿があります。 2つを参照しながら、役員負担回数をcountifで求めたり、今年度役員名簿 にvlookupを使ったりしているのですが、行をふやして面倒にならないでしょうか? 見当違いでしたらごめんなさい
補足
エクセルはまだまだ難しく、理解が足りなかったらすみません。 住民名簿は世帯主の住所氏名、電話番号の他に、家 族のデータも同じ行にずらっとあります。内容が重複するセルは 出来れば削除したいのですが、、、