GASで予算管理を効率化!Sheet.newChartで財務状況を可視化する
予算管理は、企業や個人の財務状況を健全に保つ上で非常に重要です。しかし、手作業での集計やグラフ作成は時間と手間がかかり、ミスも発生しやすくなります。そこで、Google Apps Script(GAS)のSheet.newChart
関数を活用することで、スプレッドシート上のデータを基に、予算の進捗状況や財務状況を可視化し、効率的な予算管理を実現できます。
Sheet.newChartとは?
Sheet.newChart
は、GASでスプレッドシートにグラフを埋め込むための関数です。この関数を使うことで、データの範囲、グラフの種類、タイトル、軸ラベルなどを指定して、さまざまな種類のグラフを自動的に生成できます。例えば、予算と実績の推移を折れ線グラフで表示したり、費目ごとの割合を円グラフで表示したりすることができます。
予算管理におけるSheet.newChartの実装
ここでは、予算管理におけるSheet.newChart
の具体的な実装方法を解説します。以下のステップで進めていきましょう。
- スプレッドシートに予算データと実績データを入力する
- GASで
Sheet.newChart
関数を使ってグラフを作成する - グラフの種類、タイトル、軸ラベルなどを設定する
- グラフをスプレッドシートに埋め込む
実用的なコード例
例1:予算と実績の推移を折れ線グラフで表示
function createBudgetChart() {
// スプレッドシートを取得
const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheetByName("予算実績");
// グラフのデータを取得
const data = sheet.getRange("A1:B13").getValues();
// グラフを作成
const chart = sheet.newChart()
.setChartType(Charts.ChartType.LINE)
.addRange(sheet.getRange("A1:B13"))
.setPosition(5, 5, 0, 0) // グラフの位置とサイズ
.setTitle("予算 vs 実績")
.setXAxisTitle("月")
.setYAxisTitle("金額 (円)")
.build();
// グラフをシートに挿入
sheet.insertChart(chart);
}
このコードは、スプレッドシートの「予算実績」シートにあるA1からB13のデータを基に、予算と実績の推移を折れ線グラフで表示します。
例2:費目ごとの予算割合を円グラフで表示
function createBudgetPieChart() {
// スプレッドシートを取得
const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheetByName("費目別予算");
// グラフのデータを取得
const data = sheet.getRange("A1:B6").getValues();
// グラフを作成
const chart = sheet.newChart()
.setChartType(Charts.ChartType.PIE)
.addRange(sheet.getRange("A1:B6"))
.setPosition(5, 15, 0, 0) // グラフの位置とサイズ
.setTitle("費目別予算割合")
.build();
// グラフをシートに挿入
sheet.insertChart(chart);
}
このコードは、スプレッドシートの「費目別予算」シートにあるA1からB6のデータを基に、費目ごとの予算割合を円グラフで表示します。
例3:特定の期間の経費推移を棒グラフで表示
function createExpenseBarChart() {
// スプレッドシートを取得
const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheetByName("経費データ");
// グラフのデータを取得(日付と経費)
const dataRange = sheet.getRange("A2:B" + sheet.getLastRow()); // A列:日付、B列:経費
const data = dataRange.getValues();
// グラフを作成
const chart = sheet.newChart()
.setChartType(Charts.ChartType.COLUMN)
.addRange(dataRange)
.setPosition(5, 25, 0, 0) // グラフの位置とサイズ
.setTitle("経費推移")
.setXAxisTitle("日付")
.setYAxisTitle("金額 (円)")
.build();
// グラフをシートに挿入
sheet.insertChart(chart);
}
このコードは、スプレッドシートの「経費データ」シートにある日付と経費のデータを基に、経費の推移を棒グラフで表示します。A列に日付、B列に経費が入力されていることを想定しています。
よくある問題とトラブルシューティング
- グラフが表示されない:データの範囲が正しいか、シート名が正しいかを確認してください。
- グラフの種類が意図したものと違う:
setChartType
で指定しているグラフの種類が正しいか確認してください。 - 軸ラベルが表示されない:
setXAxisTitle
とsetYAxisTitle
で軸ラベルを設定しているか確認してください。
カスタマイズ方法と応用例
- グラフの色を変更する:
setColors
メソッドを使ってグラフの色を変更できます。 - 複数のデータ系列をグラフに追加する:
addRange
メソッドを複数回呼び出すことで、複数のデータ系列をグラフに追加できます。 - グラフの種類を動的に変更する:スプレッドシートのセルに入力された値に応じて、グラフの種類を動的に変更できます。
まとめ
GASのSheet.newChart
関数を使うことで、スプレッドシート上のデータを基に、予算管理や財務状況を可視化するグラフを簡単に作成できます。この記事で紹介したコード例やトラブルシューティングを参考に、ぜひSheet.newChart
を業務に活用してみてください。