Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
348to352
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
348to352
348to352
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Datenauslesen

Datenauslesen
07.12.2003 21:13:13
Jürgen
Hallo zusammen,
vielleicht kann mir ja jemand weiterhelfen.
Brauche verschiedene Daten aus verschiedenen Dateien,
habe mir ein kleines Programm geschrieben das auch gut funktioniert.
Da diese Daten nicht immer in jeder Datei an der gleichen Stelle stehen, suche ich diese mir in jeder Datei einzeln.
Nun meine Frage: Gibt es eine Möglichkeit dieses Programm auch auf eine geschlossene Datei anzuwenden, sprich die Dateien gar nicht zu öffnen und trotzdem die benötigten Daten herauszulesen?

Vielen Dank für Eure Mühe.
Gruß
Jürgen

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Datenauslesen
07.12.2003 21:54:00
PeterW
Hallo Jürgen,

auf geschlossene Dateien kannst du per Formel zugreifen. Schreib in deinem Code in die entsprechenden Zellen Formeln mit den Verweisen auf die geschlossene Datei und weise dann den Zellen deren Zellwerte zu. Mit VBA gut dürfte das für dich kein großes Problem sein.

Gruß
Peter
AW: Datenauslesen
07.12.2003 21:54:19
Nepumuk
Hallo Jürgen,
um erst einmal mit dem Märchen von lesen in geschlossenen Mappen aufzuräumen folgendes. Excel kann nicht mit Dateien kommunizieren die geschlossen auf der Festplatte liegen. Von Excel geht eine Anfrage an den Prozessor. Der sagt dem Festplattencontroller, gib mir mal die Datei. Wenn diese dann im Arbeitsspeicher und falls der zu klein, im Swapspeicher liegt, kommt Excel an die Daten ran. Das merkst du spätestens dann, wenn die Mappe mit einem Schreib- Leseschutzkennwort versehen ist. Da kommt nämlich die Kennwortabfrage.

Zu deinem Anliegen. Wenn feststeht, in welcher Tabelle und welcher Zelle der von dir gesuchte Wert sich befindet, macht es Sinn auf das explizite öffnen der Mappe zu verzichten. Wenn aber ein Programm in der Mappe suchen muss, um z.B. ein bestimmtes Datum zu finden oder den letzten Eintrag in einer Spalte/Zeile, so bringt das Verfahren keinerlei Gewinn. Du müsstest dich nämlich seriell durchlesen und jeden gelesenen Wert prüfen. Da habe ich die Mappe aber locker geöffnet, gelesen und wieder geschlossen.

Es gibt auch noch die Möglichkeit, die Mappe mit GetObject zu öffnen. Die ist auch etwas schneller wie normal und die Mappe bleibt ausgeblendet, kann aber ganz normal bearbeitet werden.

Und so geht das lesen in einer nicht explizit geöffneten Mappen:

Option Explicit
Public Sub Verzeichnis()
Dim strPfad As String, strDatei As String, strTabelle As String, strAdresse As String
strPfad = ThisWorkbook.path & "\"
strDatei = "y.xls"
strTabelle = "Test"
strAdresse = "A5"
Cells(1, 1) = hole_Werte(strPfad, strDatei, strTabelle, strAdresse)
End Sub
Private Function hole_Werte(strPfad As String, strDatei As String, strTabelle As String, strAdresse As String)
hole_Werte = ExecuteExcel4Macro("'" & strPfad & "[" & strDatei & "]" & strTabelle & "'!" & Range(strAdresse).Range("A1").Address(, , xlR1C1))
End Function



Code eingefügt mit: Excel Code Jeanie

Gruß
Nepumuk
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige