Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1384to1388
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

Datei gemäß generiertem Pfad öffnen

Datei gemäß generiertem Pfad öffnen
04.10.2014 08:23:43
Stephan
Liebe Excel-Gemeinde,
haben folgendes Thema:
1) Wir bekommen von einem Scanner einen eindeutigen Schlüssel (für eine Datei)
2) Dieser Schlüssel soll in einer Zelle (A1) in Excel landen
3) Diesen Input wandeln wir automatisch in einer neuen Zelle (A2) in einen Pfad um(bekommen wir hin)
4) Sobald dieser Pfad generiert ist, soll die Datei automatisch geöffnet werden (Anwendung nennt sich GoldenLaser.exe) allerdings nur wenn sich die Datei von ihrem Vorgänger unterscheidet, ist es die selbe Datei soll nichts passieren
Problematisch für uns sind v.a. die "Datenübergabe" am Anfang und der VBA-Teil der das Öffnen bewerkstelligt.
Danke Euch schon mal für Tips
VG
Stephan

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Datei gemäß generiertem Pfad öffnen
04.10.2014 12:34:32
Martin
Hallo Stephan,
bitte teile mir den genauen Dateipfad der Anwendung (GoldenLaser.exe) mit, dann kann ich es versuchen.
Viele Grüße
Martin

AW: Datei gemäß generiertem Pfad öffnen
04.10.2014 13:10:49
Martin
Hallo Stephan,
also Punkt 1 (und damit auch Punkt 2) kann dir hier bestimmt niemand ohne weitere Infos beantworten. Hier meine Vorschläge zu Punkt 4.
Wenn der zu öffnende Dateityp standardmäßig mit DolgenLaser.exe verknüpft ist, dann sollte folgender Code in der entsprechenden Tabelle zum Ziel führen:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim strFilePath As String
Dim myShell As Object
If Target.Address  "$A$1" Then Exit Sub
strFilePath = Range("A2").Text
If strFilePath = strOldFile Then Exit Sub
strOldFile = strFilePath
If Dir(strFilePath) = Empty Then
MsgBox "Ungültiger Dateipfad: '" & strFilePath & "'.", vbExclamation
Exit Sub
Else
Set myShell = CreateObject("wscript.shell")
myShell.Run Chr(34) & strFilePath & Chr(34)
End If
End Sub
Falls der zu öffnende Dateityp NICHT standardmäßig mit DolgenLaser.exe verknüpft ist, dann solltest du folgenden Code verwenden und in der kursiv-gekennzeichneten Zeile den Dateipfad zur Anwendung DolgenLaser.exe anpassen:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim strFilePath As String
Dim myShell As Object, strPathGoldenLaser As String
If Target.Address  "$A$1" Then Exit Sub
strFilePath = Range("A2").Text
If strFilePath = strOldFile Then Exit Sub
strOldFile = strFilePath
If Dir(strFilePath) = Empty Then
MsgBox "Ungültiger Dateipfad: '" & strFilePath & "'.", vbExclamation
Exit Sub
Else
strPathGoldenLaser = "C:\GoldenLaser.exe" 'Anwendungspfad anpassen!
Call Shell(strPathGoldenLaser & " """ & strFilePath & """", 1)
End If
End Sub
Viele Grüße
Martin

Anzeige
Ergänzung
04.10.2014 13:48:04
Martin
Hallo Stephan,
ich sehe gerade, dass ich vergessen habe zu schreiben die öffentliche Variable strOldFile zu deklarieren. Also ganz oben in das Modul muss noch folgender Code ergänzt werden:
Option Explicit
Dim strOldFile As String
Viele Grüße
Martin

AW: Datei gemäß generiertem Pfad öffnen
04.10.2014 14:06:25
Stephan
Hallo Martin,
vielen Dank für die schnelle Antwort. Pfad ist wie folgt: C:\Dokumente und Einstellungen\Zuschnitt\Eigene Dateien\LASER\release
Vielen Dank
Grüße
Stephan

AW: Datei gemäß generiertem Pfad öffnen
04.10.2014 15:56:57
Martin
Hallo Stephan,
ich glaube, dass du mich falsch verstanden hast. Ich vermute, dass der von dir genannte Pfad nicht der Dateipfad zur Anwendung "GoldenLaser.exe" ist, sondern zu dem Ablagepfad der gescannten Dateien?!
Falls "C:\Dokumente und Einstellungen\Zuschnitt\Eigene Dateien\LASER\release" tatsächlich der Pfad der Anwendung "GoldenLaser.exe" sein sollte, verwende folgenden Code:
Option Explicit
Dim strOldFile As String
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim strFilePath As String
Dim myShell As Object, strPathGoldenLaser As String
If Target.Address  "$A$1" Then Exit Sub
strFilePath = Range("A2").Text
If strFilePath = strOldFile Then Exit Sub
strOldFile = strFilePath
If Dir(strFilePath) = Empty Then
MsgBox "Ungültiger Dateipfad: '" & strFilePath & "'.", vbExclamation
Exit Sub
Else
strPathGoldenLaser _
= "C:\Dokumente und Einstellungen\Zuschnitt\Eigene Dateien\LASER\release\GoldenLaser.exe"
Call Shell(strPathGoldenLaser & " """ & strFilePath & """", 1)
End If
End Sub
Viele Grüße
Martin

Anzeige
AW: Datei gemäß generiertem Pfad öffnen
09.10.2014 16:24:54
Stephan
Hallo Martin,
vielen dank für die schnelle Antwort - und sorry wegen meiner späten Rückmeldung, waren außer Haus. Habe nun das erste Skript inkl. der Definition des "strOldFile" mal in eine Excel auf meinem Rechner übernommen. Dann habe ich einfach mal in Tabelle 1 einen gültigen Dateipfad auf eine pdf in A2 kopiert und mit Return bestätigt (meiner Logik nach sollte das Skript nun dafür sorgen, dass die Datei, die standardmäig mit dem Adobe Reader geöffnet wird, nun aufgeht). Aber es passiert leider nichts...Kann natürlich daran liegen, dass ich das Skript am falschen Platz eingefügt habe. Die "strOldFile" Definition und den Rest des Skripts habe ich in einem neuen Modul abgelegt, der dortige Inhalt erscheint dann auch unter "Tabelle1".
Danke schon mal, VG
Stephan
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige