Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1916to1920
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

VBA Zugriff auf Dateien m. Hyperlink

VBA Zugriff auf Dateien m. Hyperlink
07.02.2023 13:40:11
mb12
Hallo liebe Helfer*innen,
mein aktuelles Problem:
Ich habe über mehrere Jahre die Daten für neue Projekte in Excel erfasst, je nach Bereich in Ordner und Unterordner gespeichert. Die Pfadstruktur ist immer die gleiche.
Jetzt fragt die GF nach Daten, die in jeder Datei im gleichen Zellbereich C9:N9 gespeichert sind.
C9 ist eine Zahl, alle anderen Text.
Per Makro habe ich in meine „Suchdatei“ alle Dateien geholt und in Spalte A eingefügt, den Pfad in C, daraus C&A als Hyperlink in Spalte D.
Den Rest möchte ich entweder per Formel oder – bevorzugt – mit VBA lösen.
Ich habe mal die Daten für 3 (von ca. 400) Zeilen per Hyperlink geholt, jeweils ab Spalte D eingefügt und alles mit Makrorecorder aufgezeichnet. Die Datei zu anonymisieren wäre ein großer Aufwand. Vielleicht geht es ja auch so:
Sub holen_Test()
  Range("D2").Select
    Selection.Hyperlinks(1).Follow NewWindow:=False, AddHistory:=True
    Range("C9:N9").Select
    Selection.Copy
    ActiveWindow.Close
    Range("F2").Select
    ActiveSheet.Paste
Range("D3").Select
    Selection.Hyperlinks(1).Follow NewWindow:=False, AddHistory:=True
    Range("C9:N9").Select
    Selection.Copy
    ActiveWindow.Close
    Range("F3").Select
    ActiveSheet.Paste
    
Range("D4").Select
    Selection.Hyperlinks(1).Follow NewWindow:=False, AddHistory:=True
    Range("C9:N9").Select
    Selection.Copy
    ActiveWindow.Close
    Range("F4").Select
    ActiveSheet.Paste
    
End Sub
Kann mir jemand mit einem vernünftigen Makro helfen?
Vielen Dank im Voraus,
LG, Margarete

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA Zugriff auf Dateien m. Hyperlink
07.02.2023 14:04:30
Fennek
Hallo,
warum nicht
dim WB as workbook
for i = 2 to cells(rows.count,1).end(xlup).row
    set wb = workbooks.open(cells(i,1))
     wb.sheets(1).Range("C9:N9").copy cells(i,2)
     wb.close 0
next i
ungeprüft
mfg
(kein Bad im reichen All?)

AW: VBA Zugriff auf Dateien m. Hyperlink
07.02.2023 14:30:17
mb12
Danke schön, Fennek,
damit kann ich arbeiten.
LG, Margarete
AW: VBA Zugriff auf Dateien m. Hyperlink
07.02.2023 14:47:05
mb12
Hallo Fennek,
das Öffnen und kopieren funktioniert, aber das Makro versucht den Bereich in das WB Zeile 2 einzufügen anstatt in die Ausgangsdatei
For i = 2 To Cells(Rows.Count, 1).End(xlUp).Row
Set WB = Workbooks.Open(Cells(i, 4)) 'Spalte D
WB.Sheets(1).Range("C9:N9").Copy Cells(i, 6) ' muss in die Ausgangsdatei ab Spalte F eingefügt werden
WB.Close 0
Next i
End Sub
Anzeige
AW: VBA Zugriff auf Dateien m. Hyperlink
07.02.2023 14:53:12
Fennek
So ist es besser referenziert:
dim WB as workbook, WS as worksheet
set ws = activesheet
 
 for i = 2 to cells(rows.count,1).end(xlup).row
     set wb = workbooks.open(cells(i,1))
      wb.sheets(1).Range("C9:N9").copy ws.cells(i,2)
      wb.close 0
 next i
mfg
wieder ungeprüft
AW: VBA Zugriff auf Dateien m. Hyperlink
09.02.2023 06:55:41
mb12
Hallo Fennek,
genau das hat gefehlt. Ich habe noch einiges angepasst, außerdem eine Pseudo-Fehlerbehandlung eingefügt, da nicht alle DS aktuell waren:
Sub Fennek_Daten_holen()
Dim WB As Workbook, WS As Worksheet
Set WS = ActiveSheet
 
' For i = 2 To Cells(Rows.Count, 1).End(xlUp).Row
    'oder
 For i = 2 To 15
     On Error Resume Next
     
     Set WB = Workbooks.Open(Cells(i, 4))
      WB.Sheets(1).Range("C9:N9").Copy      
      WS.Cells(i, 6).PasteSpecial xlPasteValues
      WB.Close 0
      
 Next i
End Sub
Nochmal vielen Dank, Margarete
Anzeige

303 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige