Utwórz bibliotekę Apps Script, której możesz używać do usuwania zduplikowanych wierszy w danych arkusza kalkulacyjnego.
Cele
- Skonfiguruj skrypt.
- Uruchom skrypt.
Wymagania wstępne
Aby skorzystać z tego szablonu, musisz spełnić te wymagania wstępne:
- Konto Google (konta Google Workspace mogą wymagać zatwierdzenia przez administratora).
- przeglądarka internetowa z dostępem do internetu;
Konfigurowanie skryptu
Aby utworzyć bibliotekę, wykonaj te czynności:
- Zaloguj się na konto Google.
- Aby otworzyć edytor skryptów, wejdź na script.google.com.
- W lewym górnym rogu kliknij Nowy projekt.
Usuń kod w edytorze skryptu i wklej kod poniżej.
Kliknij Zapisz .
W lewym górnym rogu kliknij Projekt bez tytułu.
Nazwij skrypt Usuwanie duplikatów wierszy i kliknij Zmień nazwę.
Kliknij Wdróż > Nowe wdrożenie.
Obok opcji Wybierz typ kliknij Włącz typy wdrożenia > Bibliotek.
Wpisz opis biblioteki, np. Usuń zduplikowane wiersze. Ten opis może wyświetlić każdy, kto ma dostęp do biblioteki.
Kliknij Wdróż.
Po lewej stronie kliknij Ustawienia projektu .
W sekcji Identyfikatory skopiuj identyfikator skryptu, aby użyć go w następnym kroku.
Uruchamianie skryptu
Aby korzystać z biblioteki, musisz mieć co najmniej uprawnienia do wyświetlania w projekcie Apps Script. Ponieważ biblioteka została utworzona przez Ciebie, masz do niej wymagane uprawnienia. Jeśli chcesz, aby inni mogli korzystać z biblioteki, przyznaj im uprawnienia do wyświetlania projektu Apps Script.
Aby korzystać z biblioteki, wykonaj te czynności:
- Otwórz arkusz kalkulacyjny Arkuszy Google zawierający dane z powtarzającymi się wierszami. Aby użyć przykładowego arkusza kalkulacyjnego, utwórz kopię przykładowego arkusza kalkulacyjnego z duplikatami wierszy.
- Kliknij Rozszerzenia > Apps Script.
- Obok opcji Biblioteki kliknij Dodaj bibliotekę .
- W sekcji Identyfikator skryptu wklej identyfikator skryptu z biblioteki projektu Apps Script skopiowanego w poprzedniej sekcji.
- Kliknij Wyszukaj.
- W sekcji Wersja wybierz 1.
- Kliknij Dodaj.
Usuń kod w edytorze skryptu i wklej kod poniżej.
function runLibrary() { Removeduplicaterows.removeDuplicates(); }
W menu funkcji wybierz runLibrary.
Kliknij Wykonaj.
Wróć do arkusza kalkulacyjnego, aby wyświetlić zaktualizowane dane bez duplikatów wierszy.
Sprawdzanie kodu
Aby sprawdzić kod Apps Script dla tego rozwiązania, kliknij Wyświetl kod źródłowy poniżej:
Wyświetl kod źródłowy
Najpierw skrypt wysyła pojedyncze żądanie do arkusza kalkulacyjnego, aby pobrać wszystkie dane. Możesz odczytać arkusz wiersz po wierszu, ale operacje JavaScript są znacznie szybsze niż komunikacja z innymi usługami, takimi jak Arkusz kalkulacyjny. Im mniej połączeń nawiązujesz, tym szybciej to działa. Jest to ważne, ponieważ każde uruchomienie skryptu trwa maksymalnie 6 minut.
Zmienna data
to dwuwymiarowa tablica JavaScript zawierająca wszystkie wartości w arkuszu. newData
to pusty tablica, do której skrypt umieszcza wszystkie niepowtarzalne wiersze.
Pierwszy cykl for
iteruje po każdym wierszu dwuwymiarowego tablicowego ciągu znaków data
. W przypadku każdego wiersza drugi cykl sprawdza, czy w tablicy newData
istnieje już inny wiersz z pasującymi danymi. Jeśli nie jest to duplikat, wiersz jest dodawany do tablicy newData
.
Na koniec skrypt usuwa istniejące dane z arkusza i wstawia zawartość tablicy newData
.
Reguły przekształcania
Możesz edytować bibliotekę według własnych potrzeb. Poniżej znajduje się opcjonalna modyfikacja.
Usuwanie wierszy z pasującymi danymi w niektórych kolumnach
Zamiast usuwać wiersze, które są identyczne, możesz usunąć wiersze z pasującymi danymi tylko w jednej lub 2 kolumnach. Aby to zrobić, możesz zmienić instrukcję warunkową.
W przykładowym kodzie zaktualizuj ten wiersz:
if(row.join() == newData[j].join()){ duplicate = true; }
Zastąp wiersz tym kodem:
if(row[0] == newData[j][0] && row[1] == newData[j][1]){ duplicate = true; }
Powyższe wyrażenie warunkowe znajduje duplikaty za każdym razem, gdy 2 wiersze mają te same dane w pierwszej i drugiej kolumnie arkusza.
Współtwórcy
Ten przykład został przygotowany przez Romaina Vialarda, eksperta ds. programowania w Google. Obserwuj Romaina na Twitterze @romain_vialard.
Ten przykład jest obsługiwany przez Google przy pomocy ekspertów Google ds. programowania.