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

Datum uit cel in bestandsnaam, maar ander formaat

Status
Niet open voor verdere reacties.

Fosters

Gebruiker
Lid geworden
26 jul 2010
Berichten
60
Beste forumgebruikers,

Middels een button met macro slaan gebruikers een werkblad op onder een bespaald formaat (registratienummer_datum). Beide waarden komen uit een cel. Hiervoor heb ik de volgende code

Code:
Sub Macro1()

' Controleer of bestand bestaat
If Dir("H:\Wabo\Proceskaarten\testmap\" & Range("H5") & Range("H13") & "_" & ".xls") = Range("H5") & ".xls" Then

' MsgBox ("File komt voor") ' Eenvoudige save, overschrijf bestande bestand
ActiveWorkbook.Save

Else
'MsgBox ("File niet gevonden") ' Maak nieuwe bestand aan
ActiveWorkbook.SaveAs Filename:="H:\Wabo\Proceskaarten\testmap\" & Range("H5") & "_" & Range("H13") & ".xls" _
, FileFormat:=xlNormal, Password:="", WriteResPassword:="", _
ReadOnlyRecommended:=True, CreateBackup:=False

End If

End Sub

Het resultaat hierbij is een bestandsnaam als VB126W12_30-09-2010.xls

Graag zou ik deze datum in een ander formaat zien, bijvoorbeeld: VB126W12_2010.09.30
Hoe wijzig ik het formaat datum in mijn bestandsnaam zonder de weergave van de cel te wijzigen?
 
Beste Fosters ;)

Probeer deze eens.

Code:
Sub Macro1()

' Controleer of bestand bestaat
If Dir("H:\Wabo\Proceskaarten\testmap\" & [H5] & [H13].NumberFormat = "yyyy-mm-jj" & "_" & ".xls") = Range("H5") & ".xls" Then

' MsgBox ("File komt voor") ' Eenvoudige save, overschrijf bestande bestand
ActiveWorkbook.Save

Else
'MsgBox ("File niet gevonden") ' Maak nieuwe bestand aan
ActiveWorkbook.SaveAs Filename:="H:\Wabo\Proceskaarten\testmap\" & [H5] & "_" & [H13].NumberFormat = "yyyy-mm-jj"  & ".xls" _
, FileFormat:=xlNormal, Password:="", WriteResPassword:="", _
ReadOnlyRecommended:=True, CreateBackup:=False

End If

End Sub

Groetjes Danny. :thumb:
 
Er is een klein foutje ingeslopen ;)
Code:
........[H13].NumberFormat = "yyyy-mm-jj"........
zal dit moeten zijn [H13].NumberFormat = "yyyy-mm-dd"
 
Beste Trucker10 ;)

Bedankt voor de opmerking :thumb:

Code:
[H13].NumberFormat = "yyyy-mm-dd"

Groetjes Danny. :thumb:
 
Bedankt voor jullie suggesties!

Als ik mijn code vervang door die van jullie dan krijg ik de volgende foutmelding bij het uitvoeren:

Fout 13 tijdens uitvoering:
Typen komen niet met elkaar overeen.

Dit is de code die ik nu heb

Code:
Sub Macro1()

' Controleer of bestand bestaat
If Dir("H:\Wabo\Proceskaarten\testmap\" & [H5] & [H13].NumberFormat = "yyyy-mm-dd" & "_" & ".xls") = Range("H5") & ".xls" Then

' MsgBox ("File komt voor") ' Eenvoudige save, overschrijf bestande bestand
ActiveWorkbook.Save

Else
'MsgBox ("File niet gevonden") ' Maak nieuwe bestand aan
ActiveWorkbook.SaveAs Filename:="H:\Wabo\Proceskaarten\testmap\" & [H5] & "_" & [H13].NumberFormat = "yyyy-mm-dd" & ".xls" _
, FileFormat:=xlNormal, Password:="", WriteResPassword:="", _
ReadOnlyRecommended:=True, CreateBackup:=False

End If

End Sub

Volgens mij zit de fout in de regel met If Dir?
 
Beste Fosters ;)

Staat er boven aan het volgende:

Code:
Option Explicit

Doe deze dan weg en probeer nog eens.

Groetjes Danny. :thumb:
 
Nee, er staat niks boven.
Ik heb de volledige code gegeven. Kan het zelf slecht analyseren dus weet niet waar ik het probleem moet zoeken. :confused:
 
Ben even na gaan denken en ik heb eventueel ook vrede met de huidige datumweergave. Maar ik zou ook graag een andere cel in de bestandsnaam willen. Dit is echter een cel die van waarde wijzigd.

Het gaat om een cel waar statusinformatie in staat (ontvangen, in behandeling, geleverd)

Zodra er een status wijzigd heb ik op dit moment meerdere bestanden in mijn map:
VB126W12_30-09-2010_ontvangen.xls
VB126W12_30-09-2010_in behandeling.xls
VB126W12_30-09-2010_geleverd.xls


Is er iets op te verzinnen dat het vorige bestand dan gewist wordt? Hier heb ik namelijk niks meer aan. Uiteindelijk wil ik slechts 1 bestand per order in de map.

thanks :)
 
Je eerste verzoek.

Code:
Sub Macro1()

' Controleer of bestand bestaat
If Dir("H:\Wabo\Proceskaarten\testmap\" & [H5] & Format([H13], "yyyy.mm.dd") & "_" & ".xls") = Range("H5") & ".xls" Then

' MsgBox ("File komt voor") ' Eenvoudige save, overschrijf bestande bestand
ActiveWorkbook.Save

Else
'MsgBox ("File niet gevonden") ' Maak nieuwe bestand aan
ActiveWorkbook.SaveAs Filename:="H:\Wabo\Proceskaarten\testmap\" & [H5] & "_" & Format([H13], "yyyy.mm.dd") & ".xls" _
, FileFormat:=xlNormal, Password:="", WriteResPassword:="", _
ReadOnlyRecommended:=True, CreateBackup:=False

End If

End Sub
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan