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

VBA opslaan met de naam die het al heeft

Status
Niet open voor verdere reacties.

vrouw

Terugkerende gebruiker
Lid geworden
27 mrt 2010
Berichten
1.525
Ik wil een bestand dat ik open opslaan als een .csv file in een (bestaande) map met de naam die het al heeft.
Ik pas dus de ActiveWorkbook.Saveas aan naar ActiveWorkbook.Save dat wil niet lukken.

Dit is wat ik nu heb :o
Code:
Sub tst()
Application.DisplayAlerts = False
    ActiveWorkbook.Save Filename:="C:\boxter\", _
        FileFormat:=xlCSV, CreateBackup:=False
End Sub
 
Is zoiets de bedoeling?
Code:
Sub vrouw()
Application.DisplayAlerts = False
vrouwnaam = "naam die het al heeft"
    ActiveWorkbook.SaveAs Filename:="C:\boxter\" & vrouwnaam & ".csv", _
        FileFormat:=xlCSV, CreateBackup:=False
End Sub
of
Code:
Sub vrouw()
Application.DisplayAlerts = False
 vrouwnaam = Left(ActiveWorkbook.Name, Len(ActiveWorkbook.Name) - 5)
    ActiveWorkbook.SaveAs Filename:="C:\boxter\" & vrouwnaam & ".csv", _
        FileFormat:=xlCSV, CreateBackup:=False
End Sub
 
Bedankt voor het meedenken alvast maar dit is niet wat ik zoek.

Beide gevallen word het toch weer in een andere bestandsnaam opgeslagen. Ik wil graag dat het gewoon word opgeslagen met de naam die het op dat moment heeft.
Dus alleen opslaan, en niet opslaan als. Maar dan wel in de aangegeven map.

Kan dat?
 
Als dat document al een .csv extensie heeft, hoe wil je dan die VBA routine er in opslaan?
 
Die sla ik op in de Personal file, dus niet in het bestand zelf.
 
Dan is dit toch al genoeg?
Code:
    ActiveWorkbook.Save
 
Klopt maar ik krijg de code niet voor elkaar met de verwijzing naar de map met behoud van de naam.
 
Ik heb het inmiddels gevonden.
Bedankt allen voor het mee denken.

Code:
ActiveWorkbook.SaveAs Filename:= _
      "C:\boxter\" & Left(ActiveWorkbook.Name, InStr(ActiveWorkbook.Name, ".") - 1) & ".csv", _
       FileFormat:=xlCSV, Local:=True
 
Kan ook:
Code:
split(thisworkbook.name,".")(0)
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan