Overschrijf melding krijgen

Status
Niet open voor verdere reacties.

colintippens

Gebruiker
Lid geworden
13 apr 2015
Berichten
19
Beste allen,

Mijn vraag:
Ik wil een macro die controleert of een factuur al bestaat en mij dan de keuze geeft de uitdraai te cancellen.

nu heb ik dit:
Code:
Sub Make_PDF()
' Create and save .pdf
Dim pdfName As String, FolderName As String, FullName As String
pdfName = Range("I17").Text
FullName = "pad naar folder" & pdfName & ".pdf"

If Dir("pad naar folder" & pdfName & ".pdf") <> "" Then
    MsgBox "Factuur bestaat al!"
End If

ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=FullName _
, Quality:=xlQualityMedium, IncludeDocProperties:=False, _
IgnorePrintAreas:=False, OpenAfterPublish:=True
End Sub

maar nu kan ik het nog niet cancellen. Als ik op OK druk dan gaat de uitdraai vrolijk door waardoor een bestaande factuur wordt overschreven.
Dit wil ik voorkomen.

Alvast hartelijk bedankt voor jullie hulp.

Mvg
Colin
 
Maak dit van die Msgbox regel:
Code:
If MsgBox("Factuur bestaat al!", vbOKCancel + vbCritical) = vbCancel Then Exit Sub

NB.:
Vergeet niet een \ te gebruiken tussen "pad naar folder" en pdfName.
Gebruik tevens:
If Dir(Fullname) <> ""
Je declareert die variabele tenslotte niet voor niets
 
Laatst bewerkt:
Ik krijg een error melding op deze lijn

If Dir("OS X:Users:ik:facturen:" & pdfName & ".pdf") <> "" Then

Code:
Sub Make_PDF()
' Create and save .pdf
Dim pdfName As String, FolderName As String, FullName As String
pdfName = Range("I17").Text
FullName = "OS X:Users:ik:facturen:" & pdfName & ".pdf"

[B]If Dir("OS X:Users:ik:facturen:" & pdfName & ".pdf") <> "" Then[/B]
    If MsgBox("Factuur bestaat al!", vbOKCancel + vbCritical) = vbCancel Then Exit Sub
End If

ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=FullName _
, Quality:=xlQualityMedium, IncludeDocProperties:=False, _
IgnorePrintAreas:=False, OpenAfterPublish:=True
End Sub

De pdf naam word gekozen door een cel in de sheet. ik kan dus niet het exacte pad gebruiken, dit zal altijd een variable zijn.
 
Laatst bewerkt:
Ik gebruik geen OSX dus daar kan ik niets van zeggen. Meldt van tevoren dan het om OSX gaat en niet om Windows.
Deze gebruikt o.a. een andere padnotatie en heeft beperkte ondersteuning voor VBA.
 
Laatst bewerkt:
Ook ik heb geen MAC, maar vond de volgende link (met code van Ron de Bruin): deze

Met de functie die Ron daar toont (=FileOrFolderExistsOnMac) kun je checken of een bestand bestaat.
Je heb er Excel 2011 of hoger voor nodig, staat er bij.

IMHO een groot voordeel ervan is dat je niet vastzit aan de OS X:Users:ik:facturen: notatie voor een mapnaam, maar je mag ook de notatie /Users/ik/facturen gebruiken.

Niet mijn programmering, ik heb geen MAC etc., maar je kunt het proberen of het (voor jou) werkt.

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