Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
556to560
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
556to560
556to560
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Excel datei in Arbeitsmappe mit Mausklick öffnen

Excel datei in Arbeitsmappe mit Mausklick öffnen
01.02.2005 14:47:13
Timo
Hali Halo,
folgender Sachverhalt:
In zelle A1 steht der Name der Datei z. B. Hallo.xls
Diese Datei kann in irgendeinem Verzeichnis mit Unterordnern angelegt sein.
Nun soll sich mit einem Klick auf die Zelle B1 diese Datei öffnen.
Ich habe mir zwar überlegt dies mit Command Buttons zu lösen, nur kann es sein, das sich die Dateinamen ändern und dadurch das es viele hundert Dateien sind möchte ich nicht 100 Command Buttons einfügen. Gibt es hierfür nicht irgendeine Möglichkeit es einfacher zu lösen?
mfg
Timo

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Excel datei in Arbeitsmappe mit Mausklick öffn
01.02.2005 15:13:09
Matthias
Hallo Timo,
ich hab jetzt mal einen Doppelklick auf B1 angenommen:
(Code ins Tabellenblattmodul)
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Target.Address(0, 0) = "B1" Then
Dim anz As Integer
Const Verz = "c:\test"
Cancel = True
With Application.FileSearch
.LookIn = Verz
.FileType = msoFileTypeExcelWorkbooks
.Filename = [A1].Value
.SearchSubFolders = True
.Execute
anz = .FoundFiles.Count
If anz = 0 Then
MsgBox "Keine Datei namens " & [A1].Value & " in " & Verz & " gefunden!"
Exit Sub
ElseIf anz > 1 Then
MsgBox "Es wurden " & anz & " Dateien namens " & [A1].Value & " in " & Verz & " gefunden!"
Exit Sub
Else
Workbooks.Open Filename:=.FoundFiles(1)
End If
End With
End If
End Sub
Du kannst das Makro aber auch einem Button zuordnen.
Grüße,
Matthias
Anzeige
AW: Excel datei in Arbeitsmappe mit Mausklick öffn
Timo
Hallo,
man bust du schnell. Genau das war es. Respekt. Vielen, vielen Dank
gruß
timo
was vergessen. Hilfe!!!
Timo
Hallo nochmal
der Code funktioniert wunderbar. Nur hab ich vergessen zu schreiben, das es z. B. in A2 ein anderer Name steht und evtl der angeklickt wird. Es stehen viele Datenblattnamen untereinander und je nach dem welches Blatt man öffnen will soll man einen Doppelklcik auf die daneben zugehörige Zelle machen also z. B. A7 = Bla.xls B7 = DoppelCklic
Weiß hier noch jemand Rat? Ich verzweifel gleich :-)
AW: was vergessen. Hilfe!!!
01.02.2005 15:31:42
Matthias
Hallo Timo,
bittesehr:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Const DoppelklickBereich = "B1:B20"
If Not Intersect(Target, Range(DoppelklickBereich)) Is Nothing Then
Dim anz As Integer
Dim fn As String
Const Verz = "c:\test"
Cancel = True
fn = Target.Offset(0, -1).Value
With Application.FileSearch
.LookIn = Verz
.FileType = msoFileTypeExcelWorkbooks
.Filename = fn
.SearchSubFolders = True
.Execute
anz = .FoundFiles.Count
If anz = 0 Then
MsgBox "Keine Datei namens " & fn & " in " & Verz & " gefunden!"
Exit Sub
ElseIf anz > 1 Then
MsgBox "Es wurden " & anz & " Dateien namens " & fn & " in " & Verz & " gefunden!"
Exit Sub
Else
Workbooks.Open Filename:=.FoundFiles(1)
End If
End With
End If
End Sub
Gruß Matthias
Anzeige
Danke
Timo
Jup, es geht. Unglaublich, ich dreh am Rad. Bist eine richtige Kapazität.
DAAAAANKE
AW: Danke
01.02.2005 15:57:56
Matthias
Hallo Timo,
solch ein Lob baut mich unheimlich auf ;-)
deshalb extra für dich noch die Möglichkeit, den "Doppelklickbereich" automatisch an die gefüllten Zeilen in Spalte A anzupassen:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Dim DoppelklickBereich As Range
Set DoppelklickBereich = Range(Range("B1"), Range("B" & Range("A65536").End(xlUp).Row))
If Not Intersect(Target, DoppelklickBereich) Is Nothing Then
der Rest wie vorher!
Gru0 Matthias
Anzeige
AW: Danke
02.02.2005 07:55:32
nochmals
Hallo,
das Lob war doch klar. Bei der Arbeit die du dir gemacht hast, erkenne ich die Leistung auf jeden Fall an. Ich könnte sowas nicht programmieren. Respekt und vielen Danke nochmals.
Gruß

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige