Clever-Excel-Forum

Normale Version: VBA- Vaiabler Pfad
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo zusammen,
ich brauch mal wieder eure Hilfe, denn ich kriegs irgendwie nicht hin :22:
Folgendes
Ich öffne aus einem Excel Script eine PP-Vorlage, welche ich dann befülle.
Diese liegt auf dem Netzwerk und ich gebe hier als Pfad den UNC PFad ein (\\PiffPaff\BlaBlub\)
Nun haben einige Kollegen Laptops und sind nicht immer mit dem Netzwerk verbunden.
Wie krieg ich es hin, dass wenn der Netzwerkpfad nicht verfügbar ist, ein Alternativpfad (C:\Vorlage\) verwendet wird.
Würde mich freuen, wenn Ihr mir helfen könntet
Gruß
DeBabba
Hi,

könntest Du Dir für diesen Fall eventuell mit
Code:
Application.GetOpenFilename
helfen?

Gruß
Max
Danke Max,
habs etwas anfders lösen können
Wenn der Pfad nicht vorhanden ist, kann auch die Datei nicht geöffnet werden (logosch). Das erzeugt einen 1004er Fehler, den ich mit
Code:
On Error Resume Next
Application.Workbooks.Open Datei
If Error(1004) Then Pfad = Pfad2
Datei = Pfad & "MM.xls"
Application.Workbooks.Open Datei
on error goto 0
abfange. Also wenn ich einen 1004er Fehler habe, dann setzte ich den PPfad anders.
Ich weiß , dass geht bestimmt einfacher / kürzer / eleganter.
Erfüllt aber seinen Zweck

Nochmals Danke für Deinen Tipp

Gruß
KLaus
Hi Klaus,

(06.11.2014, 13:13)DeBabba schrieb: [ -> ]Das erzeugt einen 1004er Fehler, den ich mit
Code:
On Error Resume Next
Application.Workbooks.Open Datei
If Error(1004) Then Pfad = Pfad2
Datei = Pfad & "MM.xls"
Application.Workbooks.Open Datei
on error goto 0

damit schaltest Du aber jegliche Fehlerbehandlung ab und fängst nur den 1004er wieder ein.

Ist es überhaupt nötig, das "On Error Resume Next" in Deinen Code reinzuschreiben? Reicht es nicht, nur den If Error(1004).. Teil zu verwenden?
Hallo Ralf,
nein das reicht leider nicht, denn wenn der Pfad nicht existiert kommt sofort der Fehler.
Ich weiß nicht (oder hab noch nicht probiert) ob es sowas wie ISTFEHLER im VBA gibt
Außerdem schalte ich den On Error resume next durch On Error goto 0 wieder aus

Gruß
KLaus
Hallo Klaus,

teste mal:

Code:
If Dir(Datei) = "" Then
      Datei = Pfad & "MM.xls"
      Application.Workbooks.Open Datei
   Else
      Application.Workbooks.Open Datei
   End If
Hi Atilla,
komme leider erst in ein paar tagenb dazu
Schonmal Danke für Deinen Tipp

Gruß
Klaus