Supportnet Computer
Planet of Tech

Supportnet / Forum / Tabellenkalkulation

Aktueller Ordner soll Standardordner sein!





Frage

Hoffe die Excel Spezialisten hier können mir helfen! Mein Problem (Excel 2000): Arbeite an Projektarbeitsmappe in Excel wobei ich für jedes Projekt den Ordner der Arbeitsmappe kopiere und dort dann das neue Projekt anlege. Die Arbeitsmappe ist mit anderen Arbeitsmappen im selben Ordner verknüpft. Und hier mein eigentliches Problem: a.) Wie sage ich Excel das immer der „aktuelle Ordner“ der „Standardarbeitsordner“ ist ? b.) Wie bring ich der Makrofunktion bei, das er die geforderten Arbeitsmappen aus dem „aktuellen Ordner“ holt ? ( Im Moment sieht die Programmierung so aus: Workbooks.Open Filename:= _ "\Projekte\Testprojekt\punchlisten.xls“ (nur „Punchlisten.xls“ ohne Pfadangabe funktioniert nicht (schon getestet!) da er immer auf den „Standardarbeitsordner“ greifen will und eben nicht direkt auf den aktuellen Ordner „Testprojekt“). Im Prinzip würde mir reichen, wenn Excel immer den im momentan befindlichen Ordner als „Standartarbeitsordner“ definiert – damit wäre meine Mappenprobleme und Makroprobleme ja schon gelöst!

Antwort 1 von Hajo_Zi

Hallo Nick,

zu b ThisWorkbook.Path

Gruß hajo

Antwort 2 von korfuweb

Danke Hajo,

kannst Du mir da einen etwas genaueren Syntax geben?

Danke

Antwort 3 von Hajo_Zi

Hallo Nick,

das ist schon der gesamte Code fü den Ordner de Datei.

Gruß hajo

Antwort 4 von korfuweb

Muss doch möglich sein Excel so einzustellen, das das momentane Verzeichnis als "Standardverzeichnis" angenommen wird!
Please help!

Antwort 5 von Hajo_Zi

Hallo Nick,

Ich habe Dir die Lösung gepostet, Du kannst Sie aber nicht in Deinen Code einarbeiten. Da ich es ablehne über das Internet auf fremde Rechner zu schauen, kann ich Dir leider nicht weiter helfen.

Gruß hajo

Antwort 6 von korfuweb

Hallo meine Retter,
So nochmal - da ich das Problem schon wieder habe - GRRR-
ich muss es unbedingt schaffen, das der aktuelle Ordner als Standartordner angesehen wird.
Hier mein Problem:
Habe ein Stundenabrechnungsprogramm geschrieben das wie folgt aussieht:
Monatsmappe:
1 - Januar.xls
2 - Februar.xls
usw.
Mitarbeiter.xls (sind Name und Personalnr. usw integriert
und
Jahresübersicht.xls
das ganze liegt im Unterverzeichnis z.b.
C:\EXCELDATEN\2008

Nun mein Problem:
die Monatsmappen entnehmen per drag & Drop aus der Mitarbeitermappe die Mitarbeiterdaten
sowohl in Monatsmappen wie auch Jahresübersicht.
Die Jahresübersicht nimmt aus den einzelnen Monatsmappen die jeweiligen Arbeitsstundendaten.

Klappt ja auch alles - wunderbar !

NUR:
Kopiere ich das ganze jetzt in einen neuen Ordner z.B. 2009
oder einfach nur auf einen anderen PC
geht das Problem los:
die ganzen Verweise haben dann auf einmal die komplette Pfadangabe integriert - und da der Ordner ja auf dem neuen PC nimmer da ist - sind alle Verweise futsch.

gibt es nicht ne Möglichkeit den Pfad irgendwie wegzulassen - so alla
direkte und indirekte Bezüge.
Muss doch machbar sein.
Please Help
Gruß Volker

Antwort 7 von Hajo_Zi

Hallo Volker,

Nein, Da mußt Du dann in er Datei Register Daten, Befehlsgruppe Verbindungen und Verknüpfungen Bearbeiten und alle Quellen ändern. Oder Du ersetzt in Deiner Datei Formeln durch Werte.

Gruß Hajo

Antwort 8 von korfuweb

Formeln durch Werte ersetzen?????
Klingt schon mal interesannt! Aber was bedeutet das?
Gruß Volker

Antwort 9 von Hajo_Zi

Hallo Volker,

es steht in der Zelle nicht mehr =3+2 sonder 5

Gruß hajo

Antwort 10 von Kauz

Hallo Volker...
mit folgender Zeile wird der Ordner, in dem die Exceldatei geöffnet wird, als Standardordner definiert.
Application.DefaultFilePath = ThisWorkbook.Path

Weil diese Veränderung solange bestehen bleibt, bis sie wieder überschrieben wird, ist es ratsam vor dem Überschreiben zu ermitteln, welcher Pfad vorher drinstand.
Damit beim Schließen von Excel dieser wiederhergestellt werden kann.
Sonst könnten andere Nutzer der Tabelle sich darüber ärgern, das sie nach Aufruf 'Deiner' Tabelle Ihre Einstellung immer weg ist.

Also:
Den folgen Code in 'Diese Arbeitsmappe' schreiben:
Option Explicit
Public PfadOld

Private Sub Workbook_Open()
  PfadOld=Application.DefaultFilePath 
  Application.DefaultFilePath = ThisWorkbook.Path
end sub

Private Sub Workbook_BeforeClose(Cancel As Boolean)
  Application.DefaultFilePath =PfadOld
end sub

Vielleicht ist dies ja ein Lösungsansatz, den Du suchst...

Gruß
Andreas

Antwort 11 von korfuweb

Klasse !
Das funktioniert ja bestens ! Danke !
Gruß
Volker

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


Ähnliche Themen:


Suche in allen vorhandenen Beiträgen: