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

VB-Script_Excel2013

VB-Script_Excel2013
02.05.2018 15:37:45
Paradoxum
Hallo,
ich bin 'Laie' und habe mir ein Script aus diversen Code-Snipets und etwas Eigeninitiative zusammen geschustert.
Es lief auch schon.
Leider funktioniert es plötzlich nicht mehr - völlig willkürlich aus dem Nichts. !?
Und zwar bei dem Befehl "Workbooks.Open file". Obwohl im VisualBasic-Editor (aus Excel) die zu öffnende Datei scheinbar erkannt wird. !? (Habe es im Anhang als Screenshot mit gesendet " https://www.herber.de/bbs/user/121405.gif " ).
Das Script Öffnet ein (mehrere) Exceldatei(en) (nacheinander), selektiert (jeweils) das TabellenBlatt (wovon je Dokument immer nur eins existiert) und schiebt es in das zuvor geöffnete (Standard-) Dokument.
Auf diese Weise kann ich mehrere Einzeldokumente in ein Dokument zusammenfassen.
Kann mir vielleicht jemand Rat geben / helfen.
Vielen Dank schon mal für Antwort
Der Code ist wie folgt:
Sub oeffnen()
Dim path    As String
Dim pattern As String
Dim file    As String
path = "C:\Users\Werbung_1\Desktop\Excel-Makros\EinzelSeiten-zusammenfuehren\"
'-> Pfad wo die Files liegen, dies musst du noch anpassen
pattern = "*.xlsx"     '-> Dateiende
file = Dir(path & pattern)  '-> Das erste File mit der Endung .xyz
Do While file  ""
'-> Hier macht er so lange, bis das letzte File im Verzeichnis durchgegangen ist
Application.DisplayAlerts = False
Workbooks.Open file
'Kopieren
Worksheets("Table 1").Select
Cells.Select
Selection.Copy
'Einfügen
Workbooks("MeineStandardMakros.xlsm").Activate
Sheets("Tabelle1").Select
Sheets.Add After:=Worksheets(Worksheets.Count)
Cells.Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
Workbooks(2).Activate
ActiveWorkbook.Close
'ActiveWorkbook.Save
Application.DisplayAlerts = True
file = Dir       	 '-> Das nächste File im Verzeichnis
Loop
End Sub

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Display Alerts= False?
02.05.2018 16:10:51
mmat
Hi,
an dem Code ist erstmal nix auszusetzen, mit einer Ausnahme:
Application.DisplayAlerts = False
Damit unterdrückst Du jegliche Meldung, die bei der Analyse des Problems hilfreich sein könnte.
AW: Display Alerts= False?
04.05.2018 13:56:38
Paradoxum
Hallo mmat,
vielen Dank für die Antwort.
Ich weiß. Aber ansonsten kommt zum Schluss (beim Schließen des Dokuments) die Meldung, ob ich die in der Zwischenablage gespeicherten Daten erhalten möchte. Danach bricht das Script ab.
Hast Du eine Lösung für mich, mittels welcher ich nur diesen Dialog unterdrücken kann?
Mein ursprüngliches Problem mit dem Öffnen ist inzwischen gelöst und funktioniert jetzt - es muss heißen "Workbooks.Open path & file".
Schönes Wochenende.
Anzeige
AW: VB-Script_Excel2013
02.05.2018 16:22:49
Daniel
Hi
mit DIR(...) bekommst du NUR den Dateinahmen, ohne die Pfadstruktur davor.
Wenn du aber die Datei öffnen willst, brauchst du nicht nur den reinen Dateinamen, sondern auch die gesamte Pfadstruktur.
dh wenn du die mit DIR gefundene Datei öffnen willst, musst du die Pfadstruktur noch davor setzen:
file = Dir(path & pattern)
Workbooks.Open path & file
das Öffnen der Datei nur mit dem Dateinamen allein kann funktionieren, dazu muss aber der z.Zt aktive Pfad der richtige sein und das ist mehr oder weniger zufällig.
Gruß Daniel
Anzeige
AW: VB-Script_Excel2013
04.05.2018 13:48:29
Paradoxum
Hallo Daniel, :o)
vielen Dank für die Antwort!
Super! Funktioniert jetzt! :o)) Danke!
Schönes Wochenende und eine gute Zeit,
Andreas

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige