Erstellen eines kleinen Programms zur Ordnererstellung

  • VB.NET

Es gibt 9 Antworten in diesem Thema. Der letzte Beitrag () ist von juliansw.

    Erstellen eines kleinen Programms zur Ordnererstellung

    Hallo Zusammen,

    ich bin relativ unerfahren was VBA angeht.

    Folgendes Szenario würde ich gerne versuchen umzusetzen:

    In unserem Unternehmen gibt es digitale Bauakten. Um die Bauakten anzulegen wird momentan händisch ein Ordner unter dem jeweiligen Kunden (in Ordnern von A-Z einsortiert) erstellt und dadrunter Unterordner aus einem Musterordner kopiert. Dies würde ich gerne mit einem kleinen grafischen Programm umsetzen

    Heißt:

    User drückt Button "Speicherort wählen" gibt dann den Kundennamen als Ordner an und im selben Schritt sollen dann die Unterordner aus dem Musterordner dort eingefügt werden. Kann man das mit VBA umsetzen?

    Für ein wenig Unterstützung wäre ich sehr dankbar :)

    *Thema verschoben* ~NoFear23m

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Nofear23m“ ()

    Willkommen im Forum.
    Ich hab's auch nicht so mit VBA, aber mit der entsprechenden Suchbegriffverwendung kommt man relativ schnell zum Ziel.
    Wir haben damit folgende Schritte, Suchmaschinenbegriffe und Ergebnisse:
    1. Erstellen eines Formulars mit Button oder Direktplatzierung eines Buttons in ner Excel-Tabelle. Ich glaube, dass Du das noch hinbekommst.
    2. Anforderung und Abfragen von Daten vom User. Da war mir die InputBox bekannt.
    3. Prüfen, ob ein Ordner bereits existiert. VBA Check If Folder Exists -> Dir-Anweisung
    4. Ordner erstellen. VBA Create Folder -> MkDir-Anweisung
    5. Ordner kopieren. VBA Copy Folder -> CopyFolder des FileSystemObjects
    6. FileSystemObject noch erstellen. VBA Create FileSystemObject
    Und in Summe dann z.B.:

    Visual Basic-Quellcode

    1. Dim RootFolder As String
    2. RootFolder = "C:\Users\Zed\Desktop\RootFolderForTests\" 'hier Deinen Stammordner rein, wo sich alles abspielen soll
    3. Dim CustomerName As String
    4. CustomerName = InputBox("Bitten Kundennamen angeben.")
    5. If Dir(RootFolder & CustomerName, vbDirectory) = "" Then MkDir RootFolder & CustomerName
    6. Set FileSystemObject = CreateObject("Scripting.FileSystemObject")
    7. FileSystemObject.CopyFolder RootFolder & "Muster", RootFolder & CustomerName 'geht davon aus, dass alle Kunden- und der Musterordner im Root-Ordner drin sein sollen

    Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von „VaporiZed“, mal wieder aus Grammatikgründen.

    Aufgrund spontaner Selbsteintrübung sind all meine Glaskugeln beim Hersteller. Lasst mich daher bitte nicht den Spekulatiusbackmodus wechseln.
    Nein, teilweise, weil es nicht geht, teilweise, weil das VB6-Stil wäre. Leider fehlt mir gerade die Zeit, um es in VB.Net-Manier umzuschreiben, vielleicht später.
    Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von „VaporiZed“, mal wieder aus Grammatikgründen.

    Aufgrund spontaner Selbsteintrübung sind all meine Glaskugeln beim Hersteller. Lasst mich daher bitte nicht den Spekulatiusbackmodus wechseln.
    @d.schwellenbach
    Vieleicht wäre es nicht schlecht (für den Lerneffekt) wenn du versuchen würdest den VBA Code zu verstehen (ist ja VB.Net ähnlich) und versuchst selbst herauszufinden was genau du machen musst.
    Das würde dir langfristig sicher weiterhelfen. Nehme die suchmaschine deiner Wahl und suche mal nach den Begriffen und dem .Net equivalent.

    Grüße
    Sascha
    If _work = worktype.hard Then Me.Drink(Coffee)
    Seht euch auch meine Tutorialreihe <WPF Lernen/> an oder abonniert meinen YouTube Kanal.

    ## Bitte markiere einen Thread als "Erledigt" wenn deine Frage beantwortet wurde. ##

    d.schwellenbach schrieb:

    jedoch bringt es mir jetzt gerade in meiner Situation nicht weiter.

    Sehe ich anders aber gut. In der Zeit die seit dem Post von @VaporiZed vergangen ist hättest du diese 7 Zeilen bestimmt fünf mal übersetzt. Ich schreibe das nur weil sowas im Sinn eines Forums vorbeigeht und ich dir Helfen möchte. Nur wenn man lernt sich selbst zu Helfen kommt man schnell weiter.

    Grüße
    Sascha
    If _work = worktype.hard Then Me.Drink(Coffee)
    Seht euch auch meine Tutorialreihe <WPF Lernen/> an oder abonniert meinen YouTube Kanal.

    ## Bitte markiere einen Thread als "Erledigt" wenn deine Frage beantwortet wurde. ##

    Eine Möglichkeit, es in VB.NET umzusetzen wäre wie folgt:

    VB.NET-Quellcode

    1. Dim strCustomerName As String = Nothing 'Name des Kunden
    2. Dim strRootDir As String = "Dein Verzeichnis" 'Verzeichnis in dem gearbeitet wird
    3. Dim strSourceDir As String = strRootDir & "\Muster" 'Musterordner für Kopiervorgang
    4. Dim objFolderBrowser As New FolderBrowserDialog
    5. objFolderBrowser.Description = "Deine Überschrift" 'Beschreibung im Ordner-Dialog
    6. objFolderBrowser.SelectedPath = strRootDir
    7. If objFolderBrowser.ShowDialog = Windows.Forms.DialogResult.OK Then
    8. strCustomerName = objFolderBrowser.SelectedPath
    9. 'Kopiervorgang
    10. My.Computer.FileSystem.CopyDirectory(strSourceDir, strCustomerName)
    11. 'Rückmeldung an Anwender
    12. MsgBox("Das Verzeichnis '" & strCustomerName & "' wurde angelegt.", vbInformation, "Vorgang abgeschlossen")
    13. End If