VBA probleempje in excel

Status
Niet open voor verdere reacties.

Kollie98

Gebruiker
Lid geworden
8 nov 2004
Berichten
19
Hai,
Ik ben net met vba bezig en heb iets in excel gemaakt. Ik kom er alleen niet helemaal uit. Ik krijg het nog niet voor elkaar dat 'excel' eerst een controle doet of het op te slagen bestand al bestaat, wanneer het bestand al bestaat dat mag hij het oude bestand niet overschrijven, maar moet hij het nieuwe bestand opslaan als bestandsnaam etc, plus nr 1, bestaat dat bestand al dan als nr2 etc. Wie kan mij op weg helpen? :o


groetjes
erik

'Opslaan
ActiveWorkbook.SaveAs Filename:= _
"F:\APPS\centric\excel\verzenden\" + Bestandsnaam + "_verzenden_" + Datum, FileFormat:=xlNormal, _
Password:="", WriteResPassword:="", ReadOnlyRecommended:=False, _
CreateBackup:=False
MsgBox "Bestand is opgeslagen in: F:\APPS\centric\excel\verzenden\ als " + Bestandsnaam + "_verzenden" + Datum + ".xls", vbOKOnly

Blad2.Activate

Exit Sub

'Foutafhandeling
Foutafhandeling: MsgBox "Bestand wordt opgeslagen als leeg", vbOKOnly
ActiveWorkbook.SaveAs Filename:= _
"F:\APPS\centric\excel\leeg.xls", FileFormat:=xlNormal, _
Password:="", WriteResPassword:="", ReadOnlyRecommended:=False, _
CreateBackup:=False
 
Kom met de Fileexits niet weg

Dankje, het lukt met niet helemaal. ik snap de function niet. Zou je me op weg kunnen helpen.:o

Function FileExists(FullFileName As String) As Boolean
' returns TRUE if the file exists
FileExists = Len(Dir(FullFileName)) > 0
End Function




Ik heb dit nu toegevoegd:

If FileExists("F:\APPS\centric\excel\" + Bestandsnaam1 + ".xls") Then
Workbooks.Open "F:\APPS\centric\excel\" + Bestandsnaam1 + ".xls "
Else

alvast bedankt
ActiveWorkbook.SaveAs Filename:= _
"F:\APPS\centric\excel\" + Bestandsnaam1, FileFormat:=xlNormal, _
Password:="", WriteResPassword:="", ReadOnlyRecommended:=False, _
CreateBackup:=False
End If
 
Zie dt je gebruik maakt van de FSO. Er-van-uit-gaande dat je de reference hebt toegevoegd (Microsoft Scripting Runtime) is de code bijna goed.

Je mag geen gebruik maken van de +. Deze plus-teken wordt gezien als een gedeelte van de bestandsnaam. Je zult gebruik moeten maken van & Bestandsnaam &
 
Dag Kollie,

Code:
Dim n as integer
Dim p as string

p=mapnaam & "Workbook"
Do While CreateObject("Scripting.FileSystemObject").FileExists(p & IIf(n = 0,"",n) & ".xls")
  n=n+1
Loop
ActiveWorkbook SaveAs Filename:=p & ".xls"

Wel verwijzen naar Microsoft Scripting Runtime.

Gegroet,

Axel.
 
Beter een late melding dan geen melding... ;)

Veel plezier ermee en als er nog iets hapert horen we het wel.
 
Status
Niet open voor verdere reacties.

Nieuwste berichten

Terug
Bovenaan Onderaan