Auswertungstool
13.04.2021 20:55:45
Anna
ich versuche gerade ein Auswertungstool zu erstellen aber habe hierzu leider noch ein paar Fragen, welche ich im Laufe der Zeit hier noch stellen werde.
Folgendes funktioniert bereits mit dem unten beigefügten Code:
Bei diesem Tool sollen mehrere Excel-Dateien (Kalkulationen), welche auf einem bestimmten Pfad X liegen in eine weitere Excel-Datei (Auswertung) eingelesen und bestimmte Zellen übernommen werden.
Jetzt habe ich allerdings das erste folgende Problem:
In dieser Auswertung werden aus den Kalkulationen leider nur die Zellen (Bsp. A1, B1, C1 etc.) in die Zeile 4 (wie festgelegt) übernommen.
In den Zellen (Bsp. A2, B2, C2 etc.) der Kalkulation, stehen allerdings weitere relevante Werte, welche ich ebenfalls in der Auswertung in der nächsten Zeile 5 benötige.
Die Werte der Zellen (Bsp. A3, B3, C3 etc.) der Kalkulation, benötige ich dann wieder in der nächsten Zeile 6 in der Auswertung.
Und immer so weiter
Kann mir daher bitte jemand mitteilen, wie ich die weiteren Werte in die jeweils nächste Zeile übertragen bekomme?
Vielen Dank schonmal 😊
Option Explicit
Public Sub ExcelDateienAuswerten()
Dim strDateiname As String
Dim strPfad As String
Dim lngZeile As Long
'Pfadangabe, in dem die zu lesenden Excel-Datei (*.xls) liegen
strPfad = "C:\Users\Anna\Documents\"
'Den 1. Dateinamen holen
strDateiname = Dir(strPfad & "*.xls")
'Startzeile festlegen
lngZeile = 4
'Solange ein Dateiname gelesen wird
Do While Not strDateiname = ""
'Datei verarbeiten
Call TabVerarb(strPfad & strDateiname, lngZeile)
'nächsten Dateinamen holen
strDateiname = Dir()
'Zeilenzähler erhöhen
lngZeile = lngZeile + 1
Loop
End Sub
Public Sub TabVerarb(strPfad As String, lngZeile As Long)
Dim strMeSH As String
Dim strDatei As String
Dim strSH As String
'Dateinamen extrahieren
strDatei = Split(strPfad, "\")(UBound(Split(strPfad, "\")))
'Eigenen Namen merken
strMeSH = ActiveWorkbook.Name
'Datei öffnen
Workbooks.Open Filename:=strPfad
With Workbooks(strMeSH)
'Dateinamen und auszuwertenden Zellen übertragen
.Sheets("Tabelle1").Cells(lngZeile, 1) = strDatei
.Sheets("Tabelle1").Cells(lngZeile, 2) = Workbooks(strDatei).Sheets("Kalkulation").Range("A1").Value
.Sheets("Tabelle1").Cells(lngZeile, 3) = Workbooks(strDatei).Sheets("Kalkulation").Range("A2").Value
.Sheets("Tabelle1").Cells(lngZeile, 4) = Workbooks(strDatei).Sheets("Kalkulation").Range("A3").Value
'Quelldatei schließen
Workbooks(strDatei).Saved = True
Workbooks(strDatei).Close
End With
End Sub