2021年06月18日
Excelは ~(チルダ)を検索できないけどWord・メモ帳は検索できる
以前の記事「エクスプローラーの通常メニューでフォルダやファイルの一覧をコピーする方法」で、ファイルの一覧を作成する方法を書きました。
その中で、コピーしたパスをExcelに貼り付けて、Excelの置換機能で余計なパス名を取り除いて、ファイル名だけの一覧にする方法でやっていましたが、Excelの置換機能でパス名を取り除けないケースが出てきました。
上の画像のエラーメッセージには「保護されたシートの可能性」とありますが、作業で使っているシートは保護されていないものです。
パス名を取り除けないケースは、フォルダの階層が深くてパス名が長いときだったので、検索できる文字数に制限があるのかと考えましたが、そのような制限があるという情報はネット上に見当たりません。
そこで、少しずつ置換するパス名を短くしていって、原因を探ってみました。
すると、フォルダ名の中に使われていた「 ~ 」チルダの前までであれば、置換ができることが分かりました。試しに、Excel で「 ~ 」だけを検索してみると、エラーはでないものの「 ~ 」が含まれるセルがヒットしません。
つまり、「 ~ 」は検索できていないことになります。
Wordやメモ帳なら「 ~ 」があっても置換できる
そうなると、他のアプリでも同じかもしれません。
Wordでもやはり同じなのか試してみると、あっさりと置換できました。
メモ帳とテキストエディタでも試してみましたが、こちらも問題なく置換できます。
だったら、Wordやメモ帳でやればいいという話しになりますが、Wordやメモ帳の場合は貼り付けたパスが「 " 」ダブルクォーテーションで挟まれてしまうので、ファイル名の前のパスを置換で削除したあと、末尾の「 " 」も置換で削除する必要があります。
大した手間ではないですが、ちょっと損した気分です。
Excelでも「 ~ 」を含むパス名を置換する方法
そもそも何でExcelは「 ~ 」が検索できないの?
そう思ってネットで情報を探してみると、やはり「 ~ 」が検索できないという情報が見つかり、それはエスケープ文字だからということが分かりました。
エスケープ文字とは?と、こちらも調べてみましたが、何かよくわからないので、エスケープ文字の意味は今回は置いておくことに。
見つけた情報の中に「 ~ 」を2つ入れればいいと書いてあったので、「 ~~ 」をEXCELで検索してみると、「 ~ 」を含むセルがヒットしました。
ならば、「 ~ 」を含む長いパス名の「 ~ 」部分に「 ~ 」を1つ加えて「 ~~ 」にしてやれば、置換できるはずです。
成功です。エラーが出ることなく、ちゃんと置換できました。
Excelで「 ? 」と「 * 」を検索すると
Excelでの検索で、「 ~ 」とは少し違いますが、「 ? 」と「 * 」もそのままでは検索がうまくいきません。
「 ~ 」の場合は検索しても「 ~ 」を含むセルがヒットしませんが、「 ? 」と「 * 」の場合はすべてのセルがヒットしてしまいます。
ワイルドカードというやつで、何でも当てはまるというわけです。
Excelで「 ? 」や「 * 」が含まれるセルを検索したい場合は、その前に「 ~ 」を付けて「 ~? 」「 ~* 」として検索すれば、「 ? 」や「 * 」が含まれるセルだけがヒットします。
コピーしたパスからパス名を取り除くための置換をする場合は、そもそも「 ? 」と「 * 」がフォルダ名に使えないので関係ないですが。
この記事へのトラックバックURL
https://fanblogs.jp/tb/10804005
※言及リンクのないトラックバックは受信されません。