Utwórz bibliotekę Apps Script, w której możesz usuwać zduplikowane wiersze w danych arkusza kalkulacyjnego.
Cele
- Skonfiguruj skrypt.
- Uruchom skrypt.
Wymagania wstępne
Aby korzystać z tego przykładu, musisz spełnić te wymagania wstępne:
- konta Google (konta Google Workspace mogą wymagać zatwierdzenia przez administratora),
- Przeglądarka 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ń cały kod z edytora skryptów i wklej go poniżej.
Kliknij Zapisz .
W lewym górnym rogu kliknij Projekt bez tytułu.
Nazwij skrypt Usuń zduplikowane wiersze i kliknij Zmień nazwę.
Kliknij Wdróż > Nowe wdrożenie.
Obok opcji Wybierz typ kliknij Włącz typy wdrożeń > Biblioteka.
Wpisz opis biblioteki, np. Usuń zduplikowane wiersze. Każdy, kto ma dostęp do biblioteki, może wyświetlić ten opis.
Kliknij Wdróż.
Po lewej stronie kliknij Ustawienia projektu .
W sekcji Identyfikatory skopiuj identyfikator skryptu, który będzie Ci potrzebny w kolejnym kroku.
Uruchom skrypt
Aby korzystać z biblioteki, musisz mieć co najmniej uprawnienia do wyświetlania w jej projekcie Apps Script. Biblioteka została utworzona, więc masz wymagane uprawnienia, aby z niej korzystać. Jeśli chcesz zezwolić innym na korzystanie z biblioteki, przyznaj im uprawnienia do wyświetlania projektu Apps Script.
Aby użyć biblioteki, wykonaj te czynności:
- Otwórz arkusz kalkulacyjny Arkuszy Google zawierający dane ze zduplikowanymi wierszami. Aby użyć przykładowego arkusza kalkulacyjnego, utwórz kopię arkusza Przykładowe zduplikowane wiersze.
- Kliknij Rozszerzenia > Apps Script.
- Obok opcji Biblioteki kliknij Dodaj bibliotekę .
- W sekcji Identyfikator skryptu wklej identyfikator skryptu z projektu Apps Script biblioteki skopiowanego w poprzedniej sekcji.
- Kliknij Wyszukaj.
- W sekcji Wersja wybierz 1.
- Kliknij Dodaj.
Usuń cały kod z edytora skryptów i wklej go poniżej.
function runLibrary() { Removeduplicaterows.removeDuplicates(); }
W menu funkcji wybierz runLibrary.
Kliknij Uruchom.
Wróć do arkusza kalkulacyjnego, aby wyświetlić zaktualizowane dane bez zduplikowanych wierszy.
Sprawdź kod
Aby sprawdzić kod Apps Script tego rozwiązania, kliknij Wyświetl kod źródłowy poniżej:
Wyświetl kod źródłowy
Najpierw skrypt generuje jedno wywołanie do arkusza kalkulacyjnego w celu pobrania wszystkich danych. Arkusz może czytać wiersz po wierszu, ale operacje JavaScript są znacznie szybsze niż w przypadku innych usług, takich jak Arkusz kalkulacyjny. Im mniej połączeń wykonujesz, tym szybciej biegnie. To ważne, ponieważ maksymalny czas działania każdego skryptu wynosi 6 minut.
Zmienna data
to dwuwymiarowa tablica JavaScript, która zawiera wszystkie wartości z arkusza. newData
to pusta tablica, w której skrypt umieszcza wszystkie niepowtarzające się wiersze.
Pierwsza pętla for
występuje po każdym wierszu w tablicy dwuwymiarowej data
. W przypadku każdego wiersza druga pętla sprawdza, czy w tablicy newData
znajduje się już inny wiersz z pasującymi danymi. Jeśli wiersz nie jest duplikatem, wiersz jest przekazywany do tablicy newData
.
Na koniec skrypt usuwa istniejącą treść arkusza i wstawia zawartość tablicy newData
.
Modyfikacje
Możesz ją edytować według swoich potrzeb. Poniżej przedstawiamy opcjonalną modyfikację.
Usuwanie wierszy z pasującymi danymi w niektórych kolumnach
Zamiast usuwać wiersze, które są w całości dopasowane, możesz usunąć wiersze z pasującymi danymi w jednej lub dwóch kolumnach. Możesz zmienić instrukcję warunkową.
W przykładowym kodzie zaktualizuj ten wiersz:
if(row.join() == newData[j].join()){ duplicate = true; }
Zastąp ten 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
Tę próbkę utworzyła Romain Vialard, ekspert ds. programistów Google. Obserwuj Romana na Twitterze: @romain_vialard.
Ta próbka jest udostępniana przez Google z pomocą Ekspertów Produktowych Google.