Supportnet Computer
Planet of Tech

Supportnet / Forum / Tabellenkalkulation

Automatische Pfadangabe in Workbooks.Open





Frage

Ich habe folgendes Problem. Ich habe in einer Ordnerstrukur mehrfach die gleiche Exceltabelle (nur umbenannt), die jeweils eine andere Mappe mit Parametern öffnet. Projekt1 _Parameter.xls _|->Unterverzeichnis1 _|-> Unterverzeichnis2 ___|-> Main_a.xls ___|-> Main_c.xls Projekt2 _Parameter.xls _|->Unterverzeichnis1 _|-> Unterverzeichnis2 ___|-> Main_b.xls Ich möchte dass die jeweils die richtige Parameter Datei geöfnnet wird. Also muss ich irgendwie an den Pfad (-das letzte Unterverzeichnis) kommen. Bsp: Main_a.xls Pfad: ...Projekt1\Unterverzeichnis2\Main_a irgendwie muss ich auf ...\Projekt1\Parameter.xls kommen. Kann mir jemand weiterhelfen? Bitte ganz genau erklären, ich bin absoluter VB Anfänger ;-) Gruß Heike

Antwort 1 von _heike_

So, ich weiß jetzt wie ich an den Pfad der Main Datei komme:
Mit Active.Workbook.Path

Aber irgendwie komm ich auch nicht weiter...

Gibt e seine Funktion, die nach einer bestimmten Datei erst im Verzeichnis, dann im Überverzeichnis usw sucht?

Oder gibts vielleicht sowas wie string Operationen?
Der erste Teil des Pfades ist ja fest.
Also vielleicht den bekannten Teil abschneiden (C:\....)
dann bleibt Projekt1\Unterverzeichnis2 übrig. Den Text bis zum ersten \ lesen und dann den Pfad wieder zusammenbauen.
"bekannter Pfad" + "gelesene" + Parameter.xls

Ich hoffe mir ist noch zu helfen ;-)
wünsch euch ein schönes We

Gruß Heike

Antwort 2 von Marie

Wenn ich ja durchblicken würde was Du willst, dann wäre das gewiss kein Problem Dir zu helfen.

Gruß Marie

Antwort 3 von _heike_

Hab schon befürchtet, dass es ein bißchen unverständlich ist.

Ich hab hier eine Excelliste, die aus einer anderen Mappe Parameter holt. Diese Mappe wird mit Workbooks.Open am Anfang mitgeöffnet.

Das Problem ist jetzt, dass die Ecxelliste für verschiedene Projekte verwendet wird bei der sich die Parameter Datei ändert. Ich möchte den Pfad für die Parameterdatei also nicht fest angeben, sondern jeweils die richtige Parameterdatei öffnen (die sich in einem Überordner befindet).

Die Ordnerstrucktur, hab ich versucht darzustellen. Also
...\Projekt darunter kommt dann die für das Projekt gültige Parameterdatei und dann Unterordner mit den eigentlichen Excellisten.

Ich hoffe das ist verständlicher.

Gruß
Heike

Antwort 4 von _heike_

So, ich hab ne Lösung die funktioniert.
Es geht sicher schöner, aber wie gesagt, das sind meine ersten Versuche ;-)
Also falls jemand nen bessern Vorschlag hat, freu ich mich natürlich.

Laenge = Len("D:\.....\Projekte\")
AktuellerPfad = ActiveWorkbook.Path
ProjektPfad = Mid(AktuellerPfad, Laenge + 1)
'nach \ weiter deshalb + 1
PosBS = InStr(ProjektPfad, "\")
'nächsten \ suchen
If PosBS > 1 Then
Projekt = Left(ProjektPfad, PosBS - 1)
'ohne \ deshalb - 1
Else
Projekt = ProjektPfad
End If

Workbooks.Open ("D:\.....\Projekte" & Projekt & "\Parameter.xls")


Gruß
Heike

Ich möchte kostenlos eine Frage an die Mitglieder stellen:


Ähnliche Themen:


Suche in allen vorhandenen Beiträgen: