

GASでスプレッドシートの特定の列を取得しようとしています。  
特定の列とは、下記のような表のうち、「num」が最大値の行のデータです。

num | user | text  
---|---|---  
2 | Aさん | こんにちは  
3 | Bさん | ハロー  
4 | Cさん | Hello  
  
この表から、numが最大値の行=4のnum,user,textの値を取得するにはどのようなコードを書いたらいいでしょうか。

どうぞよろしくお願いします。


CC BY-SA 4.0
2022-12-12T03:11:41.160
92714
2022-12-12T04:27:34.730
55519
question
google-apps-script
GASでスプレッドシートを参照し、特定の行を取得する


この場合、下記のようなBuilt-in functionでの出力はいかがでしょうか。

[code]

    =SORTN(A2:C,1,,1,)
    
[/code]

[![画像の説明をここに入力](https://i.stack.imgur.com/AxwtC.png)](https://i.stack.imgur.com/AxwtC.png)

または、`google-apps-script`のタブから、Google Apps
Scriptを使用する必要がある場合は、下記のようなサンプルスクリプトはいかがでしょうか。

[code]

    function sample() {
      const sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Sheet1"); // シート名を入れてください。
      const srcValues = sheet.getRange("A2:C" + sheet.getLastRow()).getValues();
      const res = srcValues.sort((a, b) => a[0] < b[0] ? 1 : -1)[0];
      console.log(res); // <--- [ 4, 'Cさん', 'Hello' ]
    }
    
[/code]

どちらのサンプルも列Aで降順ソートを行い、最初の行を取得しています。

### 参考:

  * [SORTN](https://support.google.com/docs/answer/7354624)
  * [getValues()](https://developers.google.com/apps-script/reference/spreadsheet/range#getValues\(\))
  * [sort()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort)


CC BY-SA 4.0
2022-12-12T04:27:34.730
92716
2022-12-12T04:27:34.730
19460
92714
answer