並べ替えの不具合


Excel Worldで教えてもらいました。

並べ替えを行うとき、最優先されるキーを「ふりがなを使う」で並べ替え、さらに2番目に優先するキーも「ふりがなを使う」を指定したとき、2番目に優先されるキーが「文字コード順(ふりがなを使わない)」順番に並んでしまいます。まず、Excel 2003での動作をご覧ください。

ここでは、わかりやすくセルにふりがなを表示しています。A列の[名前]には、同じ名前が2つずつあります。それぞれの名前に対応する[住所]には「か」で始まる住所と「き」で始まる住所が入力されています。[データ]-[並べ替え]を実行して[並べ替え]ダイアログボックスを開き、最優先されるキーに[名前]、2番目に優先されるキーに[住所]を指定します。

もちろん「ふりがなを使う」をオンにしています。

実行結果は次の通り。

先頭の文字だけ注目すれば、

あ-か

あ-き

い-か

い-き

: - :

と並んでいます。

さて、同じデータをExcel 2007で同じように並べ替えてみましょう。

Excel 2007でも同じように[ふりがなを使う]がオンになっています。

実行結果は次の通り。Excel 2003の並べ替えとは微妙に結果が異なります。

セルB4とセルB5は「神田」→「錦糸町」でなければならず、その下のセルB6とセルB7も「神楽坂」→「京橋」でなければおかしいです。実は、2番目に優先されるキーとして指定した[住所]は、ふりがな順ではなく文字コード順に並んでいます。文字コードを調べるCODE関数を入力してみると、よくわかります。

わりと発見しやすいバグなので、Microsoftも認識しているようです。近いうちに修正されるでしょう。いや、修正されなければ困ります。