Formel mit Jahr und Datum automatisch ersetzen
#41
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
Top
#42
(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.
Top
#43
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
Top
#44
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
Top
#45
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)
Top
#46
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:
  • WiK
Top
#47
Hallo Uwe,

Danke, funktioniert super.

Danke auch an alle anderen Mitwirkenden.

:100:  :100:  :23:  :23:

Gruß Willy
Top
#48
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
Top
#49
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
.xls   Dummydatei Willy.xls (Größe: 32,5 KB / Downloads: 6)
Top
#50
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
Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 3 Gast/Gäste