ファイル名の英数文字の全角半角変換

ゴミのように堆積したエクセルの古いファイルがある。最近これを少し整理するかと思い立ってやり始めたところである。
ちょうど旧FileSystemObject.xlsを内容的に2つに分けて、TextStream.xlsmFileSystemObject.xlsmにしたところである。
LOG
153.153.2.41 [04/Dec/2017:14:29:09] ファイル名 数字 全角 半角
211.14.158.177 [27/Nov/2017:10:47:21] NOTES 半角全角 ファイル名が変わる
122.19.38.25 [03/May/2017:22:21:24] エクセルマクロ ファイル名 半角と全角
61.115.112.170 [13/Oct/2015:16:06:54] ファイル名を半角に直すマクロ
121.118.114.137 [14/Sep/2015:09:54:46] VBA ファイル名の全角英数を半角に変換
203.180.185.145 [02/Oct/2015:14:59:56] VBA ファイル名を半角にする
ファイル名に「全角英数」文字を使うのは珍しい。私の場合は使うことは絶対にない。しかし、十人十色、人さまざまである。そんなオトコがいたところで、とやかく言うスジアイのものではない。
しかし、この内容はFileSystemObject.xlsmに適するようなネタなので、「ゴミ整理」のコースをはずれて、ちょっと試しに「創作」してみたものである。

さてここでは、次のような全角の英数文字を使ったファイル名を例にとって実験してみよう。



変換プログラム

このためにRenameZenHan.frmを作成する。
これは指定したフォルダ内の全ファイルについてファイル名の全角と半角の変換をするものである。
FileSystemObject.xlsm所収。


「参照」ボタンを押すと左のようなフォルダ選択ダイアログが出る。
フォルダを選択して「OK」で終わればよい。


対象フォルダを選択したら、どちらかの変換ボタンを押す。
ここでは「全角 → 半角に変換」ボタンを押す。


変換が終了するとメッセージが出る。


動作の確認
ファイル名に使われていた全角英数文字が確かに半角英数文字に変わっている。


なお、上の「セル内改行.csv」の「セル」は半角カタカナである。
これはガラパゴス文字だから、この実験以外には使うことは絶対にない(私の場合は)。


相互変換

こういうものは逆方向への変換とペアでないと意味がない(相互変換)。二つでワンセットという代表例でもある。


終了メッセージが出る。以下、全角・半角の変換は循環的にくり返すことになる。




私はファイル名に全角の英数字や半角のカタカナを使うことは絶対にない。その点からいえば、これはあまり使い道のないものである(実用的意味は少ない)。しかし、こういう形のファイル処理も一応は経験しておくことも悪くはない。なにか他の所で応用できるかもしれない。そんな程度のものである。

たとえば応用の例としては、あるフォルダ内の*.txtファイルはaaaフォルダに、*.csvファイルはbbbフォルダに、*.htmlファイルはcccフォルダにコビー(または移動)するという使い方ができるだろう。ヒマネタにしておこう(笑)。どこに全角半角の区別が使われているのか。そんなことは些細なことなのである。ここではファイルを1つづつ処理していくということが重要なのである。

- 2015/09/14 -




ファイルの内容を文字種ごとに全角半角変換(ipc_0168)


RenameZenHan.frm(exc_0090)



エクセルバカは想定外のことをする。
LOG
126.112.54.210 [15/Feb/2017:09:22:03] ファイル名 半角カタカナ 全角変換
223.218.150.236 [09/Oct/2016:10:21:32] ファイル名の半角カタカナを全角に変換
私の場合はファイル名に半角カタカナというガラパゴス文字を使うことは絶対にない。だから、上ではファイル名の「半角英数文字」と「全角英数文字」の相互変換と書いたが、もちろん上の方法でファイル名の「半角カタカナ」と「全角カタカナ」との相互変換もできることは当然である。
LOG
192.218.140.245 [15/Jun/2016:08:39:04] filesystemobject 全角 半角 変換
210.250.187.57 [16/Mar/2018:16:35:19] vba fso EUC 読み込み
FileSystemObjectが何をするものかを知らないから、こういうトンチンカンなことを言い出す者も当然出てくる。エクセルバカの通例として、ファイル(File)という語がついているから「こんなこと」もできるだろうという無知による思い込みである。単なる英単語屋である。




Unicode,UTF-8,UTF-16,Big,Little,Endian,LE,BE,Shift_JIS,SJIS,CR,LF,CRLF,byte,bit,word,CSV,BOM,Encode,Decode,ANSI, Binary,Open,Byte,Get,Put,Input,InputB,Asc,AscB,AscW,Chr,ChrB,ChrW,Hex,Mod,EOF,LOF,Loc,FreeFile,ReDim,Encoding, Left,LeftB,Right,RightB,Mid,MidB,Len,LenB,InStr,InStrB,FileSystemObject,FSO,CreateTextFile,OpenTextFile, バイナリ,テキスト,文字列,文字コード,16進コード,16進文字列,変換,ビッグ,リトル,エンディアン,ユニコード,改行,サンプル, バイト,ビット,ヘキサ,2進数,16進数,読み込み,書き込み,エンコード,デコード,解析,変換,判定,判別,バイナリエディタ, 全角,半角,カタカナ,ひらがな,漢字,