|
先日はお世話になりました。
今回はAutoOpenメソッドを使用していくつか処理をしています。
その中で毎回処理が走って良いものと
1回目のみ処理を走らせたいものがあります。
以下が、作成したコードです↓
Sub Auto_Open()
'画像ファイルのあるフォルダ
Const picfold = "C:\aaa"
'画像ファイルを設置するセル位置
Const TheRange = "F1"
'指定のパスのファイル
Dim PicPath
Dim ObjFS
Set ObjFS = CreateObject("Scripting.FileSystemObject")
'指定のパスのファイル
PicPath = picfold & "\" & "bbb.jpg"
ActiveWorkbook.ActiveSheet.Range(TheRange).Select
ActiveWorkbook.ActiveSheet.Pictures.Insert (PicPath)
sn = ActiveSheet.Shapes.Count
With ActiveSheet.Shapes(sn)
'上端からの距離(pixel)
.Top = 10
'左端からの距離(pixel)
.Left = 1020
End With
Set ObjFS = Nothing
End Sub
内容はエクセルを開いた際、C:\aaaのbbb.jpgを
セルのF1の指定箇所に挿入するように作成しました。
指定したものを指定したセルの箇所に挿入はできたのですが、
AutoOpenメソッドなので毎回画像が上書かれ追加されます。
ボタンは置かない仕様なので、エクセルを1回目に開いたときのみ
画像を挿入させたいのですが解決方法が分からず、質問させて頂いてます。
AutoOpenメソッドの中には他にも罫線を引く処理が入っていますが
そちらは毎回走っても、1回目のみ走っても大丈夫です。
コードとして上書いて同じ処理をするのであれば、
画像の挿入と同じく1回目のみ処理を走らせた方が良いでしょうか?
有識者の方、お手数ですがご教授いただければ幸いです。
宜しくお願いします。m(_ _)m
|
|