Registriert seit: 10.04.2014
Version(en): 2016 + 365
Hi Willy,
(12.12.2015, 16:38) WiK schrieb: Jetzt fehlt nur noch, sollte der neu zuerstellende Ordner schon vorhanden sein, läuft der Code weiter.( z.Z. ist dann MkDir c00 gelb hinterlegt)was soll der Code sonst machen? Das ist doch sinnvoll, daß dann die Dateien in das gewünschte Verzeichnis gespeichert werden.
Abbrechen?
Code:
If Dir(c00) = "" Then MkDir c00 Else Exit Sub End If
Registriert seit: 29.09.2015
Version(en): 2030,5
(12.12.2015, 17:53) Rabe schrieb: Code:
If Dir(c00) = "" Then MkDir c00 Else Exit Sub End If
Das ist falsche code.
Code:
If Dir(c00) = "" Then MkDir c00
diese Zeile ist notwendig und reicht und darf nicht geändert werden.
Registriert seit: 10.04.2014
Version(en): 2016 + 365
Hi,
(12.12.2015, 18:40) snb schrieb: Das ist falsche code.Code:
If Dir(c00) = "" Then MkDir c00
diese Zeile ist notwendig und reicht und darf nicht geändert werden.Solche absoluten Aussagen regen immer zum Widerspruch an!
Warum ist das falscher Code?
Warum darf es nicht verändert werden?
Was ist, wenn das Verzeichnis schon vorhanden ist und nicht benutzt werden soll?
Ich sehe es immer noch so:
Code:
If Dir(c00) = "" Then MkDir c00 Else Msgbox("Verzeichnis " & c00 & " schon vorhanden, bitte ändern!") Exit Sub End If
Registriert seit: 12.04.2014
Version(en): 2007 / 2010
Hallo Zusammen, Sorry ich habe mich falsch ausgedrückt. Ist der neu zuerstellende Verzeichnis schon vorhanden, läuft der Code nicht weiter und MkDir c00 ist gelb hinterlegt. Die Dateien sollen in das gewünschte Verzeichnis gespeichert werden, auch wenn es schon vorhanden ist. Ralf bei den neuen Teilcode kommt der Fehler "Else ohne If" Gruß Willy
Registriert seit: 10.04.2014
Version(en): 97-2019 (32) + 365 (64)
Hallöchen,
bei diesem Konstrukt:
Code:
If Dir(c00) = "" Then MkDir c00 Else Exit Sub End If
Ist der Fehler programmiert.
Wenn in der ersten Zeile nix geändert werden darf, dann darf man auch keine Else und kein End If drunter schieben.
. \\\|/// Hoffe, geholfen zu haben. ( ô ô ) Grüße, André aus G in T ooO-(_)-Ooo (Excel 97-2019+365)
Registriert seit: 17.04.2014
Version(en): MS Office 365(32)
Hallo Willy,If Dir(c00, vbDirectory ) = "" Then MkDir c00 ohne folgendes Else End If . Gruß Uwe
Folgende(r) 1 Nutzer sagt Danke an Kuwer für diesen Beitrag: 1 Nutzer sagt Danke an Kuwer für diesen Beitrag 28
• WiK
Registriert seit: 12.04.2014
Version(en): 2007 / 2010
12.12.2015, 22:08
(Dieser Beitrag wurde zuletzt bearbeitet: 12.12.2015, 22:48 von WiK .)
Hallo Uwe, Danke, funktioniert super. Danke auch an alle anderen Mitwirkenden. :100: :100: :23: :23: Gruß Willy
Registriert seit: 10.04.2014
Version(en): 2016 + 365
14.12.2015, 10:52
(Dieser Beitrag wurde zuletzt bearbeitet: 14.12.2015, 10:52 von Rabe .)
Hi,
(12.12.2015, 22:08) WiK schrieb: Danke, funktioniert super.was mir noch auffällt:
Die Datei hat am Schluß den Namen der zuletzt gespeicherten Datei, enthält aber die Makros und darf deswegen nicht nochmal unter diesem Namen gespeichert werden.
Es fehlt also noch die Speicherung unter dem ursprünglichen Namen, oder das Schließen ohne weiteres Speichern.
Code:
ThisWorkbook.Close savechanges:=False
Registriert seit: 12.04.2014
Version(en): 2007 / 2010
Hallo Ralf, Das kann ich nicht nachvollziehen. Vielleicht liegt es daran, das ich meine Dateien als Datum (20160101) erstellen lasse und Excel dann beendet wird. Habe meine Datein angehangen. Gruß Willy
Angehängte Dateien
Dummydatei Willy.xls (Größe: 32,5 KB / Downloads: 6)
Registriert seit: 29.09.2015
Version(en): 2030,5
16.12.2015, 14:28
(Dieser Beitrag wurde zuletzt bearbeitet: 16.12.2015, 14:29 von snb .)
Man braucht nur Zelle A1:
Code:
Sub M_snb() c00 = "D:\Berichte\Bericht " & Right([A1], 2) If Dir(c00, 16) = "" Then MkDir c00 For j = 0 To 1 ActiveWorkbook.SaveAs c00 & "\" & Format(DateSerial([A1] + j, 1, 1 - j), "yyyymmdd") & ".xlsx", 51 Next ActiveWorkbook.Close 0 End Sub