Access-o-Mania

Access-Forum (Deutsch/German) => Access Programmierung => Thema gestartet von: Mollerio33 am Mai 16, 2019, 18:57:12

Titel: Ordner aus Access erstellen
Beitrag von: Mollerio33 am Mai 16, 2019, 18:57:12
Guten Abend,

ich habe da eine Frage.

Ich habe eine Tabelle mit Kundenummer, Beschreibung, Datum.
Auf Knopfdruck in einem Formular soll aus der jeweiligen Daten Zeile, ein zip Ordner in einem Verzeichnen auf dem Rechner entstehen, welche den Dateipfad aus diesen drei feldern hat.
Gleichzeitig soll der Pfad dieses Ordners in ein weiteres Feld "DokumentenLink" eingetragen werden.

Kann mir da jemand helfen?
Danke


Titel: Re: Ordner aus Access erstellen
Beitrag von: Mollerio33 am Mai 16, 2019, 22:20:23
Hallo,

ich habe nun eine Lösung gefunden. Leider bezieht er sich immer auf den ersten Datensatz und nicht auf den welche auswähle und dann den Button drücke. Gibt es denn hierzu eine Lösung

If Dir("Z:\Dokumente\Kunde\" & Me!KundeNr & " " & Me!Beschreibung & " " & Me!Datum, vbDirectory) = "" Then
MkDir "Z:\Dokumente\Kunde\" & Me!KundeNr & " " & Me!Beschreibung & " " & Me!Datum
End If

Außerdem habe ich das Problem mit dem schreiben des Links in die Tabelle noch nicht gelöst.
Ideen?

Danke schon mal
Titel: Re: Ordner aus Access erstellen
Beitrag von: MzKlMu am Mai 16, 2019, 23:46:38
Hallo,
das wichtigste hast Du unterschlagen.
Wie wählst Du den Datensatz aus ?
Außerdem, zeigt man Code immer komplett (mit Codetags wie ich unten) und keine unvollständigen Schnippsel.
Das schreiben in die Tabelle ist dann kein Problem, Du musst den Ordner nur dem Formularfeld zuweisen.
If Dir("Z:\Dokumente\Kunde\" & Me!KundeNr & " " & Me!Beschreibung & " " & Me!Datum, vbDirectory) = "" Then
MkDir "Z:\Dokumente\Kunde\" & Me!KundeNr & " " & Me!Beschreibung & " " & Me!Datum
Me.Feldname =  "Z:\Dokumente\Kunde\" & Me!KundeNr & " " & Me!Beschreibung & " " & Me!Datum
End If


PS:
Ich würde Dir dringend raten, auf Leerzeichen in Ordenernamen zu verzichten. Da würde ich den Unterstrich (_) verwenden. Auch das Datum solltest Du so nicht verwenden. Formatiere das um auf den Bindestrich statt des Punktes. Es gab Zeiten, da waren Punkte und Leerzeichen in Datei und Ordnernamen nicht erlaubt. Obwohl es zwischenzeitlich geht, würde ich das nicht machen.
Titel: Re: Ordner aus Access erstellen
Beitrag von: Mollerio33 am Mai 17, 2019, 09:25:12
Guten Morgen,

danke. Also das mit der Link Funktion klappt super und ich habe die Leerzeichen ersetzt mit einem unterstrich.
Ich bin leider noch sehr unerfahren in der VBA Programmierung, deswegen die Frage wie steuere ich das an?

Auch habe ich das Problem das mir das Datum in der Tabelle so angegeben wir 17-05-2019. Beim Ordner erstellen kommt dann aber 17.05.2019 raus. Wie kann man das korrigieren?

Private Sub Ordner_erstellen_Click()
Dim Beschreibung As String
If Dir("Z:\Dokumente\Kunde\" & Me!KundeNr & "_" & Me!Beschreibung & "_" & Me!Datum, vbDirectory) = "" Then
MkDir "Z:\Dokumente\Kunde\" & Me!KundeNr & "_" & Me!Beschreibung & "_" & Me!Datum
Me.DokumentenLink = "Z:\Dokumente\Kunde\" & Me!KundeNr & "-" & Me!Beschreibung & "-" & Me!Datum
End If
End Sub


Und dann noch eine Frage, wenn ich den Ordner als Zip Container haben möchte, wie kann ich das schaffen?

Vielen Dank schon mal.
Titel: Re: Ordner aus Access erstellen
Beitrag von: MzKlMu am Mai 17, 2019, 09:53:42
Hallo,
Zitatund nicht auf den welche auswähle
wie wählst Du aus ? (hatte ich schon mal gefragt)

Das Format eines Datumsfeldes muss direkt beim Verketten übergeben werden. Also so:

MkDir "Z:\Dokumente\Kunde\" & Me!KundeNr & "_" & Me!Beschreibung & "_" & Format(Me.Datum,"dd-mm-yyyy")
Genau so dann auch bei der Zuweisung des Links. Da hast Du übrigens Bindestriche und nicht den Unterstrich.

Du kannst den Ordner nicht zu einem Zip Archiv machen. Das Zip Archiv hat ja mit der Ordnerstruktur auf der Festplatte nichts zu tun. Das Zip Archiv muss innerhalb des angelegten Windowsordners erstellt werden. Und das wird gemacht, indem Du die einzelnen Dateien zu einem Zip-Archiv zusammenfasst. Das hat mit Access nichts zu tun, das geschieht mit dem Programm, das Du zum zippen verwendest.

PS:
Für Codedarstellungen immer die Codetags benutzen. Habe ich in Deinem obigen Beitrag noch gemacht.
Titel: Re: Ordner aus Access erstellen
Beitrag von: Mollerio33 am Mai 17, 2019, 10:18:33
Ja das mit dem anwählen weiß ich leider nicht.  :-[
Ich habe den Button mit der Klick fähigkeit angefügt und den Code dahinter angelegt.
Er zieht sich halt immer den obersten Datensatz und auch nur den.

Aber ich habe null Ahnung wie das geht. :(

Hier noch mal ein Screenshot.
Titel: Re: Ordner aus Access erstellen
Beitrag von: MzKlMu am Mai 17, 2019, 10:50:15
Hallo,
im einfachsten Fall stellst Du den Cursor einfach in irgendein Feld des gewünschten Datensatzes.
Titel: Re: Ordner aus Access erstellen
Beitrag von: Mollerio33 am Mai 17, 2019, 10:59:10
Genau das bringt leider nichts.
Wenn einfach, einfahc wäre. :)
Titel: Re: Ordner aus Access erstellen
Beitrag von: MzKlMu am Mai 17, 2019, 11:05:58
Hallo,
das kann nicht sein. Dann machst Du einen Fehler, oder es gibt noch weiteren Code.
Lasse Dir mal mit einer MsgBox die Kundennummer anzeigen, wenn auf den gewünschten Datensatz positioniert ist.
Dim Beschreibung As String
MsgBox Me.KundeNr
Stop
Titel: Re: Ordner aus Access erstellen
Beitrag von: Mollerio33 am Mai 17, 2019, 11:35:04
Leider bekomme ich nur die Ausgabe mit dem ersten Datensatz.
Kann ich dir meine kleine Datenbank mal senden per PN?
Titel: Re: Ordner aus Access erstellen
Beitrag von: MzKlMu am Mai 17, 2019, 11:39:59
Hallo,
ja, aber nicht per PN, nur hier im Forum.
Wenn nötig, kannst Du dazu extra ein kleines Beispeil mit anonymen Daten erstellen das nur das Problem zeigt und hier im Forum hochladen.
Titel: Re: Ordner aus Access erstellen
Beitrag von: Mollerio33 am Mai 17, 2019, 11:45:28
Was bräuchtest du denn?
Titel: Re: Ordner aus Access erstellen
Beitrag von: MzKlMu am Mai 17, 2019, 11:48:55
Hallo,
das was Dir Probleme macht.
Titel: Re: Ordner aus Access erstellen
Beitrag von: Mollerio33 am Mai 17, 2019, 11:55:07
Habe dir mal die Screenshots gemacht.

Nochmal das Problem, wenn ich Daten einpflege erstellt er einen Ordner.
Aber nicht einen Ordner für einen weiteren Datensatz, sondern er bleibt immer auf dem ersten Datensatz.
Wenn ich den Ordner lösche und den ersten Datensatz veränderung, und anschließend den Button drücke dann erstellt er einen neuen Ordner.

Wenn du noch was brauchst sag bescheid.
Titel: Re: Ordner aus Access erstellen
Beitrag von: MzKlMu am Mai 17, 2019, 11:58:58
Hallo,
ich brauche die DB, die Bilder nutzen nix.
Titel: Re: Ordner aus Access erstellen
Beitrag von: Mollerio33 am Mai 17, 2019, 12:05:41
Bitte
Titel: Re: Ordner aus Access erstellen
Beitrag von: MzKlMu am Mai 17, 2019, 12:40:24
Hallo,
das ist ja auch kein richtiges Formular was Du da erstellt hast. Für ein Formular muss man jedes einzelne Feld auf dem Formular anordnen.
Dann kann mann auch positionieren.
Ich würde das Feld auch nicht als Link anlegen, sondern als ganz normales Textfeld. Die Linkfelder sind etwas sperrig in der Handhabung. Funktioniert dann auch. Ich habe es geändert, wenn Dir das als Link lieber ist, kannst es aber auch lassen.
Titel: Re: Ordner aus Access erstellen
Beitrag von: Mollerio33 am Mai 17, 2019, 12:55:38
Okay, aber das man das als Tabellen ansicht lösen kann, geht nicht?
Titel: Re: Ordner aus Access erstellen
Beitrag von: MzKlMu am Mai 17, 2019, 13:19:44
Nein, das geht nicht. Du kannst das Formular so gestalten, dass es wie eine Tabelle aussieht.
Titel: Re: Ordner aus Access erstellen
Beitrag von: Mollerio33 am Mai 18, 2019, 14:39:07
Guden,

ich habe mir noch mal gedanken gemacht.
Wäre es möglich das man über das Formal die Datei erzeugt. Und der neue Datensatz dann in eine Tabelle geschrieben wird.
Anschließend wird die eingabe maske neu geladen und man kann eine neue Datei erstellen.
Würde das gehen?