earthpg:GAS専門のプログラミングスクール

これで解決!GASを使った文字数カウントの簡単ガイド

GASって簡単に文字数をカウントできるって聞いたけど、どうやるんだろう…?
猫男
猫男
catman
catman
安心しろ、catmanが高速でGASを使った文字数のカウント方法を教えてやるさ。

GASで文字数をカウントする基本

文字数をカウントするには、JavaScriptのメソッドを活用するぞ。

文字列の長さを取得する方法

GASではJavaScriptと同じように、lengthプロパティを使って文字列の長さを取得できる。基本的な方法を見てみよう。

function countCharacters() {
  var text = "こんにちは、catmanです!";
  var charCount = text.length;
  Logger.log("文字数: " + charCount);
}

このスクリプトは、文字列の長さをLoggerで出力してくれる。

おぉ、lengthを使うだけで文字数が分かるんだね!簡単そう!
猫男
猫男

スプレッドシートで文字数をカウントする

スプレッドシート内のセルに入力された文字列の文字数をカウントしたい場合は、スプレッドシートとGASを組み合わせることができる。

function countCellCharacters() {
  var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
  var cellValue = sheet.getRange("A1").getValue();
  var charCount = cellValue.length;
  Logger.log("セルA1の文字数: " + charCount);
}

このスクリプトは、スプレッドシートのA1セルの文字数を取得して出力してくれる。

スプレッドシートでも同じようにカウントできるのは便利そうだなぁ…
猫男
猫男

複雑な文字カウントのためのヒント

特定の文字を除いてカウントする

もし特定の文字(例えば空白など)を除いてカウントしたい場合、正規表現を使うといい。

function countWithoutSpaces() {
  var text = "これは テスト です";
  var charCount = text.replace(/\s/g, "").length;
  Logger.log("空白を除いた文字数: " + charCount);
}

このスクリプトは、空白を除いた実質的な文字数を取得する。

正規表現って難しそうだけど、こういう場合に便利なんだね!勉強しておこうっと。
猫男
猫男

練習問題

では、GASを使ってスプレッドシートの”B1″セルに入力されたテキストの文字数をカウントし、Loggerに出力するスクリプトを書いてみましょう。

 

 

解答・解説

解答はこちらです。

function countB1CellCharacters() {
  var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
  var cellValue = sheet.getRange("B1").getValue();
  var charCount = cellValue.length;
  Logger.log("セルB1の文字数: " + charCount);
}

解説:
SpreadsheetApp.getActiveSpreadsheet().getActiveSheet() で現在アクティブなスプレッドシートのシートを取得します。
getRange(“B1”).getValue() でシートのB1セルの値を取り出します。
– 文字数は length プロパティで取得し、Loggerで出力します。

catman
catman
GASを使いこなして、どんな文字数カウントも楽々こなせるさ!大量のデータにも怖がる必要はないぞ。
すごく助かったよ、catman!GASがだんだん楽しくなってきた!
猫男
猫男