• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

Opslaan als pdf en melding bestaand bestand

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

a3er

Gebruiker
Lid geworden
1 feb 2010
Berichten
32
Ik heb hier al gezocht en wat pogingen ondernomen, nog niet met gewenste resultaat.

Ik wil in Excel een factuur opslaan als PDF. Wil dan een melding krijgen of het bestand al bestaat.
Heb nu dit als code, maar het bestand wordt toch eerst opgeslagen hoewel ik wel de melding krijg dat het bestand als bestaat.

Graag een oplossing hiervoor.
Sub Opsl_PDF2()

Sheets("Factuur").Select
pdf = "d:\Ms Excel\Naam IE\Facturen" & Sheets("Factuur").Range("J17")
ActiveSheet.ExportAsFixedFormat 0, pdf, , , , , , False

If Dir(pdf) <> "" Then
MsgBox "Een PDF met dezelfde naam is al aanwezig", vbCritical, "PDF bestaat al"
Exit Sub
End If

Sheets("Factuur").Select
pdf = "d:\Ms Excel\Naam IE\Facturen" & Sheets("Factuur").Range("J17")
ActiveSheet.ExportAsFixedFormat 0, pdf, , , , , , False

Application.ScreenUpdating = True
Range("F5").Select


If MsgBox("Wilt u het toch opslaan?", vbYesNo, "Bestand bestaat al") = vbYes Then
'opslaan
End If
End Sub
 
Jij controleert achteraf met Dir of de Pdf bestaat.
En die bestaat omdat je het net hebt aangemaakt.
Doe dit vooraf.
 
Dus:
Code:
Sub Opsl_PDF2()
    pdf = "D:\Ms Excel\Naam IE\Facturen\" & Sheets("Factuur").Range("J17") 
    If Dir(pdf) <> "" Then
        If MsgBox("Een PDF met dezelfde naam is al aanwezig." & vbCrLf & "Alsnog opslaan?", vbQuestion + vbYesNo, "PDF bestaat al") = vbNo Then
            Exit Sub
        End If
    End If
    Sheets("Factuur").ExportAsFixedFormat 0, pdf, , , , , , False
End Sub
 
Laatst bewerkt:
Dus:
Code:
Sub Opsl_PDF2()
    pdf = "D:\Ms Excel\Naam IE\Facturen\" & Sheets("Factuur").Range("J17") 
    If Dir(pdf) <> "" Then
        If MsgBox("Een PDF met dezelfde naam is al aanwezig." & vbCrLf & "Alsnog opslaan?", vbQuestion + vbYesNo, "PDF bestaat al") = vbNo Then
            Exit Sub
        End If
    End If
    Sheets("Factuur").ExportAsFixedFormat 0, pdf, , , , , , False
End Sub

Als ik deze macro draai, overschrijft ie het bestaande bestand ook.
 
Jij controleert achteraf met Dir of de Pdf bestaat.
En die bestaat omdat je het net hebt aangemaakt.
Doe dit vooraf.

Bedankt voor je snelle reactie.
Hoe pas ik de code dan aan. Kom er zelf niet uit.
Alvast bedankt.
 
Als ik deze macro draai, overschrijft ie het bestaande bestand ook.
Dan moet je Nee antwoorden op de vraag om toch op te slaan.
 
Zo ?
Code:
pdf = "D:\Ms Excel\Naam IE\Facturen\" & Sheets("Factuur").Range("J17")[COLOR="#FF0000"] & ".pdf"[/COLOR]

Wat staat er in J17 ?, waarschijnlijk het factuurnummer.
 
Bedankt. In die cel staat inderdaad het factuurnummer
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan