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

Datei u. Tabelle ansteuern

Datei u. Tabelle ansteuern
20.03.2007 16:41:17
Markus
Hallo Zusammen,
ich habe folgendes Problem:
Ich will mittels einer Datei (Abfrage.xls) verchiedene Dateien öffnen, Daten auslesen und in eine Zentraldatei abspeichern. Das ganze Kopieren ist nicht das Problem.
Zur Ansteuerung habe ich in meiner Datei (Abfrage.xls) die Dateinamen und Tabellennamen hinterlegt (z.B. Dateiname in A1 und Tabellenname in A2. ich schaffe es auch die in Zelle A1 genannte Datei zu öffnen, nur schaffe ich nicht das Ansteuern des angegeben Tabellenblattes. Wie bekomme ich das hin?
Sub Auslesen()
Worksheets("Abfrage").Select
Workbooks.Open Filename:=Cells(1, 1).Value
Wie behalte ich die Information aus Ursprungsdatei, um angegebens Tabellenblatt anzusteuern?
? Worksheets(Range("A2").Text).Select ?
Bitte um Hilfe
Gruß
Markus

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Datei u. Tabelle ansteuern
20.03.2007 17:05:02
Alex
Hi Markus
Um ein Arbeitsblatt auszulesen muss man es nicht unbedingt auswählen.
Versuch es mal mit folgendem Code:

Sub Auslesen()
Dim wbSource as Woorkbook
Dim shSource as Worksheet
Set wbSource = WorkBooks.Open FileName: "Pfad zur Datei" ' Aus Abfrage.xls
Set shSource = wbSource.WorkSheets("Name des Arbeitsblattes") ' Aus Abfrage.xls
Worksheet("Ziel").Cells(x,y).Value = shSource.Cells(x,y).Value
' Workbok Schliesen und Referenzen löschen
wbSource. Close
Set wsSource = Nothing
Set wbSource = Nothing
End Sub

Worksheet("Zile") ist die Tabelle in die, die Daten kopiert werden.
Gruss Alex
Echo ist erwünscht!
Anzeige
AW: Datei u. Tabelle ansteuern
21.03.2007 09:37:53
Markus
Hallo Alex,
danke für deine Antwort. Ich bekomme nur leider bei:
Set wbSource = Workbooks.Open Filename:=Cells(1, 1).Value ' Aus Abfrage.xls
die Meldung: Fehler beim Kompelieren, erwartet Anweisungsende.
Ich konnte es leider noch nicht testen, aber du schreibst von einer Zieldatei, in die alles kopiert wird. Ich habe aber vorher das Problem, daß ich in meinen Abzufragenden Dateien (... .xls) eine bestimmte Tabelle ansteuern will, die in Zelle A2 der Datei "Abfrage.xls" steht. In der Abzufragenden Datei will ich einen gewissen Block an Werten kopieren und dann in die "Zentraldatei.xls" speichern. Da dieser Block, wie die Tabellennamen, auch variablel ist, würde ich gern diese Information aus Zelle A3 abgreifen.
Danke und Gruß
Markus
Anzeige
AW: Datei u. Tabelle ansteuern
21.03.2007 10:01:00
Markus
Hallo,
schreibe nur noch mal um kenntlich zu machen, daß meine Frage noch offen ist
Gruß Markus
AW: Datei u. Tabelle ansteuern
21.03.2007 10:03:55
Hans
Hallo Markus,
korrekt ist:
FileName:="Pfad zur Datei"
Gruss hans
AW: Datei u. Tabelle ansteuern
21.03.2007 10:29:00
Markus
Hallo.
auch dir Danke, Hans, die Datei bekomme ich jetzt geöffnet, die ich in Zelle A1, Datei Abfrage angegeben habe.
Folgende Fragestellung ist immer noch offen:
Alex spricht von einer Zieldatei, in die alles kopiert wird. Ich habe aber vorher das Problem, daß ich in meinen Abzufragenden Dateien (... .xls) eine bestimmte Tabelle ansteuern will, die in Zelle A2 der Datei "Abfrage.xls", Tabelle1 steht. In den immer wechselnden abzufragenden Dateien (... .xls) will ich einen gewissen Block an Werten kopieren und dann in die "Zentraldatei.xls" speichern. Da dieser Block, wie die Tabellennamen, auch variablel ist, würde ich gern diese Information aus Zelle A3 abgreifen. Ich habe also drei Dateien, mit denen ich arbeite.
Danke und Gruß
Markus
Anzeige
AW: Datei u. Tabelle ansteuern
21.03.2007 10:42:00
Hans
Hallo Markus,
wie folgt:

Sub DatenImport()
Dim wks As Worksheet
Dim iRow As Integer, iCol As Integer, iRowT As Integer
Set wks = ActiveSheet
iRowT = 1
For iCol = 1 To 3
Workbooks.Open Filename:=wks.Cells(1, iCol).Value
Worksheets(wks.Cells(2, iCol).Value).Range(wks.Cells(3, iCol).Value).Copy wks.Cells(iRowT, 1)
ActiveWorkbook.Close savechanges:=False
iRowT = wks.Cells(wks.Rows.Count, 1).End(xlUp).Row + 1
Next iCol
Application.CutCopyMode = False
End Sub

Gruss hans

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige