Datei vom beliebigen Dateityp starten

Hallo, hallo,

ich möchte aus Access heraus Dateien öffnen,
deren Name samt Pfad bereits in einer Tabelle gespeichert sind.

Ich wüsste zwar wie ich eine Datei vom Typ .xls öffne,
würde aber gerne alle möglichen Dateien öffnen können
(*.doc , *.gif , *.txt, *.wav etc.).
Genau gesagt mit der Anwendung, die unter Windows mit dem Dateityp verbunden ist.

Weiss jemand vielleicht Rat?
Vielen Dank für alle Anregungen

Grüße…

hallo hallo :smile:
das kannst du mit einem api call lösen

Private Const SW_SHOWNORMAL = 1

Private Declare Function ShellExecute Lib „shell32.dll“ Alias „ShellExecuteA“ (ByVal hWnd As Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long

Call ShellExecute(0&, vbNullString, „c:\meinedatei.xyz“, vbNullString, c:, SW_SHOWNORMAL)

gruss

Hallo Stefan,

wenn Deine Dateinamen schon in einer Tabelle gespeichert sind,
formatiere dieses Feld doch als HYPERLINK im Entwurf der Tabelle.

In einem Formular kannst Du dort dieses Feld darstellen und beim Klick da drauf öfnet sich diese Datei mit dem zugehörigen Programm …

gruss moritzbock

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Hallo Giuseppe,

kann ich auf ähnliche Weise auch ein Windows Kommando starten?
z.B. Xcopy, um die aktuelle DB zu kopieren?
Habe zwar einiges ausgetestet, vielleicht kannst Du mir sagen welche Parameter ich ändern muss.

Danke und Grüße…

hallo hallo :smile:
das kannst du mit einem api call lösen

Private Const SW_SHOWNORMAL = 1

Private Declare Function ShellExecute Lib „shell32.dll“ Alias
„ShellExecuteA“ (ByVal hWnd As Long, ByVal lpOperation As
String, ByVal lpFile As String, ByVal lpParameters As String,
ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long

Call ShellExecute(0&, vbNullString, „c:\meinedatei.xyz“,
vbNullString, c:, SW_SHOWNORMAL)

gruss

hallo

exe dateien kannst du mit dem normalen vba befehl „shell“ starten.

jedoch würde ich eine datei im vba mit dem befehl „filecopy“ kopieren. wenn du aber die aktuelle geöffnete datei kopieren willst könntest du probleme kriegen, weil sie schon geöffnet ist…

gruss