Excel Dokument als PDF speichern
Ich habe mir ein kleines Rechnungsprogramm gebastelt und würde das ganze am Ende als PDF automatisch abspeichern lassen.
Leider komme ich mit den Codes die ich gefunden habe nicht wirklich zurecht.
hier wäre so ein Code den ich immer wieder gefunden habe. Allerdings kommt bei mir bei ActiveSheet ein Fehler dass es nicht deklariert wurde und xlTypePDF genauso.
Was muss ich hier deklarieren dass das ganze klappt.
Am Ende soll eine Msgbox kommen bei der der man mit Ja Speichern den Befehl ausführen kann.
Falls jmd den ganzen Code vom Programm braucht um zu sehen wie das Programm funktioniert hier mal alles:
Leider komme ich mit den Codes die ich gefunden habe nicht wirklich zurecht.
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:="C:\TEMP\Testdatei.pdf" _
, Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas _
:=False, OpenAfterPublish:=True
Was muss ich hier deklarieren dass das ganze klappt.
Am Ende soll eine Msgbox kommen bei der der man mit Ja Speichern den Befehl ausführen kann.
Falls jmd den ganzen Code vom Programm braucht um zu sehen wie das Programm funktioniert hier mal alles:
Public Class Rechnung
Dim Projekt As Object
Dim Jahrx, Tagx, Monatx, Rechnungsnummer As String
Dim x0 As Integer = 0
Dim x1 As Integer = 1
Private Sub Rechnung_Button_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Rechnung_Button.Click
If Betrag1_TextBox.Text = "" Then Betrag1_TextBox.Text = 0
If Betrag2_TextBox.Text = "" Then Betrag2_TextBox.Text = 0
If Betrag3_TextBox.Text = "" Then Betrag3_TextBox.Text = 0
If Betrag4_TextBox.Text = "" Then Betrag4_TextBox.Text = 0
If Betrag5_TextBox.Text = "" Then Betrag5_TextBox.Text = 0
If Betrag6_TextBox.Text = "" Then Betrag6_TextBox.Text = 0
'Ergebnisberechnung
Gesamtbetrag_Ergebnis_Label.Text = Betrag1_TextBox.Text + +Betrag2_TextBox.Text + +Betrag3_TextBox.Text + +Betrag4_TextBox.Text + +Betrag5_TextBox.Text + +Betrag6_TextBox.Text
'Excel aus Dateivorlage öffnen
Projekt = CreateObject("excel.application")
Projekt.Application.Workbooks.Open("C:\Users\t.mueller\Downloads\Rechnungsvorlage")
Projekt.Visible = True
'Excel Zelle füllen
Projekt.range("I16").value = Datum_TextBox.Text
Projekt.range("B8").value = Vorname_TextBox.Text & " " & Nachname_TextBox.Text
Projekt.range("B9").value = Straße_TextBox.Text
Projekt.range("B10").value = PLZ_TextBox.Text & " " & Ort_TextBox.Text
Projekt.range("B23").value = Eingabe1_TextBox.Text
Projekt.range("H23").value = Betrag1_TextBox.Text
Projekt.range("B24").value = Eingabe2_TextBox.Text
Projekt.range("H24").value = Betrag2_TextBox.Text
Projekt.range("B25").value = Eingabe3_TextBox.Text
Projekt.range("H25").value = Betrag3_TextBox.Text
Projekt.range("B26").value = Eingabe4_TextBox.Text
Projekt.range("H26").value = Betrag4_TextBox.Text
Projekt.range("B27").value = Eingabe5_TextBox.Text
Projekt.range("H27").value = Betrag5_TextBox.Text
Projekt.range("B28").value = Eingabe6_TextBox.Text
Projekt.range("H28").value = Betrag6_TextBox.Text
Projekt.range("H29").value = Gesamtbetrag_Ergebnis_Label.Text
'Jahr festlegen
Jahrx = System.DateTime.Now.Year.ToString
'Tag und 01 festlegen
If System.DateTime.Now.Day.ToString < 10 Then
Tagx = "0" & System.DateTime.Now.Day.ToString
Else
Tagx = System.DateTime.Now.Day.ToString
End If
'Monat festlegen
If System.DateTime.Now.Month.ToString < 10 Then
Monatx = "0" & System.DateTime.Now.Month.ToString
Else
Monatx = System.DateTime.Now.Month.ToString
End If
Do While My.Computer.FileSystem.FileExists("C:\Users\t.mueller\Downloads\Rechnungsprogramm\" & "RE" & Jahrx & "-" & Tagx & Monatx & x0 & x1 & ".txt")
x1 = x1 + +1
Loop
'Rechnungsnummer richtig schreiben wenn x1 > 9
If x1 < 9 Then
Rechnungsnummer = "RE" & Jahrx & "-" & Tagx & Monatx & x0 & x1
Else
Rechnungsnummer = "RE" & Jahrx & "-" & Tagx & Monatx & x1
End If
'In Zelle schreiben
Projekt.range("B18").value = Rechnungsnummer
End Sub
End Class
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 277183
Url: https://administrator.de/forum/excel-dokument-als-pdf-speichern-277183.html
Ausgedruckt am: 23.12.2024 um 18:12 Uhr
2 Kommentare
Neuester Kommentar
Das was du da machst ist kein VBA sondern VB.NET, da hat das ganze anders auszusehen ...
Workbook referenzieren
und dann
grexit
Workbook referenzieren
Dim wb = Projekt.Application.Workbooks.Open("C:\Users\t.mueller\Downloads\Rechnungsvorlage")
If MsgBox("Wollen sie die Rechnung als PDF speichern?", vbYesNo) = vbYes then
wb.ActiveSheet.ExportAsFixedFormat(0, "C:\TEMP\Testdatei.pdf")
End if