Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Anzeige
Inhaltsverzeichnis

MsgBox

Forumthread: MsgBox

MsgBox
11.10.2002 18:32:55
Friedl G.
hallo Forum

Ich möchte als VBA-Newbie folgendes lösen...

Habe eine Makro für die Prozedur "Speichern unter.." und möchte durch eine MsgBox abfragen, ob "speichern - ja - nein - abbrechen"

Wie müsste der Code in VBA aussehen um dies zu realisieren..
XL-Hilfe ist leider nicht sonderlich informativ..

Danke für's Helfen
Friedl

Anzeige

14
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Re: MsgBox
11.10.2002 18:40:17
Hajo_Zi
Hallo Friedl

gebe doch mal in eine modul vbYesNoCancel ein, markiere es und F1

Gruß Hajo

Re: MsgBox
11.10.2002 18:40:55
ChristianG
Hallo Friedl,

vielleicht hilft Dir das weiter:

Gruß
Christian

Re: MsgBox
11.10.2002 18:45:07
Chris
Style = vbYesNo + vbCritical + vbDefaultButton2

Response = MsgBox("Wollen sie fortfahren?", Style, "Speichern unter...")

If Response = vbYes Then
MsgBox ("Dies war ein JA")
Else
MsgBox ("Dies war ein NEIN")
End If

Hallo Friedl

Gehe davon aus, dass du abbrechen nicht brauchst, da ein speichern "NEIN" ja einem Abbruch gleich kommt.

Falls du aber trotzdem ein abbrechen Knopf wünscht, dann ersetzt du vbYesNo mit vbYesNoCancel

Gruss
Chris

Anzeige
Re: MsgBox
11.10.2002 19:06:52
Friedl G.
Hallo an alle...

Ich stelle mal mein Makro rein, um zu veranschaulichen, was ich bisher gemacht habe - Denn so richtig komm ich mit euren Infos nicht weiter...

Option Explicit
Sub RechnungSpeichernUnter()
Dim DName As String, aktDir As String
ChDir "C:\Dokumente und Einstellungen\FGruber\Eigene Dateien\Backstage\Ausgangs Rechnungen"
ActiveSheet.Copy
DName = [e18] & "_" & [a12] & "_" & [g18] & ".xls"
ActiveWorkbook.SaveAs DName
ActiveWorkbook.Close
End Sub

Dank
Friedl

Anzeige
Re: MsgBox
11.10.2002 19:08:27
Friedl G.
Hallo an alle...
Ich stelle mal mein Makro rein, um zu veranschaulichen, was ich bisher gemacht habe - Denn so richtig komm ich mit euren Infos nicht weiter...

Option Explicit
Sub RechnungSpeichernUnter()
Dim DName As String, aktDir As String
ChDir "C:\Dokumente und Einstellungen\FGruber\Eigene Dateien\Backstage\Ausgangs Rechnungen"
ActiveSheet.Copy
DName = [e18] & "_" & [a12] & "_" & [g18] & ".xls"
ActiveWorkbook.SaveAs DName
ActiveWorkbook.Close
End Sub

Dank
Friedl

Anzeige
Re: MsgBox
11.10.2002 19:09:05
Friedl G.
Hallo an alle...
Ich stelle mal mein Makro rein, um zu veranschaulichen, was ich bisher gemacht habe - Denn so richtig komm ich mit euren Infos nicht weiter...

Option Explicit
Sub RechnungSpeichernUnter()
Dim DName As String, aktDir As String
ChDir "C:\Dokumente und Einstellungen\FGruber\Eigene Dateien\Backstage\Ausgangs Rechnungen"
ActiveSheet.Copy
DName = [e18] & "_" & [a12] & "_" & [g18] & ".xls"
ActiveWorkbook.SaveAs DName
ActiveWorkbook.Close
End Sub

Dank
Friedl

Anzeige
Re: MsgBox
11.10.2002 19:22:37
PeterW
Hallo Friedl,


Hinweis am Rande, mach es nicht wie Billy, "Wollen Sie wirklic...?", "Haben Sie sich das auch gut überlegt?", "Beim nächsten Klick wird die Aktion tatsächlich ausgeführt!!!", "ALLERLETZTE MÖGLICHKEIT ABZUBRECHEN!"....

Gruß
Peter

Re: MsgBox
11.10.2002 20:11:04
Friedl G.
Hallo Peter

Nach einer "leichten" Modifikation funktioniert das prima - Danke!!!

aber wenn ich schon lästig bin - Ließe sich theoretisch in das Prozedere folgendes einbauen.

Nach dem "Speichern unter..." erhöhen des Zellwertes von E18 um "1" - = fortlaufende Rechnungsnummer..
Mach ich jetzt manuell (Aber nicht ideal)

Danke Dir
Friedl
Ist das Machbar ??

Anzeige
Re: MsgBox
11.10.2002 20:12:24
Friedl G.
Sorry...

So sieht das Makro jetzt aus..

Sub RechnungSpeichernUnter()
Dim DName As String, aktDir As String
Dim a As Byte
a = MsgBox("Wollen Sie wirklich speichern?", vbYesNo)
If a = 7 Then Exit Sub
ChDir "C:\Dokumente und Einstellungen\FGruber\Eigene Dateien\Backstage\Ausgangs Rechnungen"
ActiveSheet.Copy
DName = [e18] & "_" & [a12] & "_" & [g18] & ".xls"
ActiveWorkbook.SaveAs DName
ActiveWorkbook.Close
End Sub

Anzeige
Re: MsgBox
11.10.2002 20:30:58
PeterW
Hallo Friedl,

nach
ActiveWorkbook.SaveAs DName
einfügen
Range("E18") = Range("E18") + 1

Gruß
Peter

Sorry
11.10.2002 20:39:47
PeterW
Hallo Friedl,

bin mir nicht ganz sicher, ob ich die richtige Stelle gefunden habe. Wenn es nicht wie gewünscht klappt füge die genannte Zeile ein nach
If a = 7 Then Exit Sub

Gruß
Peter

Anzeige
Re: MsgBox
11.10.2002 20:41:23
Friedl G.
Hallo Peter

Sorry, aber die richtige Position ist - Letzte Zeile vor "End Sub", weil ja vorher der Befehl für "ActiveWorkbook.close" steht...

Bin auch mal auf was draufgekommen...

Aber sonst SUPER - Funktioniert bestens.
Lieben Dank und schönen abend noch

Friedl

Re: Sorry
11.10.2002 20:53:42
Friedl G.
Nö, nö....

Bisschen zu bald für die codezeile, dann wird nämlich die neue Nummer vor !! dem Speichern vergeben, soll aber erst nach dem Speichern vergeben werden, vorletzte Zeile, habe ich ausprobiert.

Trotzdem DANKE !!!
Friedl

Anzeige
Re: Sorry
11.10.2002 21:39:58
PeterW
Hallo Friedl,

das ist eben der Fluch, wenn man vor Wochen mal einen Code angepasst hat und sich nicht mehr an die Details erinnert.
Hauptsache ist, dass es klappt.

Gruß
Peter

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige