0

このマクロは、列 C と列 D にある複数行の URL を使用して、Web から必要なファイルをダウンロードします。ただし、セル A1 の値が、ダウンロードされるすべてのファイル名のプレフィックスとして追加されます。

ダウンロードしたすべてのファイルのプレフィックスとしてセル $A$1 を使用する代わりに、同じ行の列 "A" の値を使用するようにマクロを変更する必要があります。

Dim URL As String
Dim LocalFileName As String
Dim B As Boolean
Dim ErrorText As String
Dim C As Range
Dim sTxt As String
sTxt = Cells(1, "a").Value
Dim Lastrow As Long

Lastrow = Range("C:D").Find("*", , , , xlByRows, xlPrevious).Row
For Each C In Range("C1:D" & Lastrow)
    If Len(C) > 0 Then
        URL = C.Text
'        LocalFileName = "C:\downloaded\" & Range("A1") & " " & Evaluate("TRIM(RIGHT(SUBSTITUTE(""" & C.Text & """,""/"",REPT("" "",1000)),1000))")
        B = DownloadFile(UrlFileName:=URL, _
                         DestinationFileName:=LocalFileName, _
                         Overwrite:=DoNotOverwrite, _
                         ErrorText:=ErrorText)
        If B = True Then
            Debug.Print "Download successful"
        Else
            Debug.Print "Download unsuccessful: " & ErrorText
        End If
    End If
Next C
End Sub

サンプルデータ:

    A   B   C   D
1   12345   Record1 http://www.test.com/picture1.jpg    http://www.test.com/file1.pdf
2   abcde   Record2 http://www.test.com/Picture2.jpg    http://www.test.com/file2.pdf

上記の例では、必要なファイル名は次のようになります。 -12345 picture1.jpg -12345 file1.pdf -abcde picture2.jpg -abcde file2.pdf

誰?

4

1 に答える 1

0

C.Row代わりに使用するだけです1

LocalFileName = "C:\downloaded\" & Range("A" & C.Row) & " " & Evaluate("TRIM(RIGHT(SUBSTITUTE(""" & C.Text & """,""/"",REPT("" "",1000)),1000))")
于 2013-06-29T18:57:55.583 に答える