ユーザ用ツール

サイト用ツール


gas

差分

このページの2つのバージョン間の差分を表示します。

この比較画面へのリンク

両方とも前のリビジョン前のリビジョン
次のリビジョン
前のリビジョン
gas [2023/08/07 16:58] mikotogas [2023/09/06 18:14] (現在) mikoto
行 1: 行 1:
 ====== Google App Script ====== ====== Google App Script ======
 +[[start|一つ上へ]]
  
 ===== スプレッドシート ===== ===== スプレッドシート =====
行 22: 行 22:
 var range = sheet.getDataRange(); // これで、データがある領域のrectangle を取得できる。 var range = sheet.getDataRange(); // これで、データがある領域のrectangle を取得できる。
 var values = range.getValues(); var values = range.getValues();
 +</code>
 +
 +==== 配列 ====
 +=== 配列の中に特定の値が含まれているかどうかの判定 ===
 +配列に対してincludes("value") を指定すると、値が含まれている場合はtrue、含まれない場合はfalse を返す。
 +column_nameが含まれる場合にヘッダーを追加する場合は以下のようになる
 +<code javascript>
 +if(headerRows.includes("column_name")) {
 +  headerRows.push("header1","header2",...);
 +}
 </code> </code>
  
行 138: 行 148:
 Object.values(rowData) は rowData 内の値を配列として取得する。 Object.values(rowData) は rowData 内の値を配列として取得する。
 value はループ内で扱う各値を示す。 value はループ内で扱う各値を示す。
 +
 +''if (typeof value === "string" && value.includes(",")) {...}'' については、
 +value が文字列であり、かつカンマ , を含む場合にCSV内で特殊文字として扱われる可能性のあるカンマをエスケープする。
 +例えば、文字列内にカンマがある場合、ダブルクォーテーションで囲むことでエスケープする。
 +また、既にダブルクォーテーションが含まれている場合は、二重のダブルクォーテーションに変換する。
  
 ===== プログラム例 ===== ===== プログラム例 =====
   * [[gas:example:checkdigit|チェックデジットの計算]]   * [[gas:example:checkdigit|チェックデジットの計算]]
   * [[gas:example:mutablelist|mutable(可変長)リストを使用してヘッダー名で参照する]]   * [[gas:example:mutablelist|mutable(可変長)リストを使用してヘッダー名で参照する]]
 +  * [[gas:example:http_client|HTTPクライアントでのWebアクセス]]
 +  * [[gas:example:textcopy|処理したテキストをwebページに表示し、ボタンでクリップボードにコピーする]]
 +  * [[gas:example:mutable_to_csv|mutableリストからCSVに変換する]]
 <code javascript> <code javascript>
 function exportToCSV() { function exportToCSV() {
gas.1691395138.txt.gz · 最終更新: 2023/08/07 16:58 by mikoto