洗濯してる画像を保存するvbaコードが知りたいのですが
Sub Sample()
Dim PicFile As String
Dim myRess As Variant
PicFile = "C:\Users\test.jpg"
ActiveSheet.Pictures.Insert PicFile
ActiveSheet.Pictures.Insert(PicFile).Select
PicFile = Selection.Name
myRess = ActiveSheet.Shapes(PicFile).Picture.Export( _
ThisWorkbook.Path & "\test.jpg", "JPG", False)
End Sub
だと実行時エラー438になります。
Export メソッドは、グラフにしか使えないのでしょうか?
画像ファイルを保存する方法をご教授ください。
例えばワークシートの表現を考えます。
自分は今まで以下のようにしてました。
Dim sheet1 As String
sheet1=Worksheets(1).Name
Worksheets(sheet1).Activate
オブジェクト型宣言を用いて以下のように書き換えられます。
Dim sheet1 As object
set sheet1=Worksheets(1)
sheet1.Activate
ソースコードとしてはスッキリしますが、見た目以外でどのようなメリットがあるのですか?
洗濯してる画像を保存するvbaコードが知りたいのですが
Sub Sample()
Dim PicFile As String
Dim myRess As Variant
PicFile = "C:\Users\test.jpg"
ActiveSheet.Pictures.Insert PicFile
ActiveSheet.Pictures.Insert(PicFile).Select
PicFile = Selection.Name
myRess = ActiveSheet.Shapes(PicFile).Picture.Export( _
ThisWorkbook.Path & "\test.jpg", "JPG", False)
End Sub
だと実行時エラー438になります。
Export メソッドは、グラフにしか使えないのでしょうか?
画像ファイルを保存する方法をご教授ください。
VBAでIE操作をしているのですが、
javascriptのURLを踏んだ後に、そのページをオブジェクトに格納して値の取得等をしたいのですが、
うまくいきません。
For Each myObj In objIE.document.all.tags("a")
If myObj.href Like "*affiliateUrl1*" Then
objIE.navigate myObj.href
' Call IE_wait
Exit For
End If
Next
上記のコードで、
javascript:show_rakuten_linkcd('linkUrl1','imageUrl_S1','imageUrl_M1','title1','price1','reviewCount1','affiliateUrl1');
を見つけて、objIE.navigate myObj.href
で、ページを表示することは出来たのですが、
Call IE_wait
で
Sub IE_wait()
Const READYSTATE_COMPLETE As Long = 4
Do Until objIE.readyState = READYSTATE_COMPLETE
Loop
Do While objIE.Busy = True
DoEvents
Loop
End Sub
をすると、無限ループに入ります。
javascriptでページを表示させても、
objIEに格納されているURLは、javascriptを踏む前の元のページだからと思います。
なので、表示されるまで待つのは手動でやるとしたのですが、
その後、
For Each myObj In objIE.document.all.tags("testarea")
If myObj.Name = "code" Then
’ソース取得
End If
Next
とやろうとしても、objIEに格納されているURLがjavascriptで表示させているページでない為、
取得できません。
objIE.navigate myObj.href
を実行した後に、javascriptのページ(小窓)を格納する方法があれば教えてください。
よろしくお願いします。
VBAでIE操作をしているのですが、
javascriptのURLを踏んだ後に、そのページをオブジェクトに格納して値の取得等をしたいのですが、
うまくいきません。
For Each myObj In objIE.document.all.tags("a")
If myObj.href Like "*affiliateUrl1*" Then
objIE.navigate myObj.href
' Call IE_wait
Exit For
End If
Next
上記のコードで、
javascript:show_rakuten_linkcd('linkUrl1','imageUrl_S1','imageUrl_M1','title1','price1','reviewCount1','affiliateUrl1');
を見つけて、objIE.navigate myObj.href
で、ページを表示することは出来たのですが、
Call IE_wait
で
Sub IE_wait()
Const READYSTATE_COMPLETE As Long = 4
Do Until objIE.readyState = READYSTATE_COMPLETE
Loop
Do While objIE.Busy = True
DoEvents
Loop
End Sub
をすると、無限ループに入ります。
javascriptでページを表示させても、
objIEに格納されているURLは、javascriptを踏む前の元のページだからと思います。
なので、表示されるまで待つのは手動でやるとしたのですが、
その後、
For Each myObj In objIE.document.all.tags("testarea")
If myObj.Name = "code" Then
’ソース取得
End If
Next
とやろうとしても、objIEに格納されているURLがjavascriptで表示させているページでない為、
取得できません。
objIE.navigate myObj.href
を実行した後に、javascriptのページ(小窓)を格納する方法があれば教えてください。
よろしくお願いします。