\r\n\r\n
googlesheetsでは、シンプルな統合関数からカスタムスクリプトまで、3つの方法で文書から重複する項目を削除することができます。Excelほど明確ではありませんが、Sheetsはスプレッドシートから重複する項目を削除するためのより多様なアプローチを提供します。
更新:googlesheetsに組み込まれた「重複を取り除く」ツールを使って、この作業を行うことができるようになりました。
関連:Excelで重複した行を削除する方法
最初に紹介するのは、内蔵のgooglesheets関数を使ってユニークなエントリーをすべて見つけ出し、データセット内の他のものをすべて削除できるようにする方法です。
ブラウザを起動し、スプレッドシートを開いて開始します。
次に、データを出力したい空のセルtype=UNIQUEをクリックし、ダイアログウィンドウに表示される推奨関数をクリックします。
ここから、セルの範囲を手動で入力するか、関数で分析するためにセルを強調表示します。
まるで魔法のように、シーツはユニークな結果をすべて選び出し、選択したセルに表示します。
情報をコピーしてGoogleシートに貼り付ける場合、貼り付けたい箇所で右クリックし、「特殊な値を貼り付ける」>「値のみを貼り付ける」を選択してください。そうしないと、数式のみが新しいセルにコピーされます。
次の方法は、googlesheetsにアドオンをインストールする必要があります。アドオンを使用したことがない場合、アドオンはブラウザの拡張機能に似ており、ドキュメント、ワークシート、スライドショーなど、Google Appsの追加機能のロックを解除することができます。
この例では、AbleBits社のRemove Duplicatesを使用します。 これは、30日分の****を提供しています。生涯購読は、プレミアム会員で59.60ドル、年間33.60ドルとなっています。
関連: ベストGoogleシーツプラグイン
アドオンを取得するには、Google Sheetsでファイルを開き、"add***"をクリックし、"get add***"をクリックします。
検索欄に「Duplicates」と入力し、「Free」ボタンをクリックします。
アドオンをインストールするために使用するGoogleアカウントをクリックします。
アドオンをインストールする際には、特定の権限を付与する必要があります。これらは、アドオンの動作の基本となるものです。アドオンをインストールする前に、許可事項を十分に理解し、開発者を信頼してください。
"許可 "をクリックする
重複の削除」アドインは、単一の列または複数の行に渡って使用することができます。この例では、行の中で重複する項目を探しますが、1列の場合でも基本的に同じ効果が得られます。
スプレッドシートで、重複する項目を検索するすべての行をハイライトします。その後、「アドオン」→「重複の削除」→「重複または一意の行を検索」をクリックします。
アドインを開いたら、表示されている範囲が正しいことを確認し、"次へ "をクリックします。
次に、検索したいデータの種類を選択します。重複を削除したいので、"Duplicates "を選択し、"Next "をクリックします。
検索したいアドインの列を選択します。ヘッダーを含まない場合、またはテーブルにヘッダーが全くない場合は、「MyTablehaseheaders」オプションのチェックが外れていることを確認してください。そうでない場合は、最初の行は省略されます。"Next "をクリックします。
最後に、アドオンがその結果をどのように処理するかを選択し、"Finish "をクリックします。
結果ページで、アドオンモジュールは、4つの重複行が見つかり削除されたことを教えてくれます。
ほら!重複した行がすべてワークシートから消えます。
ワークシートから重複した項目を削除する最後の方法は、カスタムで軽量なウェブアプリケーションを作成するための無料のクラウドベースの開発プラットフォームであるgoogleappscriptを使用することです。Googleは豊富なドキュメントを提供しており、重複した項目を削除するスクリプトも提供しています。コードをコピーして、アドインを検証し、ワークシートで実行するだけです。
関連:スクリプトエディターでGoogle Appsを超高速化する方法
現在のGoogleワークシートで、"ツール"、"スクリプトエディタ "の順にクリックします。
googleappsスクリプトは、空のスクリプトを含む新しいタブで開かれます。
ファイルから空の関数を削除し、以下のコードを貼り付けてください。
//Removes duplicate rows from the current sheet. function removeDuplicates() { //Get current active Spreadsheet var sheet = SpreadsheetApp.getActiveSheet(); //Get all values from the spreadsheet's rows var data = sheet.getDataRange().getValues(); //Create an array for non-duplicates var newData = []; //Iterate through a row's cells for (var i in data) { var row = data[i]; var duplicate = false; for (var j in newData) { if (row.join() == newData[j].join()) { duplicate = true; } } //If not a duplicate, put in newData array if (!duplicate) { newData.push(row); } } //Delete the old Sheet and insert the newData array sheet.clearContents(); sheet.getRange(1, 1, newData.length, newData[0].length).setValues(newData); }スクリプトを保存して名前を変更し、終了したら「実行」アイコンをクリックします。
スクリプトに必要な権限を確認し、スプレッドシートへのアクセスを許可する必要があります。「View Permissions」をクリックすると、このスクリプトに必要なアクセス権限が表示されます。
プロンプトに同意し、[許可]をクリックしてスクリプトを認証します。
実行終了後、ワークシートに戻ると、前の方法と同じように、重複した項目がすべてファイルから消えています!
残念ながら、データが上記のようなテーブルになっている場合、このスクリプトはテーブルのエントリ数に合わせてサイズを変更することができないので、手動で問題を解決する必要があります。
以上です。統合されたUnique機能、サードパーティのアドイン、Appsスクリプトを使ったカスタムアドインの作成など、Googleはスプレッドシート内の重複項目を管理するさまざまな方法を提供しています。