Anzeige
Archiv - Navigation
1668to1672
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

Tabellenbereich mit "Speichern unter" speichern

Tabellenbereich mit "Speichern unter" speichern
18.01.2019 16:14:13
Marv
Guten Tag,
ich schreibe gerade für private Zwecke ein Programm, dass zur Erstellung einer Rechnung dienen soll. Soweit so gut. Doch, wenn ich über
Application.Dialogs(xlDialogSaveAs).Show
versuche, einen vorgegeben Namen anzeigen zu lassen, dann klappt das für Excel 2010 aber nicht mehr für 2016. Das Programm läuft wie folgt ab:
-Der Nutzer klickt den Button "Rechnung erstellen"
-Dann erscheint noch eine Sicherheitsabfrage, ob man denn wirklich alles richtig hat
-Anschließend erscheint die Speichern unter Userform von Microsoft.
Dabei soll der Dateiname vordefiniert sein (und angezeigt werden!) und als PDF festgelegt werden.
Hier der vollständige Code

Private Sub Button_Rechnungerstellen_Click()
Dim Eingabewert As String
Dim letztezeile As Integer
Dim wkOR As Worksheet
Dim wkEin As Worksheet
Dim wkKD  As Worksheet
Dim Dateiname As String
Set wkOR = Sheets("Offene Rechnungen")
Set wkEin = Sheets("Eintragungen")
Set wkKD = Sheets("Kundendaten")
Dateiname = Sheets("Eintragungen").Range("I14").Value & " - Rechnung Nr. " & Format(Sheets(" _
Eintragungen").Range("J8").Value, "000000") & _
" vom " & Left(Date, 2) & "." & Mid(Date, 4, 2) & "." & Right(Date, 4)
Eingabewert = MsgBox("Wirklich speichern ? Danach wird die Pdf erstellt und Änderungen sind  _
nicht mehr möglich, da alle Informationen" & _
" zurückgesetzt werden.", vbOKCancel)
letztezeile = wkOR.Cells(Rows.Count, 2).End(xlUp).Row + 1
If Eingabewert = vbCancel Then
Exit Sub
Else
'Datei kann jetzt als PDF gespeichert werden. Zudem wird der Dateiname automatisch vergeben.
If Application.Dialogs(xlDialogSaveAs).Show(Dateiname, Arg2:=57) = False Then
Exit Sub
Else
'Rechnungsnummer wird hochgezählt
Sheets("Eintragungen").Range("J8").Value = _
Seets("Eintragungen").Range("J8").Value + 1
End If
End If
Was muss ich beim Dateinamen ändern, sodass dieser bei jeder Version von Excel läuft? Macht mich irgendwie wahnsinnig, dass es auf 2010 läuft und bei 2016 nichts im Dialogfeld auftaucht.

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

Betreff
Datum
Anwender
Anzeige
AW: Tabellenbereich mit "Speichern unter" speichern
18.01.2019 18:05:25
Herbert
Hallo Marv,
lade doch mal eine Beispieldatei hoch!
Servus
AW: Tabellenbereich mit "Speichern unter" speichern
18.01.2019 18:43:04
Herbert
Abgespeckt ist ok, so lange das Layout mit dem Original übereinstimmt! Ist das so?
AW: Tabellenbereich mit "Speichern unter" speichern
18.01.2019 18:47:38
Herbert
Und wo sind in deiner Beispieldatei die UserFormen?
AW: Tabellenbereich mit "Speichern unter" speichern
19.01.2019 11:12:36
Marv
Die Userform, die für meine Problemstellung relevant ist, ist die vom Windows-System.
Sie wird wie gesagt mit dem Befehl Application.Dialogs(xlDialogSaveAs).Show aufgerufen.
Der Button, um den Code zu starten heißt Rechnung erstellen und ist rechts oben in der Ecke auf dem Tabellenblatt Rechnung. Der Code ist im Tabellenblatt 3 aufzufinden. Wie kommt es denn überhaupt zu solchen komischen Dingen,
dass in einer Version (2010) mein Code reibungslos funktioniert und bei der anderen Version (2016) eben nicht ?
Anzeige
AW: Ich bin raus! owt
19.01.2019 11:13:44
Herbert
,,,

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige