Solved! Go to Solution.
I just wanted to update this old ticket because there are much easier ways to do these things now.
First off - with Excel - make sure that if your images have any spaces in the name, that when you do the concatinate, that you fill "%20" in as needed.
Second, instead of writing any type of Excel macro, if you have a column with your concatenated information with a working URL, grab this plugin "https://chrome.google.com/webstore/detail/tab-save/lkngoeaeclaebmpkgapchgjdbaekacki/related" which is called Tab Save from the Chrome store. Once installed, click it and then hit the little pencil in the bar. You can then paste all of your URLs in right there, and hit the download button. It will grab all of the links and put them in your download folder.
The Excel macro continually failed and this works perfectly.
Since Marketo Support was unable to offer any help with this I was able to come up with my own workaround with the help of a scraper chrome extension and Excel. The entire process takes about 10 minutes.
Here's what you'll need
Step 1
Step 2
Step 3
Step 4
Step 5
Step 6
Step 7 - This is where the magic happens
Step 8
Hope this helps. Enjoy!
Excellent workaround.
I used a Chrome plugin to download the list of URLs called "Tab Save" instead of the macro you suggested.
Thank you so much Anthony. I pasted the code from your screenshot so others can copy and paste.
Sub AssetScrape()
Dim i As Long
Dim FileNum As Long
Dim MyFile As String
Dim WHTTP As Object
On Error Resume Next
Set WHTTP = CreateObject("WinHTTP.WinHTTPrequest.5")
If Err.Number <> 0 Then
Set WHTTP = CreateObject("WinHTTP.WinHTTPrequest.5.1")
End If
On Error GoTo 0
If Dir("C:\YOURFOLDERNAME", vbDirectory) = Empty Then MkDir ("C:\YOURFOLDERNAME")
For i = 1 To 738
MyFile = Cells(i, 1).Text
If CheckURL(MyFile) Then
FileNum = FreeFile
Open "C:\YOURFOLDERNAME\LogFile.txt" For Append As #FileNum
Print #FileNum, MyFile & "--- Downloaded ---"
Close #FileNum
TempFile = Right(MyFile, InStr(1, StrReverse(MyFile), "/") - 1)
WHTTP.Open "GET", MyFile, False
WHTTP.Send
FileData = WHTTP.ResponseBody
FileNum = FreeFile
Open "C:\YOURFOLDERNAME\" & TempFile For Binary Access Write As #FileNum
Put #FileNum, 1, FileData
Close #FileNum
Else
FileNum = FreeFile
Open "C:\YOURFOLDERNAME\LogFile.txt" For Append As #FileNum
Print #FileNum, MyFile & "!!! File Not Found !!!"
Close #FileNum
End If
Next
Set WHTTP = Nothing
MsgBox "Open the folder [C:\YOURFOLDERNAME] for the downloaded files."
End Sub
Function CheckURL(URL) As Boolean
Dim W As Object
On Error Resume Next
W.Open "HEAD", URL, False
W.Send
If W.Status = 200 Then
CheckURL = True
Else
CheckURL = False
End If
End Function
I'm receiving the following error when attempting to run the macro
and when clicking Debug I'm taken to this line in the script
Not too familiar with VBA, can anyone help me understand what's the issue?
Thanks!
I just wanted to update this old ticket because there are much easier ways to do these things now.
First off - with Excel - make sure that if your images have any spaces in the name, that when you do the concatinate, that you fill "%20" in as needed.
Second, instead of writing any type of Excel macro, if you have a column with your concatenated information with a working URL, grab this plugin "https://chrome.google.com/webstore/detail/tab-save/lkngoeaeclaebmpkgapchgjdbaekacki/related" which is called Tab Save from the Chrome store. Once installed, click it and then hit the little pencil in the bar. You can then paste all of your URLs in right there, and hit the download button. It will grab all of the links and put them in your download folder.
The Excel macro continually failed and this works perfectly.