見出し画像

Pythonのezsheetsを利用してスプレッドシートの最終行のデータ数を取得する方法

GASを使用している場合、 "getLastRow" メソッドを使用してスプレッドシートの最終行を取得できますが、Pythonのgspreadライブラリにはこのような便利なメソッドは存在しません。

退屈なことはPythonにやらせよう 第2版 ―ノンプログラマーにもできる自動化処理プログラミング
を参考にして「ezsheets」というライブラリを利用して、スプレッドシート操作はできたのですが、データがある最終行を取得することが、できなくて苦戦しました。

なんとかできた処理もループを使って1行づつ処理する時間がかかるため、「pandas」を利用して処理を簡潔にさせました。

import ezsheets
import pandas as pd

# スプレッドシートのURLを指定してワークブックを取得
ss = ezsheets.Spreadsheet('スプレッドシートのURL')

# 最初のワークシートを取得
sheet = ss[0]

# A列のデータを取得してPandas Seriesに変換
column_A_data = sheet.getColumn(1)

# データがある行をカウント
non_empty_rows = sum(1 for value in column_A_data if value)

print("A列のデータがある行数:", non_empty_rows)

解説

  1. ezsheetsを使ってスプレッドシートからデータを取得します。

  2. getColumn(1)を使ってA列のデータを取得し、それをPandas Seriesに変換します。

  3. データがある行をカウントします。

結果

コードを実行すると、A列にデータがある行の数が表示されます。

まとめ

この記事では、PythonのezsheetsライブラリとPandasを使用して、スプレッドシートからデータを取得し、そのデータの数をカウントする方法を紹介しました。これにより、スプレッドシートのデータを簡単に処理して分析することができます。

この記事が気に入ったらサポートをしてみませんか?