サクラエディタで開いているファイルをGoogleドキュメントに保存するマクロ
Googleドキュメントへのアップロード処理は、コマンドラインツールのgoogle-docs-uploadを利用。コマンドをJScriptで叩くだけ。
- google-docs-upload - Project Hosting on Google Code
- 【レビュー】『Googleドキュメント』を便利にするツールたち - オススメ16選 | ネット | マイコミジャーナル
- MOONGIFT: ≫ オフィスドキュメントをバッチでGoogleドキュメントへアップロード「Google Docs Batch Upload」:オープンソースを毎日紹介
var UserName = "★ユーザーIDを指定★"; var GduPath = "★google-docs-upload.jarのパスを指定★"; var OptionStr = "★'--add-all'等のオプション文字列を指定★"; var oWsh = new ActiveXObject('WScript.Shell'); if(myIsPossibleSend()){ var PassWord = myInput("パスワードを入力して下さい", "パスワード", "xxxxxx"); var CmdStr = "cmd /K java -jar " + GduPath + " "; CmdStr += FileName + " --username " + UserName + " --password " + PassWord + " "; CmdStr += OptionStr; oWsh.Run(CmdStr,10,0); } function myIsPossibleSend(){ FileName = Editor.GetFileName(); if(FileName == ""){ oWsh.Popup("まだ保存されていないファイルです。送信できません。", 0, '', 0); return false; } if(ExpandParameter("${U?Y$:N$}") == "Y"){ if(oWsh.Popup("ファイルが変更されています。送信しますか?", 0, '', 1) != 1){ oWsh.Popup("送信をキャンセルします" + FileName, 0, '', 0); return false; } } return true; } function myInput(strMsg,strTitle,strDefault){ //VBScriptのInputBox関数を実行するためScriptControlを利用 var oSC = new ActiveXObject("ScriptControl"); oSC.Language = "VBScript"; var sFunc = 'Function InBox(prompt, title, default)\n'; sFunc += ' InBox = InputBox(prompt, title, default)\n'; sFunc += 'End Function\n'; oSC.AddCode(sFunc); var strInput = oSC.Run ("InBox", strMsg,strTitle, strDefault); return strInput; }
【関連リンク】
ost入門 第5回 WshShellオブジェクトの詳細(1) 3.プログラムの実行方法2―Execメソッド