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

controle bestandsnaam

Status
Niet open voor verdere reacties.

knabbie

Gebruiker
Lid geworden
20 feb 2009
Berichten
45
geachte forummers


Is het mogelijk om via VBA bij het openen van een excel bestand de bestandsnaam te controleren en zonodig aan te passen.

Bv een bestand is opgeslagen met de naam piet.xls

het bestand hoort altijd klaas te zijn

maw bij het openen van het bestand moet de naam veranderd worden in klaas en het bestand piet overschrijven.


Is dit uberhaupt mogelijk of is dit bijvoorbaat kansloos
 
Bv een bestand is opgeslagen met de naam piet.xls

het bestand hoort altijd klaas te zijn

maw bij het openen van het bestand moet de naam veranderd worden in klaas en het bestand piet overschrijven.

En hoe gaat het bestandje weten dat het aan Klaas toebehoorde ? en waarom een werkend bestandje bij het openen overschrijven , bij het afsluiten kan je het onder Klaas opslaan . In dit forum staan topics wie heeft het bestandje geopend of gewijzigd :thumb: dit kan je in een verborgen tabblad opslaan .Is dit niet iets voor jou ?
 
Trucker

Bedankt voor je reactie

waar het mij omgaat het bestand is origineel opgeslagen met de naam klaas en moet ook altijd klaas blijven heten, het originele bestand moet nl regelmatig overschreven worden met nieuwe gegevens

sommige collegae vinden het handig om het bestand ingevuld retour te sturen met een andere naam en dat bij 50 files word wat lastig om telkens de naam weer aan te moeten passen

ik ga straks even kijken in de zoekmachien met de door jou gegeven zoekcriteria.
 
Knabbie,

Plaats dit stukje code in de VBE onder ThisWorkBook.

Private Sub Workbook_Open()
Naam = ActiveWorkbook.Name
If Naam <> "Klaas.xls" Then ActiveWorkbook.SaveAs ThisWorkbook.Path & "\Klaas.xls"
Kill ThisWorkbook.Path & "\" & Naam
End Sub

Wanneer het document opent wordt de naam gecontroleerd, wijkt deze af dan wordt hij met de juiste naam opgeslagen (Klaas.xls) en de oude wordt verwijderd.

Grtz
 
Laatst bewerkt:
Superzeeuw

u doet Uw naam eer aan de

Code:
Private Sub Workbook_Open()
Naam = ActiveWorkbook.Name
If Naam <> "Klaas.xls" Then ActiveWorkbook.SaveAs ThisWorkbook.Path & "\Klaas.xls"
On Error Resume Next
Kill ThisWorkbook.Path & "\" & Naam
End Sub

werkt met een kleine aanpssing perfect en was precies wat ik zocht.

de aanpassing is On Error Resume Next, en die heb ik ertussen gezet voor het geval het bestand geopend word met de originele bestandsnaam.

mijn dank is groot
 
Laatst bewerkt:
Knabbie,

Correct gezien :thumb:, ik was ervan uit gegeaan dat het bestand altijd met een verkeerde naam aangeboden zou worden.

Private Sub Workbook_Open()
Naam = ActiveWorkbook.Name
If Naam = "Klaas.xls" Then Exit Sub
ActiveWorkbook.SaveAs ThisWorkbook.Path & "\Klaas.xls"
Kill ThisWorkbook.Path & "\" & Naam
End Sub

Deze code kan ook, als de naam klopt verlaat je de sub anders ga je door.

Grtz
 
Heb de code ondertussen aangepast omdat elk van de 50 bestanden uiterrad een andere bestandsnaam hebben, dat de naam gecontroleerd word aan de had van een celinhoud

Code:
Private Sub Workbook_Open()
Naam = ActiveWorkbook.Name
Dim nw As String
nw = Sheets("Blad3").Range("a1")
If Naam <> nw Then ActiveWorkbook.SaveAs ThisWorkbook.Path & "\" & nw
On Error Resume Next
Kill ThisWorkbook.Path & "\" & Naam
End Sub

het lijkt zo eenvoudig maar was al weken aan het uitproberen en weer uitproberen maar kwam er nog steeds niet uit.

Nogmaals superzeeuw U is geweldig
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan