ich muss zugeben, dass ich komplett neu hier bin und in VBA kaum bis gar keine Erfahrungen habe :-(
Ich habe folgendes Problem:
Ich habe auf dem Server in verschiedenen Ordnern Excel-Dateien liegen, aus denen ich Werte benötige, die in einer separaten Übersichtstabelle aufgeführt werden sollen. Diese Dateien sollen hierzu nicht geöffnet werden, da dies zu lange dauern würde und auch Unmengen von Dateien öffnen würde. Das untenstehende Makro funktioniert dahingehend dass ich schon Mal Werte aus einer Datei herausholen und in der separaten Tabelle zeigen kann. Jetzt habe ich allerdings folgende Probleme:
- in dem Makro kann nur eine einzige Datei angesprochen werden und deren Werte eingefügt werden
- zudem werden die Werte in den gleichen Spalten und Zeilen eingefügt, wo sie auch in der Quelldatei liegen
Was ich gerne hätte:
1. die in dem folgenden Makro fettgedruckten Dinge sollten aus einer Liste eigenständig verwendet werden. Der Link und der Dateiname stehen also z.Bsp. von B1 bis B10 bzw. C1 bis C10. in A1 bis A10 stehen die Projektnamen (Projekt1, Projekt2,usw.).
2. die abgefragten entsprechenden Werte der einzelnen Projekt-Datei sollen nun untereinander folgendermaßen Aufgelistet werden (z.Bsp. ab Zeile 15):
Projekt1
WertA24 WertB24 ... WertX24
WertA25 WertB25 ...
.... .... ...
(Leerzeile)
Projekt 2
WertA24 WertB24 ... WertX24
WertA25 WertB25 ...
.... .... ...
(Leerzeile)
usw.
Wie muss das Makro dahingehend dann aussehen, damit man das realisieren kann? Ich versuche wirklich in VBA rein zu kommen aber ohne Vorlage komme ich da absolut nicht weiter.
Kann mir hier jemand weiterhelfen?
Schon Mal Danke im Voraus für die Bemühungen.
Hier das momentan vorhandene Makro:
Sub Bereich_auslesen()
'** Dimensionierung der Variablen
Dim pfad As String, datei As String, blatt As String, bereich As Range, zelle As Object
'** Angaben zur auszulesenden Zelle
pfad = "O:\Groupshares\Projekt 1\04_Subvendors"
datei = "QC_Projekt1.xlsm"
blatt = "Project Overview"
Set bereich = Range("A24:X35")
'** Bereich auslesen
For Each zelle In bereich
'** Zellen umwandeln
zelle = zelle.Address(False, False)
'** Eintragen in Bereich
ActiveSheet.Cells(zelle.Row, zelle.Column).Value = GetValue(pfad, datei, blatt, zelle)
Next zelle
End Sub
Gruß
Markus