Clever-Excel-Forum

Normale Version: Excel URL Bilderlinks in einen Ordner downloaden
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Werte Community,

ein herzliches Hallo erstmal in die Runde. 

Evtl. hat hier jemand schonmal eine ähnliche Aufgabenstellung gehabt und kann mir helfen.  Huh

Durch einige Forenartikel und google-ei werde ich um VBA vermutlich nicht herumkommen - richtig?
Falls ja, bitte seit so nett und sagt mir auch wie ich
a, das Makro in Excel "einpflege"
Etwas recherche wohl mit
ALT + F11 --> neues Marko. In das leere Feld und speichern.
b, wie ich es "aktiviere, abspiele, nutze, etc.".

Ich habe oftmals Herstellerlisten in welche dessen Artikelbilder (per URL) hinterlegt sind.
Wie kann ich (ohne zehntausende Artikel manuell zu downloaden) eine komplette Spalte bzw. deren URLs dazu "bewegen" die Bilder in einen bestimmeten Ordner zu laden?

Das Erklären des Problems war irgendwie viel einfacher, als mein fehlendes Know-How zu schildern...  19

Falls wichtig, die Links sind klassisch aufgebaut, sprich:
https://herstellerseite/bilder/artikelbe...elname.png

Bin für jede Hilfe dankbar.

Danke
Hallöchen,

Deine Frage steht auf erledigt, ist das korrekt?
Hallo schauan,

wie ist das denn passiert? Gleich wieder geändert, danke...

Nein, habe dazu noch keine Excellösung gefunden.
Bin online auf ein Programm, scheint wohl eine Art Plugin für Excel zu sein, die das wohl umsetzen kann.

Keine Schleichwerbung aber evtl. hilft das dem ein oder anderen. Programm ist von centerofefficiency und kostet wohl ~ 7€ p.a. als Lizenz.

https://www.centerofefficiency.com/de/ex...excel.html

Werde mir das (vermute ich) die Tage mal ansehen, wegen 7€ will ich nicht, dass jemand sich hier die Mühe macht.
Falls doch, nutze ich den Vorschlag selbstredend dennoch dankend & gerne.

VG und schönen Start allen ins anstehende, sonnige WE

Nachtrag: 6,95€ netto
Hallöchen,

im Netz hab ich irgendwann mal das gefunden. Die Zeilen mit Debug.Print sind nur zur Kontrolle und können später weg.

Code:
Option Explicit

Private Declare PtrSafe Function URLDownloadToFile Lib "urlmon" _
  Alias "URLDownloadToFileA" ( _
  ByVal pCaller As Long, _
  ByVal szURL$, _
  ByVal szFileName$, _
  ByVal dwReserved As Long, _
  ByVal lpfnCB As Long) As Long

Sub HyperLinkKopieren()
Dim Hl As Hyperlink
Dim rngBereich As Range          'Bereich, der nach Hyperlinks durchsucht wird
Dim strQuellDat As String        'Pfad + Datei, die kopiert werden soll
Dim strDatName As String        'Dateiname bei Dateien, die im Internet stehen

'Speicherort angeben
Const strPfad As String = "C:\temp\"      '<--- anpassen! - mit Backslash "\" abschließen!

'Existiert der Speicherort?
  If Dir(strPfad, vbDirectory) = "" Then
      MsgBox "Der angegebene Pfad ist ungültig!" & vbLf & vbLf & _
              "Bitte richtigen Pfad im Code angeben!" & vbLf & vbLf & _
              "Das Makro bricht ab!"
               
      Exit Sub
  End If

'Bereich, der nach Hyperlinks durchsucht wird angeben:
  With ThisWorkbook.Worksheets("Tabelle1")          '<--- anpassen!
      Set rngBereich = .Range("A1:A10")              '<--- anpassen!
  End With

'Schleife über alle Hyperlinks in diesem Bereich
  For Each Hl In rngBereich.Hyperlinks
      strQuellDat = Hl.Address                                                      'Quelldatei
      Debug.Print "Quelldatei : " & strQuellDat
      If LCase(Left(strQuellDat, 4)) = "http" Then                                  'Quelldatei online
        strDatName = Split(strQuellDat, "/")(UBound(Split(strQuellDat, "/")))      'Dateiname
        Debug.Print URLDownloadToFile(0, strQuellDat, strPfad & strDatName, 0, 0)  'herunterladen
      Else                                                                          'Quelldatei offline
        FileCopy strQuellDat, strPfad & Dir(strQuellDat, vbNormal)                'Speichern unter
      End If
  Next
   
'aufräumen:
  Set rngBereich = Nothing
  Set Hl = Nothing
End Sub
Hallo, 19

eine Möglichkeit, wenn du die Adressen der Bilder wie oben von dir angegeben hast: 21
[attachment=38464]
Hallo zusammen,

war nun einige Tage unterwegs - sorry.

@case: schaue ich mir morgen nochmal an, die Funktion fügt sie gleich in die Liste ein. Kann ich ggf. für anders Sachen gut gebrauchen
Merci!

Mir ging es jedoch um diese gleich in einen Ordner lokal zu laden.

@schauan.
Jetzt kommt genau mein beschriebenes Problem.
Wie / wo muss ich den Code einsetzen, aktivieren, etc.?

Schönen Abend
Hallöchen,

DU hast es in Deiner Frage ja eigentlich schon beschrieben - nur dass der Code das Makro ist und Du dafür ein neues "Modul" - das leere Feld - anlegst Smile
Hallo zusammen,

sorry für die späte Rückmeldung. War einige Tage geschäftlich unterwegs.
Habe jmd. regional gefunden, der mir für ein schmales Geld ein kleines Programm geschrieben hat mit dem ich einige Funktionen einstellen kann und genau auf mich abgeschnitten ist :)

Danke für die netten Zuschriften.

VG