プロが教えるわが家の防犯対策術!

一つのシートに名簿があります。
半角カタカナでフリガナデータを持っていますが、
ア行で始まる人のシート、
カ行で始まる人のシート、・・・・
という様に切り分けたいのですが・・・
そういう事ってマクロで可能ですか

とりあえず、ア行は1、カ行は2、と関数でコーディングしておき、1の範囲を新規シートにコピー、2の範囲を・・・とやっていけばいいのかなぁ・・・などとおぼろげに考えていますが・・・

ただ、現実に自分でマクロを組むことが出来ないので・・・
どうすればよいか教えていただければ幸いです。

A 回答 (2件)

こんばんは。



そうですね。とりあえずおっしゃるとおりにするのがいいかと思います。

努力する気があるなら、以下をやってみてください。
1.とりあえずおっしゃるとおりに番号をつける。
--ここからマクロ記録--
2.新規シート作成
3.オートフィルタでつけた番号が1の先を抽出
4.データ全体を選択(非表示セルが一番下ならその下のセルまで選択)
5.「編集」「ジャンプ」で「セル選択」ボタンを押して、「可視セル」を選択して「OK」
6.先ほど作成したシートに貼付
--ここでマクロ記録ストップ--
あとはこれでできたコードを参考に、組んでみてください。
ヒントはFor~Nextループを使うことと左からi番目のシートはSheets(i)で選択できることですかね。

このアドバイスでできないようなら、どなたかが、全部書いてくれたコードを使うか、
正直たかだか10回ぐらいの作業なので、勉強しながらマクロを組むより手作業の方が早いと思います。
(データをアイウエオ順に並び替えてからやれば早い)
    • good
    • 0

「エクセルで名簿を50音で切り分ける」という目的優先で


手段がマクロでなくても良いのでしたら、以下の方法がお
奨めです。

「ア行」「イ行」「ウ行」...以下略という具合で50音で
良いのでしたら、「オートフィルタ」を使用します。
フリガナのデータがある列を選択して、「データ」→「フ
ィルタ」→「オートフィルタ」を選択します。
※他の列にオートフィルタをかけていて、選択できない場
合は、一旦そちらのほうを解除します。
フリガナデータの右横の▼を押して、「オプション」を選
択し、条件を指定します。
半角で入力してある「ア行」の抽出でしたら、半角で左側
のボックスに「ア」と入力して、右側のボックスは「で始
まる」を選択して「OK」を押します。
抽出されたデータをコピーして、新しく作成したシートに
貼り付けます。
※「イ行」「ウ行」...以降も同様の手順でデータを抽出
してからコピーして新しいシートに貼り付けます。

「ア行(ア~オ)」「カ行(カ~コ)」...以下略として抽出
したい場合は、ANo.1の回答者さまがおっしゃているよう
に並べ替えをしたほうが楽かもしれません。(※マクロは
使用しません)
項目を除いて記入してあるデータ部分をすべて選択した状
態で、「データ」→「並べ替え」を選択します。
「最優先されるキー」に並べ替えの基準になるフリガナが
入っている列を選択して、「昇順」にチェックが入ってい
ることを確認してから「OK」を押します。
データが並べ替えられて選択しやすくなっているはずです
ので、ア~オで始まるデータの行をすべて選択してコピー
してから新しいシートに貼り付けます。
「カ~コ」「サ~ソ」...以降も同じようにコピーしてから
貼り付けます。

あまりスマートな方法とはいえないかもしれませんが、これ
でかなり簡単にできるはずですので、よろしければお試しく
ださい。
    • good
    • 0

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

このQ&Aを見た人はこんなQ&Aも見ています