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

Makros verbinden

Makros verbinden
Max
Hallo,
ich wüßte gern, wie man 2 Makros so miteinander verbindet, daß sie über einen
CommandButton ablaufen. Es soll gedruckt werden und im gleichen Zug sollen
nicht mehr benötigte Blätter gelöscht werden.
Private Sub Löschen()
With ThisWorkbook.VBProject
.VBComponents.Remove .VBComponents("frmDruck")  'Formulare
On Error Resume Next
End With
Application.ScreenUpdating = False 'Tabellen
Application.DisplayAlerts = False
Sheets("Tabelle1").Visible = True
Sheets("Tabelle1").Delete
Sheets("Tabelle2").Visible = True
Sheets("Tabelle2").Delete
Application.DisplayAlerts = True
Application.ScreenUpdating = True
MsgBox "Die Blätter wurden gelöscht!", vbInformation
End Sub

Private Sub CommandButton1_Click()
ActiveWindow.SelectedSheets.PrintOut from:=1, To:=8, Copies:=2, Collate _
:=True
Unload Me
End Sub
Wenn die Makros auf 2 verschiedenen Buttons liegen, wird von den Anwendern
nach dem Druck häufig das Löschen (um die Datei zum Archivieren zu verkleinern)
bestimmter Blätter vergessen.
Daher sollte das in einer Routine ablaufen. Ob erst gedruckt wird und dann gelöscht
oder umgekehrt ist egal, da die zu löschenden Blätter nicht mit gedruckt werden.
Falls jemand eine Lösung hat, wäre ich dafür dankbar.
Gruss
Max

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

Betreff
Benutzer
Anzeige
AW: Makros verbinden
31.07.2011 12:34:11
Gerd
Hallo Max,
statt Rückfragen eine mögliche "Verbindung".
Private Sub CommandButton1_Click()
ActiveWindow.SelectedSheets.PrintOut from:=1, To:=8, Copies:=2, Collate:=True
Application.ScreenUpdating = False 'Tabellen
Application.DisplayAlerts = False
Sheets("Tabelle1").Visible = True
Sheets("Tabelle1").Delete
Sheets("Tabelle2").Visible = True
Sheets("Tabelle2").Delete
Application.DisplayAlerts = True
Application.ScreenUpdating = True
MsgBox "Die Blätter wurden gelöscht!", vbInformation
Unload Me
End Sub
Gruß Gerd
AW: Makros verbinden
31.07.2011 13:03:36
Max
Hallo Gerd,
in meinem Makro kommen auch VBComponents (UserForms, Module) vor
( s. mein Muster), die mit den zu löschenden Seiten zusammen hängen
und damit gleichzeitig mit gelöscht werden müssen.
Wie bringe ich also Druck, Löschen von Blättern und Löschen von VBComponents
in einem Makro unter?
Gruss
Max
Anzeige
AW: Makros verbinden
31.07.2011 15:13:49
Uduuh
Hallo,
ganz einfach:
Private Sub CommandButton1_Click()
ActiveWindow.SelectedSheets.PrintOut from:=1, To:=8, Copies:=2, Collate _
:=True
Löschen
Unload Me
End Sub
Gruß aus’m Pott
Udo

AW: Makros verbinden
31.07.2011 19:46:38
Max
Hallo Uduuh,
wenn ich die Sequenz zum Löschen also "ganz einfach" an den Druckbefehl
kopiere, sieht das Makro so aus:
Private Sub CommandButton1_Click()
ActiveWindow.SelectedSheets.PrintOut from:=1, To:=8, Copies:=2, Collate _
:=True
With ThisWorkbook.VBProject
.VBComponents.Remove .VBComponents("frmDruck")  'Formulare
On Error Resume Next
End With
Application.ScreenUpdating = False 'Tabellen
Application.DisplayAlerts = False
Sheets("Tabelle1").Visible = True
Sheets("Tabelle1").Delete
Sheets("Tabelle2").Visible = True
Sheets("Tabelle2").Delete
Application.DisplayAlerts = True
Application.ScreenUpdating = True
MsgBox "Die Blätter wurden gelöscht!", vbInformation
Unload Me
End Sub
Excel stört sich dann leider immer an der Zeile
" With ThisWorkbook.VBProject" und fordert zum debuggen auf.
Weiß jemand Abhhilfe?
Gruss
Max
Anzeige
nicht nachvollziehbar
01.08.2011 13:22:11
Rudi
Hallo,
der Code funktioniert.
Gruß
Rudi
AW: nicht nachvollziehbar
02.08.2011 18:44:43
Max
Hallo,
ich werde es der Tabelle vermitteln...
Dank an Alle!
Gruss
Max

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige