Windowsのファイルの並び順がおかしい!数字がめちゃくちゃに並ぶと感じるときの設定の変更方法

LINEで送る
Pocket

Windowsのエクスプローラで [ 名前 ] > [ 昇順 ] で並び替えると「何でそう並ぶ?」と言いたくなる並び方をすることがありませんか?

例えばこんなファイル名のExcelファイル。

Windows フォルダ 名前 昇順で並べ替え

希望通りの並び順になってるでしょうか。Windowsで名前の昇順で並べ替えたフォルダです。

下から3番目のファイルは「2016年12月28日」という意味でファイル名を付けています。他の2017から始まるファイルは2017年のもの。ですので「20161228.xlsx」は先頭に来てほしいのですが、なぜこんな中途半端な位置にいるのでしょう。

もしこれでいいと思うなら、設定を変更する必要はありません。違和感を感じるかどうかは慣れの問題ですし、現在のWindowsはこの並び順がデフォルトです。そもそもそんなファイル名の付け方しないっていう方もいらっしゃるでしょう。

違和感を感じるという人は恐らく昔のWindowsに慣れてしまっているのかもしれません。Windows XP SP1より前のWindowsでは下の画像のように並んでいました。

Windows XP SP1より前のWindowsのファイルの並び方

「20161228.xlsx」が一番上に来ました!これが私の期待通りの並び順です。

これは辞書と同じ並び順ですね。ファイル名の左から順番に数字の小さいほうが上になります。1文字目が同じなら2文字目、それも同じなら3文字目…となります。

Windows XP SP1より前のWindows フォルダの並び方ルール

一見こちらの並び順のほうがいい気がしてしまいますが、ではなぜWindowsがこの並び順を変えたのか。それはこんな理由からです。

昔のWindows ファイル名の並び順

ファイルに順番に数字を付けていったら、2桁になってこんな並び順になってしまい頭に「0」を加えて「01、02、03」とファイル名を修正したことのある方も多いと思います。

これってとても不自然な並び方ですよね。「2」があるのに「1」の次が「10」って…

では現行のWindowsはどのようなルールでファイル名の数字を扱っているのでしょうか。先ほどの1~11までの名前が付いたJPGファイルをデフォルト設定のWindows 10で見てみましょう。

Windows 10 名前順

こちらです。ちゃんと意図したとおりに1から11まで小さい順に並んでいます。とても自然な順番ですよね。

Windows XP SP1より前は数字を左から1文字ずつ比較して小さい順に並べていましたが、それ以降のWindowsでは数字を数値として見ています。

どういうことかというと、「10」というファイル名を「1列目が1で2列目が0」と見るのではなく「10」として考えます。なので「1」よりも「10」が大きい、「2」よりも「10」が大きい…となり、この場合は意図したとおりにファイルが並んでくれるようになったのです。

これだけだと便利ですが、このように日付の桁を揃えずにファイル名の付けている場合は、とんでもなくおかしな並び順になってしまいます。

現行のWindowsでは数字を数値として並べる

日付順に並べるつもりでファイル名を付けたつもりが「2017<201701<201703<201704<20161228<20170212<20170429」とこのような数値として扱われてしまい小さい順に並びます。日付をファイル名にする場合は桁数を合わせないと管理しづらくなってしまいます。

右はアルファベットが含まれている場合の例。同じアルファベットの場合は次にくる数字の部分を数値として小さい順に並んでいます。

さて、どちらも一長一短な気がしますが、もしWindows XP SP1より前の辞書のような並び順に変更したいという場合は手順をご紹介しますのでやってみてください。

ただWindowsのレジストリを編集しなければならないので、バックアップをお忘れなく。変更によりトラブルが生じる場合もありますので自己責任でお願いします。

この記事の内容は下記のWindowsバージョンを対象にしています。

  • Windows 7
  • Windows 8/8.1
  • Windows 10

スポンサーリンク

Windows ファイルの並び順を変更する方法

レジストリの変更は最悪の場合、Windowsが起動しなくなります。必ずレジストリのバックアップを行ってから慎重に作業してください。

まずはレジストリのバックアップを取ってください。

バックアップの取り方はこちらを参考にしてください。

Windows 7/8/10 レジストリのバックアップと復元方法
https://316-jp.com/windows-registry-backup-restore

[ ファイル名を指定して実行 ] に「regedit」と入力 > [ OK ] をクリック。レジストリエディターを開きます。

わからない場合は上記の記事で解説していますのでご覧ください。

レジストリエディター

下記の順番でフォルダを展開していきます。
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer

レジストリエディターで編集

[ Explorer ] を左クリックして選択状態にする > 上部メニューの [ 編集 ] > [ 新規 ] > [ DWORD値 ] をクリック。

Windows レジストリエディター

「NoStrCmpLogical」と入力 > [ Enter ] キーを押す。

入力前に確定されてしまったら [ 新しい値 #1 ] を右クリック > [ 名前の変更 ] で変更可能です。

レジストリエディター 新しい値

先ほど作成した [ NoStrCmpLogical ] を左クリックで選択状態にする > [ 編集 ] > [ 修正 ] > [ 値のデータ ] に「1」を入力 > [ OK ] をクリック。

レジトリエディター 値を変更

[ NoStrCmpLogical ] の [ 値のデータ ]
「1」の場合: Windows XP SP1より前の並び方
「0」の場合: Windows XP SP1以降の並び方(Windows7/8/8.1/10のデフォルト)

上部メニューの [ ファイル ] > [ レジストリエディターの終了 ] をクリック。

レジストリエディターの終了

PCを再起動します。

再起動後にフォルダの並び順が変わります。

Windowsのファイルの並び順を変更

元に戻す方法

[ ファイル名を指定して実行 ] に「regedit」と入力 > [ OK ] をクリック。レジストリエディターを開きます。

下記の順番でフォルダを展開していきます。
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer

方法 1

こちらのやり方はまた変更したくなったときに楽な方法です。

先ほど作成した [ NoStrCmpLogical ] を左クリックで選択状態にする > [ 編集 ] > [ 修正 ] > [ 値のデータ ] に「0」を入力 > [ OK ] をクリック。

再起動すれば設定を変更する前の元の並び方に変わります。

上部メニューの [ ファイル ] > [ レジストリエディターの終了 ] をクリック。

再起動すれば設定を変更する前の元の並び方に変わります。

方法 2

こちらは先ほど変更した部分を削除します。レジストリを綺麗にしたいならこちら。

[ NoStrCmpLogical ] を右クリック > [ 削除 ] をクリック。

レジストリの変更を削除

確認ダイアログが出たら [ はい ] をクリック。

警告ダイアログ

上部メニューの [ ファイル ] > [ レジストリエディターの終了 ] をクリック。

再起動すれば設定を変更する前の元の並び方に変わります。

スポンサーリンク