• 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.

Macro aanpassen zodat deze niet zelfde bestandsnaam automatisch overschrijft

Status
Niet open voor verdere reacties.

ernhem

Gebruiker
Lid geworden
28 dec 2012
Berichten
29
Hallo , de volgende macro werkt perfect , nu zou ik alleen willen dat als hij een bestand wegschrijft eerst controleert of deze bestandsnaam al voorkomt en dan vraagt overschrijven ?.


Code:
Sub Opslaan()
    Range("A1:L51").Select
    
    Selection.ExportAsFixedFormat Type:=xlTypePDF, Filename:="C:\Teun\Facturen\" & Sheets("Factuur").Range("X17").Value & ".pdf"
        
    Range("A1").Select

MsgBox "uw document is opgeslagen", vbInformation

Mvg.Ben
 
Laatst bewerkt door een moderator:
Probeer het eens zo:

Code:
Sub Opslaan()
Dim Bestand As String

Range("A1:L51").Select
Bestand = "C:\Teun\Facturen\" & Sheets("Factuur").Range("X17").Value & ".pdf"

If Dir(Bestand) <> "" Then
    If MsgBox("Bestand bestaat al. Overschrijven?", vbOKCancel) = vbOK Then
        Selection.ExportAsFixedFormat Type:=xlTypePDF, Filename:=Bestand
        Range("A1").Select
        MsgBox "uw document is opgeslagen", vbInformation
    End If
End If
End Sub
 
Edmoor alvast bedankt voor je reaktie

Hoi , hij vraagt nu wel of ik hem wil overschrijven maar als de bestandsnaam niet voorkomt word deze ook niet weggeschreven.

Gr. Ben
 
Laatst bewerkt:
Wellicht dat het selecteren niet op de juiste regel staat.

Code:
Sub Opslaan()
Dim Bestand As String

Bestand = "C:\Teun\Facturen\" & Sheets("Factuur").Range("X17").Value & ".pdf"

If Dir(Bestand) <> "" Then
    If MsgBox("Bestand bestaat al. Overschrijven?", vbOKCancel) = vbOK Then
        Range("A1:L51").Select
        Selection.ExportAsFixedFormat Type:=xlTypePDF, Filename:=Bestand
        Range("A1").Select
        MsgBox "uw document is opgeslagen", vbInformation
    End If
End If
End Sub
 
Hallo Edmoor

Wederom bedankt voor je snelle reactie

Het lukt me nog steeds niet ook niet nu het selecteren op een andere regel staat.

Gr. Ben
 
Ik zal er morgen nog eens naar kijken, moet nu weg.
Misschien dat iemand anders me voor is maar dat zie ik dan wel.
 
Code:
Sub Opslaan()
Dim Bestand As String
With Sheets("Factuur")
    Bestand = "C:\Teun\Facturen\" & .Range("X17").Value & ".pdf"
    If Dir(Bestand, vbDirectory) = vbNullString Then
        .Range("A1:L51").ExportAsFixedFormat Type:=xlTypePDF, Filename:=Bestand
        MsgBox "Uw document is opgeslagen", vbInformation
    Else
        If MsgBox("Bestand bestaat al. Overschrijven?", vbOKCancel) = vbOK Then
            .Range("A1:L51").ExportAsFixedFormat Type:=xlTypePDF, Filename:=Bestand
            MsgBox "Uw document is gewijzigd", vbInformation
        End If
    End If
    .Range("A1").Select
End With
End Sub
 
Bedankt

Hallo Rudi , het werkt nu perfect .
Bedankt

Gr. Ben
 
Rudi to the rescue.
Nette oplossing :thumb:
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan