Zellbezug aus Datei | Wert aus Zelle an Dateinam
#1
Liebe ExcelUser

Iah habe eine Tabelle wo ich in Zelle B2 den Wert aus Zelle B2 einer anderen Execeldatei haben möchte.
Die Formel dazu ist recht einfach.
Code:
='G:\XXX\YYY\ZZZ\[208510.xlsm]Tabelle1'!B2
Nun möchte ich aber gerne, das der Dateiname aus dem Inhalt von Zelle A2 benutz wird.
Mein Beispiel wenn ich Zelle A2 der Wert "208510" steht.
Code:
='G:\XXX\YYY\ZZZ\[&A2&.xlsm]Tabelle1'!B2

Hintergrund ist, dass ich dies in der Tabelle auf 300 Zeilen anwenden möchte und ich nicht jedes der 300 Zeilen einzeln verlinken möchte.
Habt Ihr hier eine Idee?

LG Marko
Antworten Top
#2
Hallo,

Zitat:='G:\XXX\YYY\ZZZ\[208510.xlsm]Tabelle1'!B2
um dies auf 300 Zellen anzuwenden:
='G:\XXX\YYY\ZZZ\[208510.xlsm]Tabelle1'!B2:B301
Mit lieben Grüßen
Anton.

Windows 10 64bit
Office365 32bit
Antworten Top
#3
Hi,

das geht so nur ganz theoretisch mit INDIREKT. Der große Nachteil: Die Quellmappe muss geöffnet sein - und das in den meisten Fällen keine Option.
Besser: Mit Suchen und ersetzen den alten durch den neuen Dateinamen austauschen.
Strg + f, suchen nach: 208510.xlsm und ersetzen durch: 208511.xlsm - Alle ersetzen.
Antworten Top
#4
Vielen Dank für eure Antworten. EA1950 hat es leider falsch Interpretiert.
Ich möchte nicht 300 Zellwerte aus der Zieldatei, sondern je einen Wert aus 300 unterschiedlichen Zieldateien in einer Datei auf je einer Zeile anzeigen. Ohne dabei jede Einzeln verlinken zu müssen.

Bei einem Hyperlink z.b. Kann man den den Namen der Zieldatei aus einer Zelle lesen lassen.
Bei einem Zellbezug aus einer anderen Datei bekomme ich es nicht hin.

vielleicht hat ja noch eienr eine Idee. Vielen Dank
Antworten Top
#5
Hallo

Hier noch eine Lösungsmöglichkeit per VBA

Die Tabelle sieht bei mir im Beispiel so aus
Arbeitsblatt mit dem Namen 'Tabelle1'
ABCD
1Wert aus M2 1Mappe2.xlsx
2Wert aus M2 2

ZelleFormel
A1='E:\Excel\Temp\[Mappe2.xlsx]Tabelle1'!$A$1
A2='E:\Excel\Temp\[Mappe2.xlsx]Tabelle1'!$A$2


- Rechtsclick auf den Tabellenblattreiter
- Code anzeigen
- Rechts diesen Code rein kopieren

Bei Änderungen des Dateinamens in D1 wird der festgelegte Formelbereich durchsucht und der Name getauscht


Code:
Private Sub Worksheet_Change(ByVal Target As Range)
    Dim Datei As Range, FRng As Range
    Set Datei = [D1] ' Dateiname
    Set FRng = [A1:A10] 'Bereich mit Formeln
   
    If Not Intersect(Target, Datei) Is Nothing Then
        FRng.Replace What:="[*]", Replacement:="[" & Datei & "]", LookAt:=xlPart _
            , FormulaVersion:=xlReplaceFormula2
    End If
End Sub

LG UweD
Antworten Top
#6
Hallo,

aus 300 Dateien einen Wert konsolidieren - ich würde mal sagen, da stimmt das Datenmodell bzw. der Workflow aber überhaupt nicht.

Wie dem auch sei, aber dafür würde ich keine Formel nehmen, sondern auf ein Makro zurückgreifen,
https://www.excel-inside.de/beispiele_vb...e-auslesen
welches in einer Schleife alle Dateien auswertet.

Gruß
Knobbi38
Antworten Top
#7
Zitat:Bei einem Hyperlink z.b. Kann man den den Namen der Zieldatei aus einer Zelle lesen lassen.

Na klar - das weiß ich auch.

Zitat:Bei einem Zellbezug aus einer anderen Datei bekomme ich es nicht hin.

Auch dazu habe ich Dir was geschrieben, nur bis Du mit keinem Wort darauf eingegangen. Weshalb nicht?
Antworten Top
#8
Lieber Boris,

danke für Hilfe, wirklich. Aber ich denke es scheitert an meiner erklärung oder dem Verständnis.
Ich weiß nicht wie ich es besser erklären soll.

Ich möchte in einer Excel Werte aus 300 anderen Excel in einer Liste zusammenfassen.
Es sind 300 Lagerkarten mit verschiedenen Werten. Die Zellwerte stehen in den 300 Dateien immer in der gleichen Zelle. 
Die Datein haben alle eine 6-Stellige Nummer als Name.

Anbei einmal ein Bild meiner Datei:
   

Im der Spalte D ist folgende Formel hinterlegt. Beispiel Zelle "D1"
Code:
='G:\XXX\YYY\ZZZ\[208510.xlsm]Karte'!$B$5
Der Dateiname "208510.xlsm" ist der Zellwert in Spalte A, selbes gilt für die anderen Zellen in Spalte D.

Jetzt Suche ich eine Formel, die automatsich den Wert aus der Spalte A mit endung ".xlsm" als Dateiname erkennt und mir aus der enstrp. Datei den Zellwert aus "Karte!$B5" wiedergibt.
Habe ich es jetzt verständlich ausgedrückt?

LG Marko
Antworten Top
#9
Zitat:Habe ich es jetzt verständlich ausgedrückt?

Ich habe jedes Wort Deiner Anfrage direkt zu Beginn verstanden - und Dir auch 2(!) Lösungsmöglichkeiten genannt.
Nochmal: Weshalb gehst Du darauf nicht ein?
Antworten Top
#10
Deine möglichkeit 1 ist keine Option. 1. Bräuchte ich ein Beispiel, und wie du schreibst is es keine Oprion, da ich nich 300 mappen geöffnet haben kann.
Die 2. Möglichkeit mit suchen und ersetzten ist ebenso Umständlich wenn ich 300x den namen per Hand schreiben muss. Oder ich verstehe es nicht.

LG
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste