[解決済み] 列の最後の値を選択する
2022-10-25 14:59:33
質問
G列にいくつかの値があるスプレッドシートを持っています。いくつかのセルは、間に空白があり、私はその列から別のセルに最後の値を取得する必要があります。
のようなものです。
=LAST(G2:G9999)
ただし
LAST
は関数ではありません。
どのように解決するのですか?
この方法は、文字列をパラメータとして受け取ります。シートに何行あるか調べます。指定された列のすべての値を取得します。空文字列でない値を見つけるまで、値の端から端までループします。最後に、その値を返します。
スクリプトです。
function lastValue(column) {
var lastRow = SpreadsheetApp.getActiveSheet().getMaxRows();
var values = SpreadsheetApp.getActiveSheet().getRange(column + "1:" + column + lastRow).getValues();
for (; values[lastRow - 1] == "" && lastRow > 0; lastRow--) {}
return values[lastRow - 1];
}
使用方法です。
=lastValue("G")
EDITです。
自動で更新する機能が欲しいというコメントに対して。
私が見つけた最良の方法は、上記のコードでこれを使用することです。
function onEdit(event) {
SpreadsheetApp.getActiveSheet().getRange("A1").setValue(lastValue("G"));
}
のようなセルで関数を使用する必要はなくなる。 使用方法 セクションで述べられているように、セル内で関数を使用する必要はなくなります。その代わり、更新したいセルと追跡したい列をハードコードすることになります。これを実装するもっと雄弁な方法 (できればハードコードされていないもの) がある可能性もありますが、これが今のところ私が見つけたベストです。
前述のようにセル内の関数を使用する場合、再読み込み時に更新されることに注意してください。おそらく
onEdit()
にフックして、セル内関数を強制的に更新させる方法があるのかもしれません。ただ、ドキュメントでそれを見つけることができません。
関連
-
[解決済み] スクリプト関数が見つかりません: doGet
-
[解決済み] Google Apps Script Error - そのアクションを実行するには認証が必要です。
-
[解決済み] onEditのシンプルなトリガーがトリガーされることがないようです。
-
[解決済み] G Suiteアドオンがドライブへの接続を拒否している?drive.google.com refused to connect" エラーの解決方法は?
-
[解決済み] 他のセルの値を元にした条件付き書式設定
-
[解決済み] Google Sheetsで列の最後の空でないセルを取得する
-
[解決済み] セルに値を設定するために正しい範囲を取得する方法は?
-
[解決済み] 値が空でない行のカウント
-
[解決済み] Google Docs/Driveのドキュメントで見出しに番号を振るには?
-
[解決済み] Google Sheetのカスタム関数で取得したデータをリフレッシュする
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] スクリプト関数が見つかりません: doGet
-
[解決済み] Googleフォームの隠しフィールド
-
[解決済み] Google Apps Script Error - そのアクションを実行するには認証が必要です。
-
[解決済み] onEditのシンプルなトリガーがトリガーされることがないようです。
-
[解決済み] G Suiteアドオンがドライブへの接続を拒否している?drive.google.com refused to connect" エラーの解決方法は?
-
[解決済み] Google Sheets、"リクエストに有効なAPIキーが不足しています"
-
[解決済み] Google Sheetsで列の最後の空でないセルを取得する
-
[解決済み] セルに値を設定するために正しい範囲を取得する方法は?
-
[解決済み] Google Docs/Driveのドキュメントで見出しに番号を振るには?