Korzystanie z dynamicznych łączy do zewnętrznych skoroszytów w programie Excel

0

Mam główny skoroszyt, który musi pobierać dane z określonego datowanego podfolderu. Data jest określana przez użytkownika przed uruchomieniem makr.

Skoroszyt główny działa tylko jako warstwa prezentacji, a dane źródłowe / podstawowe w datowanych podfolderach mają spójne nazwy i formaty.

Załóżmy, że w moim głównym skoroszycie „Arkusz1” mam następującą funkcję A1:

='C:\Development\GridsResults\20101115\[DATA_sheet_20101115_D.xlsx]Stresses'!$C$9

Zauważysz, że w łączu pliku znajdują się dwie „przestarzałe” części - musi to dostarczyć użytkownik. W tym przypadku podana data to 15-Nov-2010. Teraz, jeśli użytkownik dostarcza 23-Nov-2010, powyższy link powinien być

='C:\Development\GridsResults\20101120\[DATA_sheet_20101120_D.xlsx]Stresses'!$C$9

Mam już formułę, która tworzy powyższe ścieżki plików w moim Links arkusz w moim głównym skoroszycie. Jest to dynamiczna część, która tworzy linki. Teraz w Links arkusz, załóżmy, że rezultat mojej magii tkwi w komórce B3 i jest to nazwany zakres zwany DATA to znaczy

C:\Development\GridsResults\20101120\[DATA_sheet_20101120_D.xlsx]

Więc w teorii, jaki powinien być wynik, to ta komórka A1 na Sheet1 w moim głównym skoroszycie należy użyć wygenerowanej ścieżki pliku

="'" & DATA & "Stresses'!$C$9

Czy istnieje kombinacja standardowych funkcji programu Excel, które mogą to osiągnąć?

Ahmad
źródło

Odpowiedzi:

0

Posługiwać się =INDIRECT("'" & DATA & "Stresses'!$C$9").

Toc
źródło
czy przywoływany skoroszyt nie musi być otwarty, aby go używać?
Ahmad
tak, trzeba to otworzyć
Toc
0

Nie wierzę, że byłoby to możliwe przy użyciu standardowych funkcji programu Excel. jeśli tak, to na pewno nie wyglądałoby ładnie.

Myślę, że najlepszym rozwiązaniem byłoby stworzenie makra; oczywiście metoda aktywacji zależy od ciebie. Makro wyglądałoby mniej więcej tak.

Dim L1 As Variant, L2 As Variant
L1 = ThisWorkbook.Names("DATA").RefersToRange
L2 = "='" & L1 & "Stresses'!R9C3"
Sheets("Sheet1").Range("A1").FormulaR1C1 = L2
Xantec
źródło
0

http://numbermonger.com/2012/02/11/excel-pull-function-creating-dynamic-links-to-closed-workbooks/

Link powyżej może być dobrym rozwiązaniem. Nie miałem czasu, żeby to sprawdzić.

Nathalii.
źródło
Chociaż ten link może odpowiedzieć na pytanie, lepiej jest dołączyć tutaj istotne części odpowiedzi i podać link do odniesienia. Odpowiedzi tylko na link mogą stać się nieprawidłowe, jeśli połączona strona zmieni się lub zniknie.
Andrea
I to jest właśnie taki przypadek. Domena nie istnieje.
s3m3n