Importowanie tylko niektórych wierszy między dokumentami arkusza kalkulacyjnego

12

Dokument 1 zawiera wiele wierszy danych.

Jak zaimportować do dokumentu 2 tylko te wiersze, które mają określoną wartość w kolumnie C?

użytkownik2338585
źródło

Odpowiedzi:

15

Podstawy:

Nie jest to tak proste, jak zwykły import przy użyciu tej IMPORTfunkcji. Dzięki tej funkcji możesz wykonywać tylko importy:

=IMPORTRANGE("key","range")

Dodanie funkcji, takiej jak SUMlub FILTER, w ciągu „range” spowoduje błąd. Rozwiązanie należy znaleźć za pomocą QUERYfunkcji:

=QUERY(IMPORTRANGE("key","range"),"SELECT * WHERE Col1='value'")

LUB

=QUERY(IMPORTRANGE("key","A:Z"),"SELECT * WHERE Col1 contains 'value'")

UWAGA:

Po GDZIE definicja kolumny musi być następująca: pierwsza litera, a następnie mała litera. Col będzie działać, COL lub col nie.

Zamawianie:

Po zaimportowaniu możesz zamówić wyniki za pomocą ORDER BYklauzuli:

=QUERY(IMPORTRANGE("key","A:Z"),"SELECT * WHERE Col1 contains 'value' ORDER BY Col1")

Wybierz kolumny:

Tak więc IMPORTRANGEfunkcja nie może wykonać wybranych kolumn, może wykonać tylko jeden blok zakresu. Można to zrobić za pomocą klauzuli QUERYfunkcji SELECT:

=QUERY(IMPORTRANGE("key","A:Z"),"SELECT Col1, Col2, Col3 WHERE Col1 contains 'value' ORDER BY Col1")

Bibliografia:

Jacob Jan Tuinstra
źródło
1
@ user2338585 Proszę zaznaczyć odpowiedź, aby przyszli goście zauważyli !! Powodzenia.
Jacob Jan Tuinstra
hej @Jacob - wielkie dzięki! to niesamowity zapis ... Próbuję zrobić coś bardzo podobnego do tego, ale JEDEN dodatkowy krok ... Chcę, aby wybór danych podstawowych był ustawiany za pomocą wartości komórki w docelowym arkuszu kalkulacyjnym. np. w kolumnie A arkusza docelowego, wiersz 2 Mam wartość (powiedzmy 1000023) i chcę, aby wartości kolumny z pasującego wiersza w źródłowym arkuszu kalkulacyjnym zostały zaimportowane ... Próbowałem użyć komórki A2 w przykładzie wybranych kolumn, używając wielu różne kombinacje, aby to odświeżyć. Frustrujące jest to, że gdy edytuję moją formułę, pokazuje ona wartość A2, gdy jest podświetlona, ​​ale jej nie używa.
Julian Higginson
3

Miałem ten sam problem: właśnie tego użyłem.

= iferror (QUERY (IMPORTRANGE („ https://docs.google.com/spreadsheets/d/[YOUR_KEY_FROM_URL]/edit ”, „Tytuł arkusza, którego używasz! A2: I42”), „wybierz * GDZIE ZAWIERA Col5” Ręcznik ”, 1),„ brak wartości! ”)

Rozbijmy to trochę

IFERROR pozwala wyświetlić przyjazny dla użytkownika komunikat, jeśli się nie powiedzie, ponieważ żadne dane nie są zwracane

QUERY pozwala określić kryteria wyszukiwania. Możesz to pominąć, jeśli po prostu chcesz zaimportować zakres komórek niezależnie.

IMPORTRANGE Użyj podanego adresu URL, a następnie pobierz ten arkusz, patrząc na te zakresy (lewy górny, prawy dolny)

roberthuttinger
źródło
ważne jest, aby pamiętać, że IMPORTRANGE zwraca „mini arkusz kalkulacyjny” w oparciu o to, czego potrzebujesz: A2: I42. W tym przypadku 9 kolumn. Nawet jeśli oryginalny arkusz ma 20 kolumn, zapytanie ma dostęp tylko do zwracanych kolumn. Więc jeśli QUERY użyłoby Col12, zwróciłoby błąd, ponieważ zwrócono tylko 9.
roberthuttinger