- 締切済み
エクセルでフィルタを使った並べ替え
エクセルで「フィルタ」から「昇順/降順で並べる」を使うと 例えば、人名で「中村/木下/田中/佐々木/中村/増田/有田」の順で並んでいると7人を例にすると、 五十音順で並べたら「有田/木下/佐々木/田中/中村/中村/増田」となるはずです。 でも「有田/佐々木/中村/中村/増田/田中/木下」のようにバラバラになってしまうのです。 同じ名字の人はかたまるのですが(中村/中村のように)、これが中村と中井だったりすると離れてしまったりします。 これはなぜでしょうか? 直す方法があれば教えて下さい。
- みんなの回答 (6)
- 専門家の回答
みんなの回答
- imogasi
- ベストアンサー率27% (4737/17069)
質問の意味がわからずパスしたが、回答と補足を見ると、聞いている意味がわかった気がします。 ーー 下記テストをして説明します。 例 メモ帳で 有田,12 木村,23 鈴木,41 東,56 近藤,41 福田,28 と打ち込む。もちろん仮名漢字変換機能を使って、漢字を打ち込んだ。(A) test04.csvという名で保存。 エクセルで上記のCSVファイルを読み込んだ。 A列 B列 有田 12 木村 23 鈴木 34 東 56 近藤 41 福田 28 となりました。 A列でソートすると 近藤 41 東 56 福田 28 木村 23 有田 12 鈴木 34 となって普通の苗字の読みの順になりません。 左桁から漢字の文字コードの順に並ぶからです。 ーー I列に=PHONETIC(A1)と入れて見ますと。近藤のままです。 ということはフリガナがフォ辞されていないのです。 以下の行も同じです。 ーー 理由はメモ帳というソフトに、(A)の際に、仮名漢字変換の際に選択されたかな情報をファイルに保持するきのが作りこまれていないからです。 ファイルメーカーのようなMS以外の他社ソフトも、まずそういう機能はつけていないか、記録の仕方が違っていて、エクセルではそれは使えません。 エクセルも昔はフリガナという機能が無かったと記憶する。 ーー (B)結論はオフィスソフト以外、他社以外からデータを持ってくるとフリガナ情報は使えない。 (C)コピーした場合もフリガナ情報をコピーしないようで使えない。(この点は改良の余地あろう) 質問者は(C)を知らないが為に、こういう質問になった。 ーーー VBAが判らないと、理解がむつかしいかもしれないが 下記のようなのを見つけて改善したので紹介します。 標準モジュールに Sub test3() Dim Row_Cnt, Column_Cnt As Integer Dim Yomi As String For i = 1 To 10 Row_Cnt = i Column_Cnt = 3 Yomi = Application.GetPhonetic(Range("A" & i)) While Yomi <> "" Cells(Row_Cnt, Column_Cnt) = Yomi Column_Cnt = Column_Cnt + 1 Yomi = Application.GetPhonetic() Wend Next i End Sub を張り付け、実行する。 結果 近藤 41 コンドウ アリダ ユウタ 東 56 ヒガシ アズマ アヅマ トウ アズ ハジメ 福田 28 フクダ フクタ フクデ フグダ 木村 23 キムラ アズマ アヅマ トウ アズ ハジメ 有田 12 アリタ アリダ ユウタ 鈴木 34 スズキ ススギ ススキ フグダ のようになった。 ーー これは 漢字の入ったセルを選択 F2キー 変換キー を押して出てくる、読み仮名をリストした機能だと思います。 それをVBAで自動的にやらしたもの。こちらは漢字単語!さえあれば、他ソフトらの漢字でも使えると思う。文章的になると難しいかもしれないが。 この中から選べば(マウスで正しいものをC列にd&D)少し入力するより易しいかと思いました。D-F列は削除。
- nobu-
- ベストアンサー率33% (31/93)
NO2です。 >私がさわっているデータは、ファイルメーカーの住所録から「書き出し」でエクセルにインポートしたものです。 これでは、「ふりがな」順はたぶん無理です。 エクセルの「ふりがな」はセルの中で、入力時の「よみ」が入るので、一般的には、コピーしたり、インポートしたりするときには、読みがセルの中に入っていません。 一度、ふりがな順に並べ替えたいデータを範囲指定して、メニューの「書式」の「ふりがな」の「表示/非表示」をオンにすると、直接入力したダータでは、画面上に「ふりがな」が表示され、並べ替え時にその「ふりがな」が対象になります。
- root16
- ベストアンサー率31% (43/138)
正確にあいうえお順にしたい場合、 PHONETIC関数でふりがなを取り出しましょう。 http://www2.moug.net/bbs/exopr/20070828000025.htm ふりがなを使わないでフィルタをかける(オプション)と、 音読み順に並ぶと思います。
- guchi_yama
- ベストアンサー率47% (57/119)
入力する際に たとえば「きのした」の木を「もく」とか、 別の読み方で入力変換した場合は、 並び替えをするとふりがなから拾うので、 変な並びになります。 しかし、例を見た限りでは、木を「もく」と、打ったとしても その前の、増田や田中の位置がおかしいですよね;; 一度、書式→ふりがな→表示/非表示 より ふりがなを表示してみて確認してみては? そうであれば、 直す方法としては、データ→並び替え→オプション の、 ふりがなを使わないにチェックを入れると同じ漢字で集まりますが、 たとえば、新居(あらい)と新田(にった)が並んだりするので、 やはり、フリガナを打ち直すのが最善ではないかと思われます。 他に良い方法があるかも知れませんが、私では思い浮かびません。 すいません。
お礼
回答ありがとうございました。 そうなんですよね。 複雑な読み方で一文字ずつ入れなければならないような名字ならわかるんですが、「西田」のように変換したら一発ででてくるような文字までおかしいので困っています。 ごめんなさい、当たり前すぎることをきいているのかも知れないんですが、、、 エクセルで固有名詞を入れる時は「漢字表記」+「ふりがな」もつけるのが常識なんでしょうか? 私がさわっているデータは、ファイルメーカーの住所録から「書き出し」でエクセルにインポートしたものです。 元の住所録にもふりがながうってあるものとないものがあるので、今回エクスポートする時はふりがなは取り出しませんでした。 もしかしてファイルメーカーから持ってきたのが原因でしょうか?
- nobu-
- ベストアンサー率33% (31/93)
>エクセルで「フィルタ」から「昇順/降順で並べる」を使うと もしかしたら、エクセルとAccessを間違えているか、「フィルタ」と「データ」を間違えているかでしょうか? エクセルの「データ」の並び替えであれば、バージョンによってもう微妙に操作方法が違いますが 1.該当データを範囲指定し、メニューの「データ」の「並べ替え」をクリックします。 2.「最優先されるキー」で、該当列をクリックし、「オプション」の「ふりがなを使う」をオンにし、実行します。 もし質問そのままの内容であれば、私の的はずれな記述でした。すみません。
お礼
アクセスは使ったことがないんで、間違いなくエクセルです。 エクセルの「データ」→「フィルタ」→「オートフィルタ」でやっています。 「並べ替え」でもできるんですね。 教えていただいたとおり、ふりがな設定を変えてやってみましたが、残念ながらうまくいかないようです。 回答ありがとうございました。
- Homiley
- ベストアンサー率33% (1/3)
「オートフィルタ」の「フィルタオプションの設定」で範囲などを確認したり、 「データ」→「並び替え」のオプションで、ふりがな設定がどうなっているか調べてみて下さい。 (ふりがなは、「書式」→「ふりがな」から表示・設定できます。) お役に立てるかどうかわかりませんが…
お礼
回答ありがとうございました。 ふりがな設定を変えて両方やってみましたが、残念ながらうまくいかないようです。 ごめんなさい、当たり前すぎることをきいているのかも知れないんですが、、、 エクセルで固有名詞を入れる時は「漢字表記」+「ふりがな」もつけるのが常識なんでしょうか?
お礼
回答ありがとうございます。 関数は基本的なもの(SUMとかAVARAGEとか)しか使ったことがないので、リンクして下さったところだけでは私には理解できませんでした。 理解できたらこれからの仕事にも役立ちそうなので、ヘルプ見たりしてもう少し調べてみます。