Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1848to1852
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

verschiedene Tabellen in Ordner auslesen

verschiedene Tabellen in Ordner auslesen
22.09.2021 07:32:47
Tim
Guten Morgen zusammen,
ich möchte gern über ein Makro, alle Excel-Tabellen in einem Ordner auslesen und auf Inhalt einer bestimmten Zelle prüfen. Dazu habe ich bereits etwas im Forum gefunden, was meiner Vorstellung ziemlich nahe kommt, jedoch habe ich folgende zwei Herausforderungen, zu denen ich bitte eure Hilfe benötige.
1. nach erfolgreichen Durchlauf werden alle meine Tabellenblätter ausgeblendet und ich versteh nicht woran das liegt!? Einblenden lassen sie sich über "Ansicht"+"Einblenden"
2. möchte ich prüfen, ob der Wert in der Zelle "0" ist, mit meiner Idee es umzusetzen funktioniert es leider nicht, wie könnte man das anders machen!?

Sub Inhalt_Auslesen()
Dim lngZeile As Long
Dim objFileSystem As Object
Dim objVerzeichnis As Object
Dim objDateienliste As Object
Dim objDatei As Object
Dim Inhalt As Worksheet
Set objFileSystem = CreateObject("scripting.FileSystemObject")
Set objVerzeichnis = objFileSystem.GetFolder("C:\Test$\Desktop\Test")
Set objDateienliste = objVerzeichnis.Files
Set Inhalt = ThisWorkbook.Sheets("Inhalt")
lngZeile = 2
For Each objDatei In objDateienliste
If Not objDatei Is Nothing Then
Inhalt.Cells(lngZeile, 1) = objVerzeichnis.Path & objDatei.Name
Inhalt.Cells(lngZeile, 2) = GetObject(objVerzeichnis.Path & "\" & objDatei.Name).Worksheets("Zeiten").Cells(40, 4)
lngZeile = lngZeile + 1
End If
GetObject(objVerzeichnis.Path & "\" & objDatei.Name).Close SaveChanges:=True
Next objDatei
End Sub
Versuch mit der Wenn-Bedingung zu Zellinhalt "0"

Sub Inhalt_Auslesen()
Dim lngZeile As Long
Dim objFileSystem As Object
Dim objVerzeichnis As Object
Dim objDateienliste As Object
Dim objDatei As Object
Dim Inhalt As Worksheet
Dim Zeiten As Worksheet
Set objFileSystem = CreateObject("scripting.FileSystemObject")
Set objVerzeichnis = objFileSystem.GetFolder("C:\Test$\Desktop\Test")
Set objDateienliste = objVerzeichnis.Files
Set Inhalt = ThisWorkbook.Sheets("Inhalt")
Set Zeiten = GetObject(objVerzeichnis.Path & "\" & objDatei.Name).Worksheets("Zeiten").Cells(40, 4)
lngZeile = 2
For Each objDatei In objDateienliste
If Not objDatei Is Nothing Then
If Zeiten  "0" Then
Inhalt.Cells(lngZeile, 1) = objVerzeichnis.Path & objDatei.Name
Inhalt.Cells(lngZeile, 2) = GetObject(objVerzeichnis.Path & "\" & objDatei.Name).Worksheets("Zeiten").Cells(40, 4)
lngZeile = lngZeile + 1
End If
End If
GetObject(objVerzeichnis.Path & "\" & objDatei.Name).Close SaveChanges:=True
Next objDatei
End Sub

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: verschiedene Tabellen in Ordner auslesen
22.09.2021 08:31:38
Fennek
Hallo,

GetObject(objVerzeichnis.Path & "\" & objDatei.Name).Close SaveChanges:=True
"GetObject" öffnet eine Datei, aber mit ausgeblendetem Window, wenn dann gespeichert wird entsteht der beschriebene Effekt.
mfg
AW: verschiedene Tabellen in Ordner auslesen
22.09.2021 08:49:33
Tim
Hallo Fennek, danke für den Hinweis, das habe ich geändert, jedoch erhalte ich jetzt eine Fehlermeldung (Laufzeitfehler 432) da er mir als Abschluss in der Schleife noch folgende Datei ausgibt, die so offensichtlich nicht im Verzeichnis auftaucht "C:\Test\Desktop\Test\November_2021~$LG1.xlsx"
AW: verschiedene Tabellen in Ordner auslesen
22.09.2021 10:19:14
Fennek
Hallo,
der DateiName ist sehr merkwürdig: Temporäre Dateien beginnen mit "[tilde]$", aber nicht mit "November_2012[tilde]$LG1.xlsx"
Das sollte zuerst geklärt werden.
mfg
Anzeige
AW: verschiedene Tabellen in Ordner auslesen
22.09.2021 13:14:22
Tim
Wenn ich die Excel neu öffne, funktioniert der erste Durchlauf, danach erscheint der Dateiname + der Fehler, wobei ich keine Ursache ausmachen kann.
AW: verschiedene Tabellen in Ordner auslesen
22.09.2021 21:12:03
Piet
Hallo
wozu die Datei öffnen? Man kann den Wert einer bestimmten Zelle auch über eine Formel zur externen Mappe ermitteln und auswerten.
Die Firmel kann per VBA ständig geändert werden. Das geht wahrscheinlich viel schneller als Dateien Öffnen und Schliessen.
mfg Piet
AW: verschiedene Tabellen in Ordner auslesen
23.09.2021 09:43:59
Tim
Hi Piet, mir wäre jede Lösung recht, wichtig ist nur, dass er alle Dateien in dem entsprechenden Ordner prüft. Mit meinen Kenntnissen habe ich bisher nur die gezeigte Lösung im Forum gefunden.
Anzeige
AW: verschiedene Tabellen in Ordner auslesen
24.09.2021 15:17:38
Piet
Hallo Tom
hier mal eine Beispieldatei von mir wie man dein Problem geschickt über geschlossene Mappe mit Formeln lösen kann.
Sie enthält eine Tabelle zum auflisten eines Ordners, denn wir brauchen dazu den Pfad und die Dateien. Das zweite Blatt "Load" kopiert alle Daten wie in der Originaltabelle. Den Bereich kannst du selbst angeben. Als Worksheet gehe ich von "Tabelle1" aus, sonst must du den Namen anpassen! Das dritte Blatt "Auswertung" hat zur Zeit noch kein Makro, weil ich nicht weiss welche Zellen wie ausgewertet werden müssen?
Deine Aufgabe ist jetzt nach einem Test mit deinen Dateien, dafür reichen 2-3, mir genaue Infos zum Programmieren zu geben was du genau kopieren willst, und welche Zellen wie ausgewertet werden müssen. Ebenso must du selbst im Auswertungsblatt die Überschriften einrichten. Ich habe dazu bisher keine Infos. Das Beispiel ist mit meinem Ordner getestet und funktioniert einwandfrei.
Ich denke in einer guten Zusammenarbeit sollte eine praxisgerechte Lösung herauskommen. Würde mich freuen.
Ich bin aber nicht jeden Tag im Forum, habe privat wichtige Dinge zu erledigen. Freue mich auf deine Antwort.
https://www.herber.de/bbs/user/148242.xlsm
mfg Piet
Anzeige
AW: verschiedene Tabellen in Ordner auslesen
27.09.2021 17:24:44
Tim
Hallo Piet, entschuldige bitte, dass ich mich erst jetzt zurück melde, jedoch habe ich erst etwas probieren müssen.
Die Funktion GetValue war mir bisher noch nicht bekannt, danke für den Hinweis.

246 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige