VBAオジサンのらくがき帳

スクリーンショットの保存(VBScript版)

2020-11-30 00:00:00

以前紹介したSendKeysを使ってスクリーンショットの保存する方法ですが、意外に便利で自分でもたまに使っています。Excelを開かずに使えるとよりいいかなと、VBScript版を作ってみました。VBScriptだとクリップボードのチェックがExcelのように簡単にできないようなので、なにもコピーせずに実行すると真っ白な画像が保存されます。

下のコードを拡張子vbsで保存して、実行するとデスクトップに画像が保存されます。

Option Explicit

Dim sh
Dim tstamp

Set sh = CreateObject("WScript.Shell")

sh.Run "mspaint.exe"

Wscript.Sleep 500

tstamp = Replace(Replace(Replace(Now,"/","")," ",""),":","")
sh.SendKeys "^v" '貼り付け
sh.SendKeys "+^x" 'トリミング
sh.SendKeys "^s"
sh.SendKeys sh.ExpandEnvironmentStrings("%USERPROFILE%") & "\Desktop\screenshot_" & tstamp & ".jpg"
sh.SendKeys "{ENTER}"
sh.SendKeys "%{F4}" 'ペイントを閉じる