collapse

* Benutzer Info

 
 
Willkommen Gast. Bitte einloggen oder registrieren. Haben Sie Ihre Aktivierungs E-Mail übersehen?

* Wer ist Online

  • Punkt Gäste: 54
  • Punkt Versteckte: 0
  • Punkt Mitglieder: 0

Es sind keine Mitglieder online.

* Forenstatistik

  • stats Mitglieder insgesamt: 13913
  • stats Beiträge insgesamt: 65793
  • stats Themen insgesamt: 8879
  • stats Kategorien insgesamt: 5
  • stats Boards insgesamt: 17
  • stats Am meisten online: 415

Autor Thema: Verzeichnis anlegen  (Gelesen 501 mal)

Offline Carl

  • Access-Profi
  • **
  • Beiträge: 261
Verzeichnis anlegen
« am: Oktober 29, 2017, 10:21:23 »
Ich habe mal ne Frage,

ich lege derzeit mit MkDir ein Verzeichnis an und kopiere da eine Datei hinein. So wie hier:


Sub VerzeichnisAnlegen()
    On Error Resume Next
     MkDir DLookup("Hilfstexte", "tblHilfstexte", "ID=1") & Me!WOOrdnername
'wobei WOOrdnername ein Feld in der DB ist.
FileCopy "S:\A\!Manual.docx", "S:\A\" & Me!WOOrdnername & "\Manual.docx"
DoCmd.RunCommand acCmdSaveRecord
DoCmd.Close
 End Sub


Wie kann ich bei MkDir und FileCopy verhindern, dass das Verzeichnis erneut angelegt wird oder der file überschrieben wird? Statt dessen soll eine Fehlermeldung kommen, dass das Verzeichnis/Datei schon existiert.

Carl
 

Offline MzKlMu

  • Moderator
  • Access-Oberguru
  • *****
  • Beiträge: 7202
Re: Verzeichnis anlegen
« Antwort #1 am: Oktober 29, 2017, 10:32:35 »
Hallo,
so sollte das klappen:
Sub VerzeichnisAnlegen()
    On Error Resume Next
If Dir("S:\A\" & Me!WOOrdnername) > "" Then
     MsgBox "Gibt es schon"
     Exit Sub
End If
     MkDir DLookup("Hilfstexte", "tblHilfstexte", "ID=1") & Me!WOOrdnername
'wobei WOOrdnername ein Feld in der DB ist.
FileCopy "S:\A\!Manual.docx", "S:\A\" & Me!WOOrdnername & "\Manual.docx"
DoCmd.RunCommand acCmdSaveRecord
DoCmd.Close
End Sub

PS:
Mit 80 Beiträgen im Forum, solltest Du eigentlich gelernt haben, dass man für Codedarstellungen die Codetags des Forums benutzt.
Gruß
Klaus
 
Folgende Mitglieder bedankten sich: Carl

Offline ebs17

  • Access-Meister
  • ***
  • Beiträge: 881
Re: Verzeichnis anlegen
« Antwort #2 am: Oktober 29, 2017, 12:37:15 »
Zitat
Statt dessen soll eine Fehlermeldung kommen, dass das Verzeichnis/Datei schon existiert.
Was soll ein User mit einer Meldung anfangen, wenn der Code Mist macht? Eine Meldung "Du bist gegen die Wand gefahren" wäre für Auto und eigene Gesundheit nicht befriedigend. Besser ist doch, dass man bei zu erwartenden Zuständen prüft und in Auswertung der Prüfung reagiert.

If Dir("S:\A\" & Me!WOOrdnername, vbDirectory) > "" Then ' Verzeichnis existiert
If Dir("S:\A\" & Me!Filename) > "" Then ' Datei existiert

DoCmd.RunCommand acCmdSaveRecordWelchen besonderen Sinn macht diese Anweisung? Bei einem gebundenen Formular wird spätestens mit dem Schließen des Formulars der aktuelle Datensatz automatisch gespeichert. Ein ungebundenes Formular hat keine Datensätze, die zu speichern wären.
Mit freundlichem Glück Auf!

Eberhard
 
Folgende Mitglieder bedankten sich: Carl