Verweis auf Zelle in anderer Excel-Datei

  • #1
X

XT560

Bekanntes Mitglied
Themenersteller
Dabei seit
27.02.2002
Beiträge
62
Reaktionspunkte
0
Hallo,

ich möchte in einem Excel-Blatt einen Verweis auf eine Zelle in einer anderen Excel-Datei machen.
Und zwar ist es so, daß ich z.B. in Zelle A1 einen Hyperlink zu eben dieser Datei herstelle. Diesen Link legt der Benutzer selbst an. Dann soll in Zelle A2 automatisch der Inhalt einer Zelle auf einem bestimmten Tabellenblatt in der verlinkten Datei erscheinen. Wie kann ich das machen? Geht sowas auch ohne Makro?

Danke

xt560
 
  • #2
Hi,

bin mir nicht sicher ob ich Dein Problem richtig verstanden habe.

Den Inhalt zweier Zellen miteinander zu verlinken, so daß die Ergebniszelle den Inhalt der Referenzzelle anzeigt (und bei Änderungen der Referenz den dann aktuellen Wert) ist sehr einfach. Man wählt die Referenzzelle aus, kopiert sie und fügt den Inhalt mit Bearbeiten-Inhalte einfügen-Inhalte verknüpfen in die Zieltabelle ein. In der Bearbeitungszeile ist der Pfad zu der Basiszelle zu sehen. Das ist ein externer Verweis, mit Hyperlinks hat das nix zu tun.

Oder habe ich die Frage mißverstanden?

Gruß
Aljechins Kater
 
  • #3
Hallo,

das ist nicht ganz, wie ich es meinte. Ich habe zwei Excel Dateien. Eine heißt AlleProjekte.xls die Andere Projekt1.xls.
Ich möchte nun in AlleProjekte.xls in Zelle A1 einen Hyperlink zu Projekt1.xls erstellen. In Zelle B1 soll nun der Inhalt einer Zelle aus Projekt1.xls automatisch erscheinen.
Nach ein wenig Stöbern im Netz hab ich was gefunden.

Dieser code läßt einen den Inhalt einer Zelle aus einer geschlossenen Excel-Datei auslesen:

Code:
Private Function GetValue(path, file, sheet, ref)
'  Retrieves a value from a closed workbook
  Dim arg As String

'  Make sure the file exists
  If Right(path, 1) <> \ Then path = path & \
  If Dir(path & file) =  Then
    GetValue = File Not Found
    Exit Function
  End If

'  Create the argument
  arg =-> & path & [ & file & ] & sheet &->! & _
   Range(ref).Range(A1).Address(, , xlR1C1)

'  Execute an XLM macro
  GetValue = ExecuteExcel4Macro(arg)
End Function

Durch diesen Code zerteil ich den Hyperlink in Spalte A in Einzelteile und übergebe diese an GetValue:

Code:
Dim FirstRow As Integer-> Erste Zeile, in der ein Auftrag steht
  FirstRow = 7
  Dim Lastrow As Integer->Letzte Zeille, in der ein Wert steht
  Lastrow = Range(A65536).End(xlUp).Row 
  Dim i, Zeichen As Integer->Zähler, erstes Vorkommen von \

For i = FirstRow To Lastrow
  Zeichen = InStrRev(Tabelle1.Range(A & i), \, , vbTextCompare)->Sucht von Re nach Li  nach dem Zeichen \

  p = Mid(Tabelle1.Range(A & i), 1, Zeichen - 1)->Pfad zur Excel-Datei
  f = Mid(Tabelle1.Range(A & i), Zeichen + 1)->Name der Excel-Datei
  s = Betriebsauftrag->Name des Tabellenblattes
  a = A5->Zelle, in der der gewünschte Inhalt stehtsteht

  Tabelle1.Range(B & i) =GetValue(p, f, s, a)->Schreibt den Inhalt in Zelle
Next

Gruß

XT560
 
Thema:

Verweis auf Zelle in anderer Excel-Datei

ANGEBOTE & SPONSOREN

Statistik des Forums

Themen
113.840
Beiträge
707.963
Mitglieder
51.494
Neuestes Mitglied
Flensburg45
Oben