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

Een file verwijderen uit een map op basis van celinhoud

Status
Niet open voor verdere reacties.

Driesumdre

Gebruiker
Lid geworden
19 mei 2011
Berichten
29
Goedemorgen Excelvrienden.

Ik heb een formulier gemaakt waarin op diverse punten een bestandje wordt opgeslagen (het bestand moet langs een aantal personen welke allen een actie moeten uitvoeren).
Deze bestandsnaam wordt vervolgens in een cel geplaatst.
Aan het eind van het traject wil ik een PDF maken (dat is geen probleem, en lukt)
Daarna kunnen de gecreëerde bestanden weggegooid worden.

Ik heb daarvoor de volgende code:
Code:
Sub DeleteFile1()

Dim FilePath As String
Dim FileName As String
Dim FileExtStr As String

    On Error Resume Next

    FilePath = "J:Algemeen\Inkoop\Mutatie-Artikelbestand\"
    FileName = Sheets("Mutatieformulier").Range("A71").Value
    FileExtStr = ".xlsm": FileFormatNum = 52

    Kill FilePath & FileName & FileExtStr
    On Error GoTo 0

End Sub

Dit werkt echter niet en ik zie het probleem eigenlijk niet.
Kan iemand mij helpen?

Alvast bedankt, André
 
Achter de J: ontbeekt een backslash.
Waarom niet 1 regel VBA ?
 
En het te verwijderen bestand zal ook gesloten moeten zijn, maar daar zal waarschijnlijk wel rekening mee gehouden zijn.
 
En door de "On Error Resume Next" zie je dus niet wat en waar het fout gaat. Daarnaast heeft die FileFormatNum = 52 geen enkele zin.
 
Inderdaad Ed,
veel mensen gebruiken die opdracht onnodig, zo heb ik de indruk.
 
Goedemiddag heren,

Hartelijk dank voor de reacties.
Snb --> Dat was het probleem. soms zie je het gewoon even niet meer.
Zapatr --> Inderdaad, daar was rekening mee gehouden.
Edmoor--> Ik ben nog geen gevorderde BVA-er, vaak kijk ik even op de site van Ron de Bruin MVP, waarmee ik een heel eind kom.
De On error resume next was onderdeel van de basis welke ik gebruikte. Hij zal er wel over nagedacht hebben verwacht ik zo. FileFormatNum = 52 heb ik verwijderd en dat functioneert prima zonder inderdaad.

Heren, bedankt weer. Het bleek makkelijker dan ik van te voren had verwacht... Weer een tevreden klant.
 
Die on error resume next zorgt ervoor dat alles wat er tussen die regel en de regel on error goto 0 fout gaat, niet wordt afgevangen. De procedure gaat dus gewoon door. Dat lijkt handig, maar is het zoals je nu gezien hebt niet. Zonder die regel had je namelijk aan de foutmelding die dan verschijnt wel kunnen zien dat de oorzaak lag in het feit dat die \ er niet was, waar snb je op wees.

Er kunnen goede redenen zijn om die opdracht te gebruiken maar dan moet je wel zelf voor de foutafhandeling zorgen. Als beginnend VBA-er wist je dat niet, vandaar even deze extra uitleg :)
 
Hallo edmoor,

Bedankt voor de extra uitleg, weer wat geleerd. Top!

Groetjes, André
 
Nog iets om te leren: er helpen hier niet alleen maar heren.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan