Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1764to1768
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

txt. Datei mit vorgegebenem Pfad

txt. Datei mit vorgegebenem Pfad
15.06.2020 15:15:23
Benjamin
Hallo Zusammen,
vorneweg, ich bin nicht so neu wie es scheint hier.
Ich bediene mich eurer Beiträge schon seit langem um mich meines Excel Wissens zu erweitern.
Vielen Dank schon mal hierfür.
Zu meinem Problem: (Beispieldatei hier (gekürzt natürlich): https://www.herber.de/bbs/user/138314.xlsm)
Ich arbeite an einer Vorlage an der sich alle Bedienen sollen.
- Vorlage kopieren - im Projektordner einfügen - importieren usw.
in selbem Ordner befindet sich nun eine Kxxxxx_stl.txt Datei (xxxxx = Projektnummer)
Diese wird von einem weiterem System immer unter diesem Namen dort abgelegt
- Auch bei Änderungen wird die neue Datei mit diesem Namen dort abgelegt bzw. die alte überschrieben
Jetzt soll mein Makro (Knopfdruck) diese kopieren und umbenennen Kxxxxx_stl-y.txt (y = Versionsnummer)
Also bei jedem Male die Ursprungsdatei nehmen, kopieren und mit der Versionsnummer umbenennen und diese einlesen
Hab soweit alles hinbekommen bis auf das einlesen der neuen Dateien
Bisher habe ich das importieren über einen Makrorecorder aufgezeichnet.
Ich bekomme es aber nicht hin (so sehr ich auch Suche) vorzugeben welche Datei und welchen Pfad er nehmen soll
Beim aufzeichnen schreibt mir der Recorder den Pfad und Namen statisch und ich bekomme beim erneuten drücken logischerweise eine Fehlermeldung, das diese Verbindung schon existiert.
Ich hoffe ich habe mich Verständlich ausgedrückt und ihr könnt mir helfen
grüsse benny

13
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: txt. Datei mit vorgegebenem Pfad
15.06.2020 16:15:51
Herbert
Hallo Benny,
wenn du die eingelesene Datei geöffnet hast, um sie umzubenennen, dann ist sie doch schon geöffnet und du brauchst sie nicht noch einmal zu öffnen, denke ich.
Servus
AW: txt. Datei mit vorgegebenem Pfad
15.06.2020 16:34:02
Benjamin
Hi Herbert,
ich glaube das Problem ist nicht ganz verstanden oder ich sehe den Wald vor lauter Bäumen nicht.
Hier meine Codes zum kopieren und umbenennen: (Ich öffne hier aktiv erstmal garnichts)
  • 
    Sub KopierenUndUmbennen(AlterPfad As String, AlterName As String, NeuerPfad As String,  _
    NeuerName As String)
    If Right(AlterPfad, 1)  "\" Then
    AlterPfad = AlterPfad & "\"
    End If
    If Left(AlterName, 1) = "\" Then
    AlterName = Mid(AlterName, 2)
    End If
    If Right(NeuerPfad, 1)  "\" Then
    NeuerPfad = NeuerPfad & "\"
    End If
    If Left(NeuerName, 1) = "\" Then
    NeuerName = Mid(NeuerName, 2)
    End If
    FileCopy AlterPfad & AlterName, NeuerPfad & NeuerName
    End Sub
    
    Sub neue_Datei()
    Sheets("Stückliste").Select
    Sheets("Zugriffsparameter").Visible = True
    Sheets("Zugriffsparameter").Select
    KopierenUndUmbennen Range("$B$1"), Range("$B$7"), Range("$B$1"), Range("$B$3")
    Sheets("Zugriffsparameter").Select
    ActiveWindow.SelectedSheets.Visible = False
    Range("A1").Select
    End Sub
    

  • Mein Problem liegt im Modul Tabelle in meiner vorherigen Beispieldatei.
    Hier ist ein fester Wert als Pfad\Dateiname hinterlegt.
    Diesen muss ich aber aus zwei Zellen auslesen und zusammensetzen
    Ich werde morgen früh nochmal Excel und txt hochladen mit allem was ich bisher habe (ggf. mit Fehlerbild)
    (Dann aber bitte nicht lachen, ich kanns halt einfach nicht besser :))
    gruss benny
    Anzeige
    AW: txt. Datei mit vorgegebenem Pfad
    15.06.2020 17:12:08
    Herbert
    Hallo Benny,
    also die Makros, die in deiner hochgeladenen AM sind, sehen völlig anders aus! Wenn dein Problem im Modul "Tabelle" liegt, dann hast du tatsächlich ein Problem, denn ein Modul solchen Namens gibt es nicht in deiner hochgeladenen AM!
    Sub neue_Datei()
    Sheets("Stückliste").Select
    Sheets("Zugriffsparameter").Visible = True
    Sheets("Zugriffsparameter").Select
    KopierenUndUmbennen Range("$B$1"), Range("$B$7"), Range("$B$1"), Range("$B$3") _
    Sheets("Zugriffsparameter").Select
    ActiveWindow.SelectedSheets.Visible = False
    Range("A1").Select
    End Sub
    
    Und in B7 in Zugriffsparameter steht auch nix drin! Wie soll Excel da etws kopieren?
    Servus
    Anzeige
    AW: txt. Datei mit vorgegebenem Pfad
    15.06.2020 17:21:15
    Herbert
    Außerdem hast du das Suffix bei "NeuerName" nicht angegeben! Wie soll Excel denn die neue Datei speichern?
    AW: txt. Datei mit vorgegebenem Pfad
    16.06.2020 11:14:33
    Benjamin
    Hi Herbert,
    sorry, war mein Fehler.
    Der Code stammte aus meiner überarbeiteten lokalen Mappe und hatte mit der Beispieldatei nichts mehr zu tun.
    Habe jetzt nochmal beide (natürlich abgespeckte) Daten hochgeladen.
    Excel: https://www.herber.de/bbs/user/138327.xlsm (umbenennen in K12345_Name.xlsm.
    txt: https://www.herber.de/bbs/user/138329.txt (umbenennen in K12345_stl.txt)
    -Beide in das gleiche Verzeichnis legen-
    Soweit funktioniert eigentlich alles.
    Bis auf das importieren der neuen txt.Datei natürlich
    Weil in meinem Modul "Import" die "Sub DateiImportieren" auf statische Pfade verweist (ich hoffe ich Bezeichne das so richtig)
    Heisst, er will immer dieselbe Datei importieren und bringt dann zusätzlich den Fehler das die Verbindung schon enthalten ist
    Ich will aber immer die gerade neu angelegte Datei importieren
    UND ICH RAFFS EINFACH NICHT :(
    Hinweis: In der Beispeildatei ist für den Knopfdruck das importieren als Hinweis hinterlegt und wird nicht ausgeführt.
    Funktioniert ja auch nicht
    Hinweis2: Ich habe die Module quasi so erstellt:
    Makrorecorder - kleinere Befehle aufgezeichnet und diese dann zusammengeschnipselt
    Alles was der Recorder nicht kann ziehe ich mir aus dem Forum
    Anzeige
    AW: txt. Datei mit vorgegebenem Pfad
    17.06.2020 09:39:22
    Herbert
    Hallo Benjamin,
    sorry, dass ich dir gestern nicht antworten konnte, aber ich war dringend anderweitig beschäftigt. Falls dein Problem noch nicht gelöst ist, habe ich folgende Fragen:
    Wenn ich dich richtig verstanden habe, dann willst du die Datei "Kxxxxx_stl.txt" öffnen und mit neuer "Kyyyy_stl.txt" speichern. Das geht schon mal in einem Aufwasch und die Datei "Kyyyy_stl.txt" bleibt für evtl. Änderungen geöffnet. Nach Abschluss der Änderungen willst du diese Datei dann speichern und schließen.
    Habe ich das so richtig interpretiert, oder fehlt da noch etwas?
    Übrigens ist die Bezeichnung "Register" falsch. Richtige Bezeichnungen sind: Sheet, Arbeitsblatt oder Tabellenblatt.
    Servus
    Anzeige
    AW: txt. Datei mit vorgegebenem Pfad
    18.06.2020 08:30:42
    Benjamin
    Hi Herbert,
    kein Problem, wie du siehst habe auch ich andere Termine und war daher gestern z.B. auch nicht anwesend :)
    Ich beschreibe mein vorhaben nochmal Punkt für Punkt:
    1. Neues Projekt: Projekt wird im Explorer angelegt: S:\......\Kxxxxx_INFO-INFO
    2. In dieses Projekt wird nun in ein bestimmten Unterverzeichnis (Kxxxxx...\3.9) die Excelvorlage gelegt
    3. Ein weiters Programm erzeugt nun auf Knopfdruck "immer" die Datei Kxxxxx_stl.txt
    (Wenn es die Datei schon gibt, wird diese bei erneutem erstellen überschrieben)
    (Die txt Datei wird nie von irgendjemand manuell bearbeitet (so sollte es zumindest sein))
    4. Man öffne die Excel und drücke den Button "I"
    4.1 Das Makro zählt die Version auf 1 (Zum ersten mal importiert)
    4.2 Das Makro kopiert die Kxxxxx_stl.txt zur Kxxxxx_stl-1.txt
    4.3 Nun soll diese Kxxxxx_stl-1.txt importiert werden
    ...
    5. Die Daten haben sich geändert, es gibt eine neue Kxxxxx_stl.txt
    6. Man öffne die Excel und drücke erneut den Button "I"
    6.1 Das Makro zählt die Version auf 2 (Zum zweiten mal importiert)
    6.2 Das Makro kopiert die Kxxxxx_stl.txt (nicht die Kxxxxx_stl-1.txt) zur Kxxxxx_stl-2.txt
    6.3 Da Version höher als 1 wird ein neues "SHEET" erzeugt mit dem Namen "Stückliste-2"
    6.4 Das Alte Sheet ("Stückliste-1") wird ausgebelendet
    ----- bis hierhin komme ich -----
    6.5 Die neue Kxxxxx_stl-2.txt soll auf das neue Sheet importiert werden
    - Mein Makro greif aber immer auf die Kxxxxx_stl-1.txt
    - Mein Pfad ist statisch und nicht variabel bzw. passt sich nicht der Version an
    Ich hoffe das nun die genaue Vorgehensweise bekannt ist.
    Bitte das warum immer die gleiche txt.Datei erzeugen und diese dann per umbenennen zu Versionieren nicht hinterfragen (Ich mache das auch nicht mehr)
    - Bisher gibt es nur die eine txt und jeder verarbeitet diese weiter wie er will (soll Zukünftig vermieden werden)
    - auf diese Weise soll wenigstens ein bisschen eine Nachverfolgung der Versionen gewährleistet sein
    (Im Prinzip ist die Kxxxxx_stl.txt immer identisch mit der Kxxxxx_stl-höchste Version)
    gruss benny
    Anzeige
    AW: txt. Datei mit vorgegebenem Pfad
    18.06.2020 10:54:53
    Herbert
    Hallo Benjamin,
    eine Frage vorweg: Wozu schreibst du in A1 eine 0 oder 1?
    Private Sub CommandButton2_Click()
    If CommandButton1.Enabled = True Then
    CommandButton1.Enabled = False
    Range("A1") = "0"
    Else
    CommandButton1.Enabled = True
    Range("A1") = "1"
    End If
    End Sub
    
    Servus
    AW: txt. Datei mit vorgegebenem Pfad
    18.06.2020 11:27:56
    Benjamin
    Naja, jetzt kommt meine noch große Unwissenheit in VBA dazu.
    Ich habe hier in A1 eine bedingte Formatierung hinterlegt:
    0=rot (Button "I" gesperrt)
    1=grün (Button "I" freigegeben)
    Wenn man per VBA direkt solche Formatierungen schreiben kann dann super
    (finde ich bestimmt auch noch über die Forensuche heraus)
    Ich habe das "vorerst" allerdings erst mal so gestaltet
    Wenn nur das Ergebnis bewertet wird würde ich auch so behaupten: "100 Punkte" :)
    grüssle benny
    Anzeige
    AW: txt. Datei mit vorgegebenem Pfad
    18.06.2020 11:48:20
    Herbert
    OK. Noch eine Frage:
    wofür benutzt du CommandButton1.Enabled = False/CommandButton1.Enabled = True?
    Servus
    AW: txt. Datei mit vorgegebenem Pfad
    18.06.2020 11:54:23
    Herbert
    Wozu verwendest du die "Stückliste (leer)"?
    AW: txt. Datei mit vorgegebenem Pfad
    18.06.2020 12:15:46
    Benjamin
    Stückliste (leer) ist mein Master quasi
    Beim erzeugen von einem neuen Blatt kopiere ich das Blatt Stückliste (leer) und füge es in das neue Blatt ein.
    Eigentlich nichts anderes als das neue Blatt leeren und die Überschriften etc. wieder herstellen
    Command.Button1.Enable = True / False
    Um ein versehentliches erzeugen einer neuen Version zu vermeiden
    Der Command.Button2 muss also erst gedrückt werden um den Command.Button1 freizugeben
    Ergänzung (bevor die Frage kommt) Blatt Zugriffsparamter
    Ich arbeite gerne so, das ich z.B. bei Datenüberprüfung (also zulässige Werte) diese aus einer Werteliste hole statt zu schreiben
    Ebenso bei meinen =WENN(...) Formeln. Bei Änderung muss ich einen Wert ändern und nicht jede Formel durchklicken
    Ich muss nunmal gestehen
    Das sind meine ersten wirklich in nenne es mal "Tiefe Einblicke" in VBA
    Bisher habe ich nur Kleinigkeiten gelöst. Hier und da mal ne Zelle/Zeile ein- und ausblenden wenn das erfüllt
    Und es kann gut und gerne sein das meine Unwissenheit von vorne herein schon strukturell zu einem Kopfschütteln führt.
    Da muss ich aber durch denke ich
    gruss benny
    Anzeige
    AW: txt. Datei mit vorgegebenem Pfad
    18.06.2020 17:17:58
    Herbert
    Hallo benny,
    Und es kann gut und gerne sein das meine Unwissenheit von vorne herein schon strukturell zu einem Kopfschütteln führt.
    Genau das ist mein Problem, denn das Ganze ist wirklich, sagen wir es mal freundlich, etwas "eigenwillig"!
    Du schreibst "bis hierhin komme ich"! Aber aus meiner Sicht äußerst umständlich. Aber du hast ja gerade erst mit VBA angefangen. Ich arbeite dagegen mit der Programmiersprache Basic schon seit 1987! Und trotzdem lerne auch ich noch immer wieder mal etwas dazu! Also, wenn du dich auf VBA einlässt, dann weißt du was da auf dich zukommt! Doch gleichzeitig ist es so faszinierend, was man damit, zusammen mit Excel, alles machen kann. Mich begeistert es jeden Tag wieder.
    Und in der Zeit, so wie jetzt, wenn ich mal nicht an einem Programmierauftrag arbeite, dann helfe ich in Hans W. Herber's (den ich übrigens schon mehrmals persönlich kennengelernt habe) Excel-Forum, denn aufgrund der darin gestellten Aufgaben, kann man immer wieder noch etwas dazu lernen. Helfen macht mir Freude und hinzulernen ist super, also eine echte Win-Win-Situation!
    Deine ganzen Makros habe ich schon mal kräftig ausgemistet, denn da brauchst du das Meiste gar nicht.
    Es wird aber noch einiger hin und her's bedürfen, bis wir damit fertig sind. Deshalb kannst du, wenn du willst, mir ab jetzt auch direkt schreiben. Meine eMail-Adr. lautet: hag at excelhelper.de
    Deine Daten sind bei mir natürlich völlig sicher und werden in keinem Falle an Dritte weitergegeben, da ich ja auch, wie ich schon sagte, professionell Programmiere und da ist die Datensicherheit unabdingbar!
    Also, schreib mir bitte kurz, ob du das so machen kannst/willst.
    Servus
    Anzeige

    Links zu Excel-Dialogen

    Beliebteste Forumthreads (12 Monate)

    Anzeige

    Beliebteste Forumthreads (12 Monate)

    Anzeige
    Anzeige
    Anzeige