やりたいこと
エクセルファイル(複数)をvbsアイコンにドラッグアンドドロップするとパスワードを設定してファイルを上書き保存する。
補足
・複数のエクセルに設定されるパスワードは同一
・スクリプトを保存するときは、日本語対応の文字コードにする。
ソース
' Password Set Program.
Option Explicit
On Error Resume Next
'パスワード
Dim Password
Password = "110" ' 設定したいパスワードの値
'ドラッグアンドドロップで取得したファイルパスを変数に入れる
Dim GetPathArray
Set GetPathArray = WScript.Arguments
Dim NullStr
NullStr = "" ' Null文字列 をセット。
Dim Obj_Excel
Set Obj_Excel = WScript.CreateObject("Excel.Application")
Dim Book_1
'イテレータ
Dim pt
Obj_Excel.Application.DisplayAlerts = False '警告メッセージ等を非表示に設定
Obj_Excel.Visible = False 'エクセルは非表示にする
'ファイルの数分ループする
For Each pt in GetPathArray
'--------------------------------------------------------------
Set Book_1 = Obj_Excel.WorkBooks.Open(pt,,,,NullStr) ' 空の文字列でオープンする。
Book_1.SaveAs pt,,Password ' 書き込み時パスワードを指定して保存する。
Book_1.Close
'--------------------------------------------------------------
Next
Obj_Excel.Visible = True
Obj_Excel.Quit
MsgBox "パスワード設定が完了しました。"