Note: The other languages of the website are Google-translated. Back to English

Googleスプレッドシートの列内の特定のテキストを含むすべての行を削除するにはどうすればよいですか?

グーグルシートにある範囲のデータがあると仮定して、ここで、列のセル値に基づいて行を削除したいとします。 たとえば、Colum Cで「Complete」というテキストを含むすべての行を削除したいとします。この記事では、Googleスプレッドシートでそれを解決する方法について説明します。

スクリプトコードを使用して、列内の特定のテキストを含むすべての行を削除します


スクリプトコードを使用して、列内の特定のテキストを含むすべての行を削除します

列に特定のテキストを含むすべての行を削除するには、次のスクリプトコードを使用すると、次のようになります。

1に設定します。 OK をクリックします。 工具 > スクリプトエディタ、スクリーンショットを参照してください:

docは1を含む行を削除します

2。 新しく開いたコードウィンドウで、次のコードをコピーして空白のコードウィンドウに貼り付けます。スクリーンショットを参照してください。

function deleteRows() {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var s = ss.getSheetByName('delete containing');
  var r = s.getRange('C:C');
  var v = r.getValues();
  for(var i=v.length-1;i>=0;i--)
    if(v[0,i]=='Complete')
      s.deleteRow(i+1);
};

docは2を含む行を削除します

注意:上記のコードでは、「含む削除」は、削除するデータを含むシート名です。「C:C」は、削除する特定のテキストを含む列です。完了」は、行を削除する特定のテキストです。必要に応じて変更してください。

3。 次に、このコードを保存して、[ ラン このスクリプトコードを実行するには、コードウィンドウのボタンをクリックします。スクリーンショットを参照してください。

docは3を含む行を削除します

4。 また、特定のテキスト「Complete」を含むすべての行が一度に削除されました。スクリーンショットを参照してください。

docは4を含む行を削除します


Excelワークシートの特定のテキストを含むすべての行を削除します。

列に特定の値を含むすべての行を削除する場合は、 Kutools for Excel's 特定のセルを選択 この機能を使用すると、条件に一致するすべての行を選択できます。その後、行を一度に削除するだけで済みます。

docは5を含む行を削除します

Kutools for Excel:300以上の便利なExcelアドインがあり、30日以内に制限なしで無料で試すことができます。 今すぐダウンロードして無料トライアル!


最高のオフィス生産性ツール

Kutools for Excelはほとんどの問題を解決し、生産性を80%向上させます

  • 再利用: すばやく挿入 複雑な数式、チャート および以前に使用したものすべて。 セルを暗号化する パスワード付き。 メーリングリストを作成する そしてメールを送る...
  • スーパーフォーミュラバー (複数行のテキストと数式を簡単に編集できます); 読書レイアウト (多数のセルを簡単に読み取って編集する); フィルター範囲に貼り付け...
  • セル/行/列をマージする データを失うことなく; 分割セルコンテンツ; 重複する行/列を組み合わせる...重複セルを防止します。 範囲を比較する...
  • [複製]または[一意]を選択します 行; 空白行を選択 (すべてのセルは空です); スーパーファインドとファジーファインド 多くのワークブックで; ランダム選択...
  • 正確なコピー 数式参照を変更せずに複数のセル。 参照の自動作成 複数のシートに; 箇条書きを挿入、チェックボックスなど...
  • テキストを抽出、テキストの追加、位置による削除、 スペースを削除する; ページング小計の作成と印刷。 セルの内容とコメントを変換する...
  • スーパーフィルター (フィルタースキームを保存して他のシートに適用します); 高度な並べ替え 月/週/日、頻度など。 特殊フィルター 太字、斜体...
  • ワークブックとワークシートを組み合わせる; キー列に基づいてテーブルをマージします。 データを複数のシートに分割; xls、xlsx、PDFをバッチ変換...
  • 300 以上の強力な機能. Office / Excel 2007-2021 および 365 をサポートします。すべての言語をサポートします。 企業や組織に簡単に導入できます。 フル機能の 30 日間無料トライアル。 60日間の返金保証。
kteタブ201905

Officeタブは、タブ付きのインターフェイスをOfficeにもたらし、作​​業をはるかに簡単にします

  • Word、Excel、PowerPointでタブ付きの編集と読み取りを有効にする、パブリッシャー、アクセス、Visioおよびプロジェクト。
  • 新しいウィンドウではなく、同じウィンドウの新しいタブで複数のドキュメントを開いて作成します。
  • 生産性を 50% 向上させ、毎日何百回もマウス クリックを減らすことができます!
officetab下部
コメントを並べ替える
コメント (15)
まだ評価はありません。 最初に評価してください!
このコメントは、サイトのモデレーターによって最小化されました
何もしません。これを修正する方法がわかりません。
このコメントは、サイトのモデレーターによって最小化されました
こんにちは、
以下のコードを変更して、特定のテキストの代わりに色付きのセルを削除できますか?


関数deleteRows(){
var ss = SpreadsheetApp.getActiveSpreadsheet();
var s = ss.getSheetByName('delete contains');
var r = s.getRange('C:C');
var v = r.getValues();
for(var i = v.length-1; i> = 0; i--)
if(v [0、i] =='Complete')
s.deleteRow(i + 1);
};
このコメントは、サイトのモデレーターによって最小化されました
こんにちは、
以下のコードを変更して、テキストの代わりに色付きの行を削除できます


関数deleteRows(){
var ss = SpreadsheetApp.getActiveSpreadsheet();
var s = ss.getSheetByName('delete contains');
var r = s.getRange('C:C');
var v = r.getValues();
for(var i = v.length-1; i> = 0; i--)
if(v [0、i] =='Complete')
s.deleteRow(i + 1);
};
このコメントは、サイトのモデレーターによって最小化されました
これは、セルに指定されたテキストのみが含まれている場合にのみ機能するようです。 特定のテキストを含む他のテキストを含むセルを含む行を削除したい。 たくさんのメールアドレスがあり、Gmailアドレスを含む行を削除したいので、「gmail.com」を含むセルを探しています。

ここでは運がない。
このコメントは、サイトのモデレーターによって最小化されました
次の行を置き換えます:if(v [0、i] =='Complete')
これで:if(v [0、i] .indexOf('gmail')> -1)
このコメントは、サイトのモデレーターによって最小化されました
やってみました。 それはまだ機能していません。
このコメントは、サイトのモデレーターによって最小化されました
私にとってもうまくいきません。
このコメントは、サイトのモデレーターによって最小化されました
v [0、i]でコンマ演算子を使用するのはなぜですか?
このコメントは、サイトのモデレーターによって最小化されました
それを理解しましたが、最大実行時間を超えているため、大きなシートで機能させるのに問題があります。 基本的に、「v」に対して返されるデータは「オブジェクト」タイプであったため、値を検出するには、最初にそれをJSON.stringify()する必要がありました。
function deleteRows(){
var ss = SpreadsheetApp.getActiveSpreadsheet();
var s = ss.getSheetByName('シートの名前で置き換え');
var r = s.getRange('C:C'); //「C:C」をstart:endのように置き換えたい列に置き換えます
var v = r.getValues();
for(var i = v.length-1; i> = 0; i--){
if(JSON.stringify(v [i])。includes('REPLACE YOU WANT TO CHAR YOU WANT TO REPLACE')){
s.deleteRow(i + 1);
}
}
};
このコメントは、サイトのモデレーターによって最小化されました
私は以下を使用してこれを自分で修正しました。
それが機能しない理由は、vが0つの項目[XNUMX]のみを含む配列を返すためです。
また、Javascript .includes()を使用して、そのテキストを「含む」レコードを削除できるようにしました。


関数deleteRows(){
var ss = SpreadsheetApp.getActiveSpreadsheet();
var s = ss.getSheetByName('default');
var r = s.getRange('A:A');
var v = r.getValues();
for(var i = v.length-1; i> = 1; i--)
if(v [i] [0] .includes( "appleid.com")){
console.log('削除された行'+ v [i] [0]);
s.deleteRow(i + 1);
}
};
このコメントは、サイトのモデレーターによって最小化されました
素晴らしい仕事、シームレスに動作します。
このコメントは、サイトのモデレーターによって最小化されました
どうもありがとう。 私にとって素晴らしい作品
このコメントは、サイトのモデレーターによって最小化されました
どうすればこれをより用途の広いものにすることができますか?

Sheet1でブラックリストに登録された単語のリストを作成し、列Aのその単語を含むSheet2のすべての行を削除したいとします。Googleスプレッドシートでこれに完全に固執しています。
このコメントは、サイトのモデレーターによって最小化されました
これで運がいい??
このコメントは、サイトのモデレーターによって最小化されました
Bonjour, j'aime beaucoup ce script. Moi je cherche un script qui permet de supprimer automatiquement tous les éléments ou contenus d'une Colonne après chaque 1 分. Pas supprimer la colonne, mais le contenu de la Colonne. Pouvez vous m'aider ?
ここにはまだコメントが投稿されていません
あなたのコメントを残す
ゲストとして投稿
×
この投稿を評価:
0   文字
推奨される場所

フォローする

著作権©の2009 - WWW。extendoffice.com。 | | 全著作権所有。 搭載 ExtendOffice。 | サイトマップ
MicrosoftおよびOfficeのロゴは、米国MicrosoftCorporationの米国およびその他の国における商標または登録商標です。
SectigoSSLで保護