特定の列の値が 0 より大きいスプレッドシート内のすべての行を自動的に強調表示するように Google スプレッドシートを取得しようとしています。いくつかの解決策を探しましたが、うまくいきませんでした。
列にさまざまなメトリックがあるため、列「I」の値がゼロより大きいすべての行を強調表示したいとします。
誰かがこれで私を助けることができますか?
特定の列の値が 0 より大きいスプレッドシート内のすべての行を自動的に強調表示するように Google スプレッドシートを取得しようとしています。いくつかの解決策を探しましたが、うまくいきませんでした。
列にさまざまなメトリックがあるため、列「I」の値がゼロより大きいすべての行を強調表示したいとします。
誰かがこれで私を助けることができますか?
条件付き書式設定ページで、使用可能なオプションのリストから [カスタム数式は] を選択し、テキスト フィールドに次のように入力します。
=$I:$I>0
書式設定オプションを選択し、範囲フィールドに範囲を入力します。例えば:
A2:Z100
単一の列にのみ適用されるため、より単純なバージョンがあります(テキストが強調表示されないように複雑にしています):
書式設定をクリアし、ColumnI と書式設定、条件付き書式設定...、次の場合にセルを書式設定... を選択しますCustom formula is
。
=and(isnumber(I1),I1>0)
お好みの塗りつぶし付きDone。
関連するセルだけでなく行全体をフォーマットする場合は、[範囲に適用] を変更し (A1:Z1000 など$
)、以下のようにアンカー ( s)を追加します。
=and(isnumber($I1),$I1>0)
私が知っている唯一の解決策は、スクリプトを作成することです。
リンク: Google Apps スクリプト
以下はきれいではありませんが、機能します。
function myFunction() {
var I_INDEX = 1;
var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Highlight rows");
var dataRange = sheet.getDataRange();
var dataValues = dataRange.getValues();
for (var i=1; i<=dataRange.getNumRows(); i++) {
var row = sheet.getRange(i, 1, 1, 2);
if (dataValues[i-1][I_INDEX] > 0) {
row.setBackground("red");
}
}
}
例を参照してください。[ツール] --> [スクリプト エディタ...] を使用して、スクリプトを表示/実行します。