Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Formel mit Jahr und Datum automatisch ersetzen
#41
Hi Willy,

(12.12.2015, 15: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
Antworten Top
#42
(12.12.2015, 16: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.
Antworten Top
#43
Hi,

(12.12.2015, 17: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
Antworten 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
Antworten 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)
Antworten 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
Antworten Top
#47
Hallo Uwe,

Danke, funktioniert super.

Danke auch an alle anderen Mitwirkenden.

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

Gruß Willy
Antworten Top
#48
Hi,

(12.12.2015, 21: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
Antworten 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)
Antworten 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
Antworten Top


Gehe zu:


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