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

いつもお世話になっております。
管理データをExcel方式で抽出して五十音順に並べ替え、見やすい表にしたいと思っています。
並べ替えまではうまくいったのですが、ア行カ行と見出しをつけるのが毎回面倒です。
一度で簡単にできる方法ってないでしょうか?
つたない文章で申し訳ありません。
よろしくお願い致します。

A 回答 (4件)

#02です。

#03さんご指摘のように前提が違うかもしれませんね。
私は以下のようなデータでテストしました

    A列   B列   C列
1行目 フリガナ 氏名   索引
2行目 イトウ  伊藤   ア行
3行目 ウエダ  上田
4行目 サトウ  佐藤   サ行
5行目 タカハシ 高橋   タ行

B列は手入力した文字列です。A2には
 =PHONETIC(B2)
でフリガナを表示させています(この列は回答には直接関係ありません。フリガナの確認用のためです)
このデータでC2に#02で回答した式を貼り付けて下方向にコピーしたのが上記結果となります。

うまくいかない理由としてテキストのコピー&ペーストでデータを作成したことにより「ふりがな」が記録されていない可能性があります。
その場合は#02の式は適用できません

また1行目にタイトル行は必須です。タイトル行がないと2行目は#VALUE!エラーとなってしまいます。

実際のデータを上記のような形式で示していただくのが早いと思います。またPHONETIC関数でフリガナが表示されるかどうかも教えて下さい
    • good
    • 0

なんとなく行き違いがありそうに思われて気になったのでしゃしゃりでました。



●#1さまのご回答に関して
#1さまへのお礼で
>並べ替え用にア・イ・ウ・エ・・・・と入力してあるセルは設けていますが…
とありますが、もしかして、こんな処理(…★)をされているのではないですか?

イ 井上松子  ⇒ ア 会田一朗  ⇒ ア行 会田一朗
ケ 見崎五郎    イ 井上松子       井上松子
サ 迫田六郎    ウ 上田次郎       上田次郎
シ 清水花子    エ 榎田竹子       榎田竹子
ウ 上田次郎    オ 大田三郎       大田三郎
エ 榎田竹子    カ 柿田梅子    カ行 柿田梅子
ク 楠木雪子    キ 菊田四郎       菊田四郎
ア 会田一朗    ク 楠木雪子       楠木雪子
コ 幸田月子    ケ 見崎五郎       見崎五郎
カ 柿田梅子    コ 幸田月子       幸田月子
キ 菊田四郎    サ 迫田六郎    サ行 迫田六郎
オ 大田三郎    シ 清水花子       清水花子

もちろん、それならそれでもいいんですが、
#1さまのご回答は、氏名列を使って並べ替えることを前提に、

井上松子 ⇒ ア
見崎五郎   会田一朗
迫田六郎   井上松子
清水花子   上田次郎
上田次郎   榎田竹子
榎田竹子   大田三郎
楠木雪子   カ
会田一朗   柿田梅子
幸田月子   菊田四郎
柿田梅子   楠木雪子
菊田四郎   見崎五郎
大田三郎   幸田月子
  ア      サ
  カ      迫田六郎
  サ      清水花子

という処理を提案されたものだと思いますが、そのように理解されていますか?

●#2さまのご回答に関して
#2さまのご回答も、
「氏名列で並べ替えを行う」⇒「氏名列に適切なふりがなデータが登録されている」
ことを前提にされていると思います。

しかし、他のソフトからデータをインポートした場合や、関数処理をした場合など、
氏名データにふりがなデータが付いていないこともままありますし、
もともとのふりがなデータが正しいとも限りません。
その場合、PHONETIC関数でふりがなデータを取得する#2さまの数式は正常に動作しません。
(数式に問題があるのではなく、そもそもの前提が食い違っています)

もし、上記★の推測(憶測?)が正しければ、#2さまの数式を、
"並べ替え用にア・イ・ウ・エ・・・・と入力してある列"
に対して適用すればきちんと動作するはずです。
(Excel2003で動作確認/その場合PHONETIC関数は外した方が無難です)
=IF(MATCH(CODE(ASC(B2))-177,{0,5,10,15,20,25,30,35,38,43},1)=MATCH(CODE(ASC(PHONETIC(B1)))-177,{0,5,10,15,20,25,30,35,38,43},1),"",MID("アカサタナハマヤラワ",MATCH(CODE(ASC(B2))-177,{0,5,10,15,20,25,30,35,38,43},1),1)&"行")

 A列 B列  C列
    ヨミ  氏名
ア行  ア   会田一朗
    イ   井上松子
    ウ   上田次郎
    エ   榎田竹子
    オ   大田三郎
カ行  カ   柿田梅子
    キ   菊田四郎
    ク   楠木雪子
    ケ   見崎五郎
    コ   幸田月子
サ行  サ   迫田六郎
    シ   清水花子

●私なりのアドバイス
上記だけでは指摘回答フラグ立ちまくりなので…(苦笑

私であれば、
#1さまのように区切行を入れて、アウトラインを設定
かつ、
#2さまの数式の一部
=MID("アカサタナハマヤラワ",MATCH(CODE(ASC(B2))-177,{0,5,10,15,20,25,30,35,38,43},1),1)&"行"
を使って"○行"というデータをびっちり埋めてしまいます。
(私の発想だと参照表を別途書き出してLookupしますが、それはまた別の話)

行  ヨミ 氏名
ア行 ア
ア行 ア  会田一朗
ア行 イ  井上松子
ア行 ウ  上田次郎
ア行 エ  榎田竹子
ア行 オ  大田三郎
カ行 カ  
カ行 カ  柿田梅子
カ行 キ  菊田四郎
カ行 ク  楠木雪子
カ行 ケ  見崎五郎
カ行 コ  幸田月子
サ行 サ  
サ行 サ  迫田六郎
サ行 シ  清水花子

この場合でも、「条件付書式」を使えば、データの並びに応じて
「(見た目だけ)自動的に結合して上詰め」したり、
「罫線種を自動的に変化」させることができます。
・「A列の値が上隣と同じなら白フォント,上隣と異なれば(グループの切れ目なら)黒フォント」
・「A列の値が上隣と同じなら極細罫,上隣と異なれば(グループの切れ目なら)通常罫」

データが埋まっていればオートフィルタが使えますし、
カウントや条件分岐も楽ですから、印刷制御等、何かと潰しが効きます。

以上、ご参考まで。
なお、もっともらしい(?)人名はもちろんダミーです。
偶然かぶった方がいらっしゃったらスミマセン。

長乱文陳謝。
    • good
    • 0

B列に氏名があるとき、「見出し」を入れたい列の2行目(1行目はタイトルを想定)に以下の式を貼り付ける。

そのセルを下方向にコピー。

=IF(MATCH(CODE(ASC(PHONETIC(B2)))-177,{0,5,10,15,20,25,30,35,38,43},1)=MATCH(CODE(ASC(PHONETIC(B1)))-177,{0,5,10,15,20,25,30,35,38,43},1),"",MID("アカサタナハマヤラワ",MATCH(CODE(ASC(PHONETIC(B2)))-177,{0,5,10,15,20,25,30,35,38,43},1),1)&"行")
    • good
    • 1
この回答へのお礼

ご回答ありがとうございました。
お礼が遅くなって申し訳ありません。
ご回答頂いてから毎日時間の空いたときに試してみてはいるんですが、うまくいきません。
せっかく教えていただいたのに、こちらがついて行けずもうしわけありません(--;)

お礼日時:2007/06/20 10:48

データー列の最後に









と入力し、書式設定で「@"行"」とします
それで、もう一度、並べ替えを実施します
    • good
    • 0
この回答へのお礼

ありがとうございます。
並べ替え用にア・イ・ウ・エ・・・・と入力してあるセルは設けていますが、またセルの結合をしたり、あ行・か行毎に太線を引いたりするのが面倒なんです。
それでエクセルでそんな機能がないか、もしくはそんなことが出来るフリーソフトなどがないかと思い、質問させていただきました。
分かりにくくて本当に申し訳ありません。

お礼日時:2007/06/13 10:52

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

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


このQ&Aを見た人がよく見るQ&A