前提・実現したいこと
前提として、ファイルに保存されているbmp画像を左右反転させるマクロを作成している。
従来は、Microsoft Office Picture Managerを用いたマクロで実現させていたがwindous10に更新したため、Microsoft Office Picture Managerが入っていないPCが増え、ペイントで左右反転させるマクロを組みたい。
ExcelシートのC4に画像の保存パス、C6に画像ファイルの名前が入っています。
発生している問題・エラーメッセージ
Sub m_000() '動作不安定 . . . ret = a(path1, File_bmp1) If ret = False Then MsgBox "処理を中断しました。", vbExclamation Exit Sub End If Sheets("設定").Range("C7").Value = "左右反転_" & File_bmp1 . . . aの部分が色付けされ、 Functionまたわ変数が必要です。 とエラーがでます。 下記のソースコード以外にもマクロがたくさん組んであり、このマクロはその一部の部分なんですが、このマクロを実行するとペイントは立ち上がらず、エラー作業のほうに移ってしまいます。 VBA初心者であまりコードの意味だとかが分かっていませんので、なぜペイントが立ち上がらないのかもわかりません。 原因がわからないので、調べるにも手が止まってしまいました。。 また、ほかに簡単に左右反転させる方法などがあれば教えていただきたいです。
該当のソースコード
VBA
1Sub a(Pathname As String, Filename As String) 'by MS_Paint 2'debug Pathname = Sheets("設定").Range("C4").Value 'Path 3'debug Filename = Sheets("設定").Range("C6").Value '基本bmp(左右反転必要) 4 Dim Path As String, str As String 5 Dim lngRc 6 7 8 lngRc = Shell("C:\windows\system32\mspaint.exe " & Pathname & "\" & Filename, vbNormalFocus) 9 Call Sleep(STIME) 10 AppActivate lngRc ' AppActivate ("無題 - ペイント") 11 Call Sleep(STIME) 12 SendKeys "%hroh", True 13 Call Sleep(STIME) 14 15 SendKeys "%fa", True 16 Call Sleep(STIME) 17 AppActivate ("名前を付けて保存") 18 Call SendMessageAPI("名前を付けて保存", 3, Pathname & "\反転_" & Filename) 19 Call Sleep(STIME) 20 Call ClickAPI("名前を付けて保存", 20) 21 Call Sleep(STIME) 22 SendKeys "%{F4}", True 23 Call Sleep(STIME) 24End Sub
試したこと
補足情報(FW/ツールのバージョンなど)
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。