都道府県穴埋めゲーム

Excel2003でカラオケ曲名一覧表を作ています
入力すると自動的にアイウエオ順に並ぶ方法をお願いします、セルAは曲名セルBはCDの番号セルCはCDの中の曲番号ですセルABCを入力すると自動的にアイウエオ順に並ぶ方法です。

A 回答 (3件)

No1です。


マクロでもいいということなので、VBAで一発処理の方法です。
必ずファイルのバックアップをとってから試してください。
データは1行目はタイトル行だと思いますので2行目からとしています。

まずデータを入力したシートのタブ(シート名の部分)を右クリック→「コードの表示」
これでVBエディターに画面が変わります。
右の白い広い部分に以下のコードをそのままコピペ

Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)
Application.Intersect(Range("A:A"), UsedRange).SetPhonetic
UsedRange.Offset(1).Resize(UsedRange.Rows.Count - 1).Select
Selection.Sort Key1:=Range("A2"), Order1:=xlAscending, Key2:=Range("B2") _
, Order2:=xlAscending, Key3:=Range("C2"), Order3:=xlAscending, Header:= _
xlGuess, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
SortMethod:=xlPinYin
End Sub

ワークシートに戻り、右クリックすればデータは自動的にA列を基準としたアイウエオ順に並び変わります。
これで、これからどれだけデータを追加してもあとは右クリックするだけで自動的に並び替えが行われます。
    • good
    • 0
この回答へのお礼

丁寧な回答感謝します

お礼日時:2004/04/22 12:37

マクロで最後の行を入れたら、並び替えをするということはできますが、最後の行のコードはわかりませんので、


ボタンを作って並び替えの操作のマクロを記録して、それをボタンに登録するのはどうでしょう?
    • good
    • 0
この回答へのお礼

お世話になります100単位なので最後の行は102です、出来ればお願いします。

お礼日時:2004/04/22 08:06

それでは列Dは空いていますね?



全自動ではないですがやりかたをひとつ。

もし1行目が項目行だとしたら2行目以降がデータ(曲名等)ですね?
それならD2セルに
=PHONETIC(A2)
と入れて、下までドラックしてください。
振り仮名が表示されると思います。
次にデータ範囲を選択して、メニューバーからデータ→「並べ替え」でD列を基準にして昇順で並べ替えを指定。
これでアイウエオ順になります。
(ただし、フリガナは入力した際の読み方で出ます)
    • good
    • 0

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