Mam miesięczny arkusz kalkulacyjny, który opiera się na danych z poprzedniego miesiąca. Chciałbym importować te wartości dynamicznie, zamiast wycinać je i wklejać. czy to możliwe? Jak mam to zrobić?
Mam miesięczny arkusz kalkulacyjny, który opiera się na danych z poprzedniego miesiąca. Chciałbym importować te wartości dynamicznie, zamiast wycinać je i wklejać. czy to możliwe? Jak mam to zrobić?
Odpowiedzi:
IMPORTRANGE()
wydaje się być funkcją, którą chcesz.
Z listy funkcji arkuszy kalkulacyjnych Google :
Arkusze kalkulacyjne Google pozwalają odwoływać się do innego skoroszytu w arkuszu kalkulacyjnym, który obecnie edytujesz za pomocą funkcji ImportRange. ImportRange pozwala przeciągać jedną lub więcej wartości komórek z jednego arkusza kalkulacyjnego do drugiego. Aby utworzyć własne formuły ImportRange, wpisz = importRange (klucz do arkusza kalkulacyjnego, zakres). W przypadku języków, w których do separacji dziesiętnej używany jest przecinek, użyj średnika zamiast przecinka, aby oddzielić argumenty w formule.
Klucz do arkusza kalkulacyjnego to STRING, który jest kluczową wartością z adresu URL arkusza kalkulacyjnego.
Zakres to STRING reprezentujący zakres komórek, które chcesz zaimportować, opcjonalnie łącznie z nazwą arkusza (domyślnie pierwszy arkusz). Możesz także użyć nazwy zakresu, jeśli wolisz.
Biorąc pod uwagę, że dwa argumenty są STRINGAMI, musisz zawrzeć je w cudzysłowach lub odwołać się do komórek, które mają w nich wartości łańcuchowe.
Na przykład:
= importrange („abcd123abcd123”, „arkusz 1! A1: C10”) „abcd123abcd123” to wartość w atrybucie „klucz =” w adresie URL docelowego arkusza kalkulacyjnego, a „arkusz 1! A1: C10” to zakres, który należy być importowane.
= importrange (A1, B1) Komórka A1 zawiera ciąg ABCD123ABCD123, a komórka B1 zawiera arkusz 1! A1: C10
Uwaga: Aby użyć ImportRange, musisz zostać dodany jako przeglądarka lub współpracownik do arkusza kalkulacyjnego, z którego ImportRange pobiera dane. W przeciwnym razie pojawi się następujący błąd: „Błąd #REF!: Nie znaleziono żądanego klucza arkusza kalkulacyjnego, tytułu arkusza lub zakresu komórek”.
„klucz” to oczywiście ciąg w adresie URL arkusza kalkulacyjnego, który pasuje do key=
parametru.
Właśnie przetestowałem to, tworząc dwa arkusze kalkulacyjne. W komórce A1 pierwszego wstawiam ciąg. W komórce A1 drugiego wstawiłem =importRange("tgR2P4UTz_KT0Lc270Ijb_A","A1")
i wyświetlał ciąg z pierwszego arkusza kalkulacyjnego. (Twój klucz będzie oczywiście inny.)
(Format funkcji może zależeć od regionu we Francji formuła nie jest ważna z przecinkiem, więc trzeba go zastąpić średnikiem. =importRange("tgR2P4UTz_KT0Lc270Ijb_A";"A1")
)
UWAGI:
Google obecnie określa sztywny limit 50 „formuł odniesienia do różnych skoroszytów” na arkusz kalkulacyjny. Źródło: limity rozmiaru Dokumentów, Arkuszy i Prezentacji Google . (h / t JJ Rohrer )
„Nowy” Arkusz kalkulacyjny Google (który wkrótce stanie się standardem) usuwa 50-krotny limit 50 ”między wzorami skoroszytów ( pomoc Google ) (h / t Jacob Jan Tuinstra )
W „nowych” Arkuszach Google używasz również całego adresu URL jako klucza ( Pomoc Google ) (h / t Punchlinern )
Do Twojej wiadomości, jeśli chcesz odwoływać się do innego arkusza w tym arkuszu kalkulacyjnym, NIE należy ponownie cytować nazwy arkusza:
posługiwać się
=importRange("tgR2P4UTz_KT0Lc270Ijb_A","Sheet Name!A1:A10")
zamiast
=importRange("tgR2P4UTz_KT0Lc270Ijb_A","'Sheet Name'!A1:A10")
W nowym interfejsie powinieneś po prostu móc wpisać =
komórkę, a następnie przejść do drugiego arkusza i wybrać komórkę, którą chcesz. Jeśli chcesz to zrobić ręcznie lub używasz starego interfejsu, możesz po prostu zrobić =Sheet1!A1
, gdzie Sheet1
jest nazwa arkusza i A1
komórka na tym arkuszu, na którym ci zależy. Jest to identyczne z Microsoft Excel.
Znalazłem tę składnię, używając Wstaw -> Zdefiniuj nowy zakres
Cała kolumna A: „Arkusz kalkulacyjny ze spacjami w nazwie”! O: A
Cała kolumna B: „Arkusz kalkulacyjny ze spacjami w nazwie”! B: B
itp.
Następnie możesz użyć go jako:
=COUNTIF('First Page'!B:B, "valueToMatch")
IMPORTRANGE
funkcja może importować dane z innego arkusza kalkulacyjnego. Ustawienie zakresów ma znaczenie (możliwe) tylko w arkuszu kalkulacyjnym. Właśnie to miałem na myśli na zewnątrz.
IMPORTRANGE
jak powiedział Jacob.
oto jak to zrobiłem (reimplementowane 'importrange ()'):
funkcja REMOTEDATA (inKey, inRange) { var outData; var ss = SpreadsheetApp.openById (inKey); if (ss) { outData = ss.getRange (inRange) .getValues (); } return outData; }
= SUMA (ZDALNE („klucz”, „Nazwa arkusza! A1: A10”))
„klucz” jest kluczem dokumentu, można go znaleźć w parametrze „klucz = xyz” adresu URL dokumentu.
dokumentacja dotycząca „ usług arkuszy kalkulacyjnych ” zawiera więcej informacji na ten temat.
SpreadsheetApp.openById()
lub SpreadsheetApp.openByUrl()
-> developers.google.com/apps-script/guides/sheets/…
Zrobiłem to w bardzo prosty sposób, używając Query, na przykład mam 2 arkusze ABC i XYZ i chcę zaimportować zakres od A1 do C30 z Abc do XYZ, kliknij komórkę, w której chcesz wyświetlić zakres, i napisz:
=QUERY(ABC!A1:C30)
Uwaga: Jeśli nazwa arkusza zawiera spacje, to oczywiście piszesz to:
=QUERY('ABC 1'!A1:C30)
QUERY
to zrobić?
importrange("abcd123abcd123", "sheet1!A1:C10")
np. =query(importrange("abcd123abcd123", "sheet1!A1:C10"))
;-)