ich habe ein Makro das mir bestimmte Zellen von einer anderen Excel Datei in meine Haupt Datei importiert. Sobald ich auf den Button klicke kann ich die Datei auswählen. Jetzt hätte ich gerne das ganze so, dass wenn ich auf den Button klicke mir alle Dateien die sich in einem bestimmten Ordner befinden in diese Datei importiert wird. (am besten ohne eine Datei auswählen zu müssen)
Anbei der aktuelle Code.
Code:
Option Explicit
Sub Import_mit_Dialog() Dim Quelle As Object, Ziel As Object Dim Datei As String
On Error GoTo Fehler
'Löscht den Inhalt Worksheets("Datenquelle").Range("B2:J10000").Clear
Set Quelle = ActiveWorkbook.Worksheets(1) Set Ziel = ThisWorkbook.Worksheets(1)
With Range("B2:J10000") .Copy _ Destination:=Workbooks("PMB Ausland.xlsm").Sheets("Datenquelle").Range("B2") End With ActiveWorkbook.Close SaveChanges:=False
'Speicher freigeben Set Quelle = Nothing Set Ziel = Nothing
20.09.2016, 01:33 (Dieser Beitrag wurde zuletzt bearbeitet: 20.09.2016, 02:30 von Käpt'n Blaubär.)
Hallo,
1. Kopierfehler: (ich nehme doch schwer an, daß es ein Kopierfehler ist) jedenfalls fehlt das End Sub
... und eher der Ordnung halber: 2. es werden Dir nicht nur die Dateien sondern auch die in dieser Hirarchie befindlichen Ordner angezeigt (ist das gewollt ?)
3. es werden derzeit nur *.xlsx-Dateien angezeigt. Es gibt z.Zt. keine Anzeigen auf etwa vorhandene *.xlsm-, *.xlsb- oder *.xls-Dateien.
... was ich nun gar nicht verstanden habe: 4. im angezeigten Fenster existieren doch schon jetzt bereits zwei Buttons, einer zum "Öffnen" und einer für den "Abbruch".
Willst Du einen zusätzlichen Button? Was soll der dann können?
mit diesem Makro ist es mir nur möglich eine Datei auszuwählen. Und eine Datei zu importieren
Ich würde aber gerne mehrere Dateien aufeinmal in die Liste importieren, die sich in einem bestimmten Ordner befinden, ohne überhaupt eine Datei auswählen zu müssen.
20.09.2016, 10:37 (Dieser Beitrag wurde zuletzt bearbeitet: 20.09.2016, 10:42 von Käpt'n Blaubär.)
Hallo,
Zitat:... Ich würde aber gerne mehrere Dateien aufeinmal in die Liste importieren, die sich in einem bestimmten Ordner befinden, ohne überhaupt eine Datei auswählen zu müssen.
heißt mehrere alle ? wenn nicht, wie soll Excel dann wissen, welche Dateien Du öffnen willst und welche nicht? Bei nicht alle, wirst Du, meiner bescheidenen Meinung nach eher Dateien auswählen müssen müssen :19:
Mehrere Dateien zu öffnen, die im gleichen Ordner wie die aufrufende Datei liegen könnte man auch automatisch, oder eben nach Auswahl, in der rufenden Datei per VBA verdrahten. Auch schließen ließen sie sich vollautomatisch.
Man braucht eben immer noch einige Infos mehr. So sieht es jetzt aus:
20.09.2016, 14:15 (Dieser Beitrag wurde zuletzt bearbeitet: 20.09.2016, 14:15 von Käpt'n Blaubär.)
Hallo,
soeben ist mir eingefallen, es gibt auch noch die Möglichkeit, Dateien im Autostartordner abzulegen. Allerdings würden diese Dateien dann jedes Mal beim Excelstart mitgestartet. Manchmal ist das sehr vorteilhaft, aber nicht immer ist es gewünscht.
Außerdem, nicht ganz so schlimm wie oben, gibt es die Möglichkeit, mehrere Dateien zu einem "Arbeitsbereich" zusammenzufassen. Der würde dann mit dem Start der rufenden Datei aktiviert werden.
Set Quelle = ActiveWorkbook.Worksheets(1) Set Ziel = ThisWorkbook.Worksheets(1)
With Range("B2:J10000") .Copy _ Destination:=Workbooks("PMB Ausland.xlsm").Sheets("Datenquelle").Range("B2") End With ActiveWorkbook.Close SaveChanges:=False
'Speicher freigeben Set Quelle = Nothing Set Ziel = Nothing
' ************************************************************** ' Modul: Modul2 Typ = Allgemeines Modul ' **************************************************************
OptionExplicit
Sub AlleEinlesen() 'von hier kopiert: 'http://www.clever-excel-forum.de/thread-2338-post-19775.html#pid19775
Dim lngAnzahlSpalten AsLong Dim lngAnzahlZeilen AsLong Dim lngStartzeile AsLong Dim lngZaehler AsLong Dim strDatei AsString Dim strPfad AsString Dim wsZiel As Worksheet