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

Beim Speichern ausführen

Beim Speichern ausführen
28.08.2020 10:59:37
Hannes
Hallo ich bin VBA Anfänger möchte aber ein wenig lernen aber vor allem verstehen.
Ich arbeite mit verschiedenen Versionen von Excel 2010 oder höher
Ich hab folgendes Problem:
Ich habe 6 Tabellenblätter (will später 5 ausblenden)
In dem 1 Tabellenblatt (Formular) das sichtbar bleibt soll alles gesteuert werden.
Habe jetzt aus YouTube und Co folgenden Code gebastelt:
Wenn gespeichert wird, schreibe bitte den Wert einer Zelle in die rechte Fußzeile
und den Wert einer anderen Zelle In die linke Fußzeile nur einer Tabelle (Brief).
Die Werte sind auch in der Tabelle "Brief".
Da dies eine Vorlage werden soll, ändern sich diese Werte bei jedem neuen öffnen der Vorlage.
Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
'L12 Einfügen
Worksheets("Brief").PageSetup.RightFooter = Range("L12").Text
'L1 Einfügen
Worksheets("Brief").PageSetup.LeftFooter = Range("L1").Text
End Sub

Nur leider funktioniert diese Makro nicht.
Da kommt immer nur ein Pop Up wo man ein Makro auswählen soll
und es steht kein Makro zur Auswahl.
Wenn ich diese aber einzeln ausführe
Sub L12Einfügen()
Worksheets("Brief").PageSetup.RightFooter = Range("L12").Text
End Sub

Funktioniert es tadellos.
Kann mir wer Helfen und sagen warum?
Danke Hannes

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

Betreff
Datum
Anwender
Anzeige
AW: Beim Speichern ausführen
28.08.2020 11:06:06
onur
"Da kommt immer nur ein Pop Up wo man ein Makro auswählen soll" ?
WO bzw wann ?
AW: Beim Speichern ausführen
28.08.2020 11:12:40
Rudi
Hallo,
eine Frage der Referenzierung.
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Worksheets("Brief").PageSetup.RightFooter = Worksheets("Brief").Range("L12").Text
Worksheets("Brief").PageSetup.LeftFooter = Worksheets("Brief").Range("L1").Text
End Sub

oder kürzer
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
With Worksheets("Brief")
'L12 Einfügen
.PageSetup.RightFooter = .Range("L12").Text
'L1 Einfügen
.PageSetup.LeftFooter = .Range("L1").Text
End With
End Sub

Gruß
Rudi
Anzeige
AW: Beim Speichern ausführen
28.08.2020 12:28:23
Hannes
Ich hab beide Codes versucht und Excel macht nix zumindest nicht das was er soll. (irgentwas macht er)
Option Explicit
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Worksheets("Brief").PageSetup.RightFooter = Worksheets("Brief").Range("L12").Text
Worksheets("Brief").PageSetup.LeftFooter = Worksheets("Brief").Range("L1").Text
End Sub
So steht es jetzt im Editor.
wenn ich es mit Play ausführe oder beim speichern (ich will keine Rückfage haben)
schreibt Excel immer noch nichts in die Fußleiste.
AW: Beim Speichern ausführen
28.08.2020 12:37:23
Werner
Hallo,
kann es sein, dass du den Code in einem allgemeinen Modul hast?
Das ist eine Ereignisprozedur und der Code gehört ins Codemodul von "DieseArbeitsmappe".
Im VBA-Editor im Objektbaum doppelklick auf "DieseArbeitsmappe" und den kompletten Code rechts ins Codefenster kopieren.
Gruß Werner
Anzeige
AW: Beim Speichern ausführen
28.08.2020 13:24:50
Hannes
Ja das war der Fehler. Vielen Dank!
Gerne u. Danke für die Rückmeldung. o.w.T.
28.08.2020 13:57:57
Werner

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige