ich habe ein Problem mit VBA-Code und hoffe, Ihr könnt mir helfen.
Ich habe in Workbook_Open() eine Anweisung, die ein Formular aufruft. Das Formular besteht aus einem Textfeld und einem CommandButton. Wenn ich in das Textfeld etwas eintrage, wird ein Dateiname generiert (das geht) und mit dem CommandButton sollte die geöffnete Datei (in der sich auch der Code befindet) unter dem neu generierten Dateinamen abgespeichert werden. Jetzt mein Problem:
Wenn ich die Datei NEU öffne, dann funktioniert das speichern NICHT.
IST die Datei schon geöffnet und ich starte im VBA-Editor das Programm, dann wird die Datei anstandslos abgespeichert.
Was kann das sein?
Ich hoffe, Ihr könnt mir helfen!
Gruß, marco
Hier der Code:
Private Sub cmdNeuenSpplanErstellen_Click()
Dim woche As String
woche = txtNeuerSppln 'Wert der Textbox wird in eine Variable
'übernommen
If (woche = "") Then 'Wenn nichts in die InputBox eingetragen
'wurde bzw. 'Abbrechen' gedrückt wurde
Exit Sub 'Prozedur verlassen
End If
If (CInt(woche) < "10") Then 'Wenn die KW-Zahl einstellig ist, d.h. unter
'10
If ((Left(woche, 1)) <> 0 And (Len(woche) = 1)) Then 'Wenn die erste
'Ziffer keine 0
'ist (Zahlen bis
'10 mit
'führender 0
'schreiben)
woche = "0" & woche 'dann eine '0' vorne dranhängen
End If
End If
dateiname = "F:\DATEN\TABELLEN\SPEISEP\GESP\GRUNDPL\SP_KW_" & woche & ".xls"
'Dateiname generieren
If (Dir$(dateiname) <> "") = True Then
MsgBox ("Datei vorhanden, bitte von vorne beginnen!")
Exit Sub
End If
ActiveWorkbook.SaveAs (dateiname) 'Datei speichern
End Sub