|
▼ゆらり さん:
>現在、エクセルVBAにて選択した画像を回転させ、保存するマクロを
> 目標にしています。しかし、理解が足りずなかなか組めません。
> ファイルを開く時に掲題のエラーが出てしまいます。
まず 「選択した画像をシートに図として挿入する」ということと
「ファイルを開く」ということは処理内容が違います。
Excelで 「ファイルを開く」といったら、ファイルの種類は *.xls か
*.csv かのファイルでしょう?
対して、
「選択した画像をシートに図として挿入する」
といったら、*.Bmpや *.jpg などの画像ファイルを Pictures.Insert
したり、Shapes.AddPicture したり、といったExcelの内部コマンド(?)
を使います。
どこにも WinScript.Shell のRun メソッドを使う動機付け(?)がありません。
それに、Run メソッドの使い方も変ですよ。
いちどネットで検索して 構文を理解してください。
WScript.ShellのRun は 外部プログラムを実行するときなどに使います。
たとえば、
メモ帳を起動してテキストファイルを開き、ユーザーがメモ帳を終了する
まで待機し、終了時にメモ帳から返されるエラーコードを受け取るなら
Dim ok As Long
Dim myTextFile As String
myTextFile = "D:\(Data)\abc.Txt"
With CreateObject("WScript.Shell")
ok = .Run("Notepad.exe " & myTextFile, 1, True)
End With
のように Run の後には 実行可能ファイル(外部プログラム)を指定し、
その外部プログラムのオプションとして テキストファイル名を指定します。
また、WScript.Shellの Runメソッドは DOSコマンドを実行するときにも
使います。以下は DOSウィンドウを開き、パスを C:\ に変更し、
DIR コマンドを実行する例です。
With CreateObject ("WSCript.shell")
.Run "cmd /K CD C:\ & Dir"
End With
>選択した画像を回転させ、保存するマクロ
を作りたいなら、まずは、
「図の挿入」メニューから画像を挿入し、回転させる操作の
マクロ記録をとってみるとイイと思います。
|
|