21.03.2018, 20:57
Hallo liebe Foren-Gemeinde,
ich bin noch relativ neu im Bereich VBA und Excel, versuche aber mir viel anzueigenen. Leider stehe ich aktuell total auf dem Schlauch und brauche Unterstätzung.
Was möchte ich tun:
Ich möchte aus einer Datei, deren Name sich regelmäßig ändert (Export aus anderem System mit zufällig generierter Nummer) einen Zellen Bereich kopieren und in einem bestimmen Bereich einer anderen Datei einfügen.
Was habe ich bisher getan:
Da sich der Dateiname der Datei mit den zu importierenden Datei ständig ändern, habe ich ein kleines Formular gebaut, dass mir alle offenen Excel-Datein anzeigt.
Das funktioniert auch. Es werden mir in einer Box alle offnen Dateien angezeigt. Dort möchte ich nun die entsprechende (geöffnete) Datei anklicken und dann aus dem Tabellenblatt (es gibt immer nur eins) den Bereich B5:DZ24 kopieren und in der Ursprungsdatei (hier läuft das Makro) in das Tabellenblatt Daten einfügen. Vorhandene Werte sollen einfach überschrieben werden und die Werte aus der Importdatei sollen immer bei A1 eingefügt werden.
Zum vielleicht einfacheren Verständnis, was gemacht werden soll (+ die Dateiauswahl über das Formular), hier mal die Makroaufzeichnung.
Einen Button zum Bestätigen der Datei habe ich angelegt. Beim dazu notwendigen Code stehe ich aber total auf dem Schlauch. Könnt ihr mir helfen?
ich bin noch relativ neu im Bereich VBA und Excel, versuche aber mir viel anzueigenen. Leider stehe ich aktuell total auf dem Schlauch und brauche Unterstätzung.
Was möchte ich tun:
Ich möchte aus einer Datei, deren Name sich regelmäßig ändert (Export aus anderem System mit zufällig generierter Nummer) einen Zellen Bereich kopieren und in einem bestimmen Bereich einer anderen Datei einfügen.
Was habe ich bisher getan:
Da sich der Dateiname der Datei mit den zu importierenden Datei ständig ändern, habe ich ein kleines Formular gebaut, dass mir alle offenen Excel-Datein anzeigt.
Code:
Private Sub UserForm_Initialize()
Dim wkb As Workbook
For Each wkb In Workbooks
lstDateinamen.AddItem wkb.Name
Next wkb
Set wkb = Nothing
End Sub
Das funktioniert auch. Es werden mir in einer Box alle offnen Dateien angezeigt. Dort möchte ich nun die entsprechende (geöffnete) Datei anklicken und dann aus dem Tabellenblatt (es gibt immer nur eins) den Bereich B5:DZ24 kopieren und in der Ursprungsdatei (hier läuft das Makro) in das Tabellenblatt Daten einfügen. Vorhandene Werte sollen einfach überschrieben werden und die Werte aus der Importdatei sollen immer bei A1 eingefügt werden.
Zum vielleicht einfacheren Verständnis, was gemacht werden soll (+ die Dateiauswahl über das Formular), hier mal die Makroaufzeichnung.
Code:
Sub Test()
Windows("Auswertung_210318_180842.xlsx").Activate
Range("B5:DZ24").Select
Selection.Copy
Windows("Daily Report.xlsm").Activate
Sheets("Daten").Select
Range("A1").Select
ActiveSheet.Paste
Sheets("Report").Select
Range("A1").Select
End Sub
Einen Button zum Bestätigen der Datei habe ich angelegt. Beim dazu notwendigen Code stehe ich aber total auf dem Schlauch. Könnt ihr mir helfen?