VBA

VBAからWin32のSleepを呼び出す

vbaでスリープさせる方法はたくさんありますが、Win32APIのスリープを直呼びしてみたらいまいちだったけどメモ。呼び出し方は以下の通り。 Private Declare PtrSafe Sub Sleep Lib "kernel32" (ByVal ms As LongPtr) Private Sub wait() Sleep 5000 End Sub…

OutlookVBA フォルダ選択ダイアログの出しかた

vba

outlookVBAでフォルダ選択ダイアログを出すには以下のように PickFolderを呼び出しましょう。 Sub FolderPick() Dim objNS As NameSpace Dim objFolder As Folder Set objNS = Application.GetNamespace("MAPI") Set objFolder = objNS.PickFolder If TypeNa…

ブラウザRPA作るときに便利なコード

色々とrpaはあるけれど、自分しか使わない、少し複雑なこともしたいという時はvbaはやっぱ便利。 ieの処理が終わるまで待つ Function IEWait(ByRef objIE As Object) Do While objIE.Busy = True Or objIE.readyState <> 4 DoEvents Loop End Function 指定…

クリップボードと正規表現

VBA

やっぱエクセルマクロがすき。 クリップボードとか正規表現は結構便利なんだけど参照設定をしないと使えないのでVBAでは使えないとおもっている人が多い気がする。 そしてこの系のマクロを作ったら配布するときに参照設定をしてもらわないといけないので、ア…

エクセルで開いているファイルをエクスプローラーで開くマクロ

今エクセルで開いているファイルをエクスプローラーで開く。 なんで今まで作っていなかったのか謎だ。 Sub OpenWithExploler() Shell "explorer.exe /e,/select, " + ActiveWorkbook.FullName, vbNormalFocus End Sub