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

Makro / VBA Hilfe

Makro / VBA Hilfe
04.03.2016 13:01:40
andy
Hallo, ich habe eine Datei mit mehreren Tabellen, die sich oft wiederholen (z.B. RK2, RK3, RK4 und RK5 und andere Namen mit 2/3/4und 5.
Mit insgesamt 4 Makros möchte ich, dass 4 separate Dateien erzeugt werden, d.h. in der Datei "RK2 - dd.mm.yyyy" ist alles von 3, 4 und 5 ausgeblendet. Zudem werden die angezeigten Blätter mit einem Passwort gesperrt und die Arbeitsmappe geschützt!
Das habe ich soweit einigermaßen hinbekommen. Auch, dass die Datei unter dem Namen mit Datumsangabe gespeichert wird.
Mein Problem ist jetzt, dass die Ursprungsdatei ja umbenannt wurde in die gespeicherte Datei ("RK2 - dd.mm.yyyy"). Ich möchte diese jetzt schließen und die Grunddatei ("Berechnung") wieder öffnen.
Wenn ich aber ein Makro ausführe und die Applikation oder das Workbook schließe, dann führt das Makro den letzten Befehl nicht mehr aus.
Ich bräuchte also ein Befehl der sagt:
Öffne die Grunddatei "Berechnung" und schließe die neu gespeicherte Datei "RK2 - dd.mm.yyyy) ==> die mittels Dim (am Ende des Codes) erstellt wird.
Kann mir hier jemand helfen....hier der bisherige Text:
Sub RK2_schutz()
' RK2_schutz Makro
Sheets(Array("Makros", "RK3 Daten", "RK4 Daten", _
"RK5 Daten", "RK2 SOLL", "RK2 IST", "RK3 SOLL", "RK3 IST", "RK4 SOLL", "RK4 IST", _
"RK5 SOLL", "RK5 IST", "G RK3 SOLL", "G RK3 IST", "G RK4 SOLL", "G RK4 IST", _
"G RK5 SOLL", "G RK5 IST", "B RK3", "B RK4", "B RK5", "Historie")) _
.Select
Sheets("Historie").Activate
ActiveWindow.SelectedSheets.Visible = False
Sheets("RK2 Daten").Select
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True, Password:="caro"
Sheets("G RK2 Soll").Select
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True, Password:="caro"
ActiveSheet.EnableSelection = xlNoSelection
Sheets("G RK2 IST").Select
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True, Password:="caro"
ActiveSheet.EnableSelection = xlNoSelection
Sheets("G Rendite-Risiko SOLL").Select
ActiveSheet.ChartObjects("Diagramm 1").Activate
ActiveChart.PlotArea.Select
ActiveChart.PlotVisibleOnly = False
Columns("P:R").Select
Selection.EntireColumn.Hidden = True
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True, Password:="caro"
ActiveSheet.EnableSelection = xlNoSelection
Sheets("G Rendite-Risiko IST").Select
ActiveSheet.ChartObjects("Diagramm 1").Activate
ActiveChart.PlotArea.Select
ActiveChart.PlotVisibleOnly = False
Columns("P:R").Select
Selection.EntireColumn.Hidden = True
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True, Password:="caro"
ActiveSheet.EnableSelection = xlNoSelection
Sheets("Berater RK2").Select
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True, Password:="caro"
ActiveWorkbook.Protect Structure:=True, Windows:=False, Password:="caro"
Sheets("RK2 Daten").Select
Dim DName As String, Dateiname As String, Pfad As String
Pfad = "R:\Werte\Muster\Modell\"
DName = "RK2 - "
Dateiname = Pfad & "\" & DName & Format(Now, "YYYYMMDD") & ".xlsm"
ActiveWorkbook.SaveAs Filename:=Dateiname
Workbooks.Open Filename:="R:\Werte\Muster\Modell\Berechnung.xlsm"
End Sub

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Makro / VBA Hilfe
05.03.2016 20:21:59
Michael
Hi Andy,
ich würde den Gaul andersrum aufzäumen:
Zuerst die aktuelle Datei als Datei kopieren ...
(filecopy zickt, hier ein Umweg:
https://www.herber.de/forum/archiv/200to204/203868_geoeffnete_Datei_kopieren.html)
... und dann die Kopie öffnen, bearbeiten und wieder speichern.
Dann ist
a) sichergestellt, daß Deinem Original nichts passiert (falls der Strom ausfällt o.ä.) und
b) verläßt Du das Original nicht während der Makro-Laufzeit, so es keine derartigen Probleme gibt.
Schöne Grüße,
Michael
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige