Bestand wel op niet opslaan mbv een commandbutton

  • Onderwerp starter Onderwerp starter wil79
  • Startdatum Startdatum
Status
Niet open voor verdere reacties.

wil79

Gebruiker
Lid geworden
19 apr 2016
Berichten
40
Hallo forummers,

Vast een hele simpele oplossing, maar ik staar me er de hele middag blind op:

Ik wil een gedeelte van een sheet opslaan als pdf, maar ik wil alvorens dit definitief wordt opgeslagen de gebruiker de keuze krijgt of hij/zij dit echt wil.
Bij ja, oplsaan als pdf, bij nee, terugkeren naar de sheet in cel b7

Zelf dacht ik dus aan:
Code:
Private Sub CommandButton1_Click()

Select Case MsgBox("Het eindresultaat wordt opgeslagen. Wil je dit echt ?", vbYesNo + vbInformation)

Case MsgBoxResult.Yes
    Sheets("Data").Activate
    Range("A1:K44").Select

    Dim SaveAsStr As String

    SaveAsStr = ActiveWorkbook.Path & "\" & ActiveSheet.Range("M16").Value

    ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, _
        Filename:=SaveAsStr & ".pdf", _
        OpenAfterPublish:=False
        
    MsgBox "Het bestand is opgeslagen als PDF in MQ_Docs", vbOKOnly

    Range("B7").Select
 
Case MsgBoxResult.No
    Range("B7").Select

End Select
End Sub

...maar ergens zit daar nog iets in wat niet goed gaat...

Wie kan me vertellen wat er niet goed is aan dit stuk VBA??? Ik zie het nl niet meer......
 
Je doet veel te moeilijk en je verteld er niet bij wat er niet goed gaat. Probeer deze eens:
Code:
Private Sub CommandButton1_Click()
    If MsgBox("Het eindresultaat wordt opgeslagen. Wil je dit echt ?", vbYesNo + vbInformation) = vbYes Then
        ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, _
            Filename:=ActiveWorkbook.Path & "\" & ActiveSheet.Range("M16").Value & ".pdf", _
            OpenAfterPublish:=False
            MsgBox "Het bestand is opgeslagen als PDF in MQ_Docs", vbOKOnly
    End If
    Range("B7").Select
End Sub
 
Laatst bewerkt:
Edmoor, dank je wel. Het werkt super.
Ik zat gewoon dus veel te moeilijk te denken.

Stel dat ik em nu als XLSM file wil opslaan, wat moet ik dan veranderen ??

Zelf dacht ik aan
Code:
Private Sub CommandButton2_Click()
    If MsgBox("Het eindresultaat wordt opgeslagen. Wil je dit echt ?", vbYesNo + vbInformation) = vbYes Then
        ActiveSheet.ExportAsFixedFormat Type:=xlTypeExcel, _
            Filename:=ActiveWorkbook.Path & "\" & ActiveSheet.Range("M16").Value & ".xlsm", _
            OpenAfterPublish:=False
            MsgBox "Het bestand is opgeslagen als excel-sheet in ...", vbOKOnly
    End If
    Range("B7").Select
End Sub
Maar dan slaat ie em als pdf of met de filenaam "inhoud van cel M16".xlsm.pdf

??
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan