まりふのひと

初めてのVBScript、文字化けしたが何とか対応できた

いきさつ

 デスクトップPCが壊れて以来、Windows8をWindows10に上げたノートパソコンをデスクトップPCとして使用している。そのデスクトップにExcelブックを開くショートカットアイコンを置いてある。

f:id:ogohnohito:20210507130953p:plain:w480
ダブルクリックすると、指定のブックが開く‥‥ はずなのに、

  • 最近は Excel しか開かない 方が多い。
  • そのExcelも起動するのにかなりの時間が掛かる。
  • Windows10に上げた頃は、Excelしか開かないことは無かった‥‥ はず。

 それが直接の原因ではないが、Excel家計簿への(レシートの)入力が溜まって、たまって...
これを解決するため、

  • スタートアップフォルダー*1Excel.exe を登録した。

が、再起動時も 当然起動する ので面白くない...
今更 バッチファイル は無かろう‥‥ と、VBScript に挑戦することにした。

初めてのVBS

文字化けは文字コードの違い

 参考にしたサイト

  • 初心者でも簡単プログラムでWindowsの効率化!VBScriptをやってみよう(出所:いつも隣にITのお仕事.更新:2017.08.02)
    tonari-it.comVBScriptでメッセージを表示する
     ではさっそくプログラムコードを書いてみます。
    メッセージボックスを出すだけのとってもシンプルなプログラムです。メモ帳を起動し、以下のコードを入力します。
    msgbox "こんにちは"

     ファイルメニューから「名前を付けて保存」を選択します。保存先はデスクトップを選択します。ファイル名に「hello.vbs」を入力し、保存ボタンをクリックします。
     デスクトップにできたファイル「hello.vbs」をダブルクリックします。
    「こんにちは」と書かれたメッセージボックスが表示されました!

 しかし、私が行うと、文字化けする...(右図)



 Google先生に聞いてみた‥‥

  • VBScript】Windows10でmsgboxが文字化けする原因と対策(出所: ITエンジニアの備忘録的技術ブログ【仮】作成:2020.08.26)
    www.depthbomb.net文字化けの原因
     Windows10から、テキストファイルを作成した際に使われる標準の文字コードが「UTF-8」に変更されました。因みにWindows7までは、標準の文字コードは「S-JIS」でした。
    また、日本語の文字はVBScriptの場合「S-JIS」しか対応していません。その為、Windows10環境で新しくテキストファイルを作成し、プログラム内で日本語の文字を使用すると、その日本語がプログラム内部で文字化けします。
    VBSファイル作成時に文字コードを「ANSI」に変更する(メモ帳の場合)
     Windows10環境で新しくVBSファイルを作成した場合は、最初にウィンドウ上部の[ファイル]→[名前を付けて保存]などを選択し、保存先やファイル名を指定するダイアログを表示します。
     ダイアログの下部で「文字コード」の選択ができます。ここで「ANSI」を選択して保存します。

 私が今、使っているエディターは Em-Editor Free (32-bit) Version 20.6.1。上述の方法で名前を付けて保存後、実行,正常に表示された。

EmEditorで表示 実行結果
f:id:ogohnohito:20210508055127p:plain:h165 f:id:ogohnohito:20210508055251p:plain



f:id:ogohnohito:20130520050353p:plain

*1:エクスプローラのアドレスバーに "スタートアップ" と入力すると開ける。