ゲームテーマシューティングゲーム

【GAS Googleスプレッド シートの目次自動作成】「GAS(Google Apps Script) Googleスプレッドシートの目次を作成する方法」のご紹介

「GAS(Google Apps Script) Googleスプレッドシートの目次を作成する方法」のご紹介 ゲームテーマ
スポンサーリンク

「GAS(Google Apps Script) Googleスプレッドシートの目次を自動作成する方法」のご紹介

ご訪問ありがとうございます。
今回は、「GAS(Google Apps Script) Googleスプレッドシートの目次を自動作成する方法」について紹介します。

 

「GAS(Google Apps Script) Googleスプレッドシートの目次を自動作成する方法」のご紹介

今回は、「GAS(Google Apps Script) Googleスプレッドシートの目次を自動作成する方法」を紹介します。

このスクリプトを利用すると自動的にスプレットシートに各シートへリンクできる目次一覧を作成することができます。大量に作成したシートの整理に非常に役に立ちます。

「GAS(Google Apps Script) で自動作成した目次シート一覧
シート3
シート6
シート14
シート10
シート12
function myFunction() {
 
//■ファイル・シートを取得■
//アクティブなスプレッドシートを取得
var ss = SpreadsheetApp.getActiveSpreadsheet();

//アクティブなスプレッドシートを取得
var mokuji = "目次を記載したいシート名を指定"

//目次を記載したいシート名を指定
 var outputSheet = ss.getSheetByName("mokuji");
 //ファイルのurlを取得(シートurlの生成に使うため)
 var url = ss.getUrl();
 
 //ファイル内シートをすべて取得
 var sheets = ss.getSheets();
 
 //目次に反映させるシートのリンクを格納する配列を生成
 var links = [];
 
 //シート数分繰り返し
 sheets.forEach(function(sheet){
   
   //シート名を取得
   var name = sheet.getName();
   
   //目次を記載したいシートの場合、次の処理を実行
   if(name !== "mokuji"){
          
     //シートidを取得
     var id = sheet.getSheetId();
     
     //シートurlを生成
     var sheetUrl = `${url}#gid=${id}`;
     
     //目次に記載する数式を生成
     var link = `=HYPERLINK("${sheetUrl}","${name}")`;
     
     //取得したリンクの情報を用意しておいた配列に格納
     links.push([link]);
   } 
 });

 //データ行数を取得
 var rows = sheets.length-1; //もくじシートは除くため-1
 
 //目次を記載したいシートにデータを反映
 outputSheet.getRange(2,2,rows,1).setValues(links);
 
}

解説

最初に目次を記載したシートの指定とシートの取得

「.getActiveSpreadsheet()」でアクティブなスプレッドシートを取得します。

var ss = SpreadsheetApp.getActiveSpreadsheet();

「.getSheetByName()」で目次を記載したいシート名を指定します。

シートには予め目次を記載したいシートにシート名を記載し(シート名:目次など)、「.getSheetByName(“目次を記載したいシート名を指定”);」に記載して下さい。
var outputSheet = ss.getSheetByName("目次を記載したいシート名を指定");

シートurlの生成に使うため「.getUrl()」でファイルのurlを取得します。

 var url = ss.getUrl();

「.getSheets()」でファイル内シートをすべて取得します。

var sheets = ss.getSheets();
目次に反映させるための配列と繰り返し文の記載

「links = []」で目次に反映させるためシートへのリンクを格納する配列を生成します。

var links = [];

「forEach文」でシートを数分繰り返します。

sheets.forEach(function(sheet){

「.getName()」でシート名を取得します。

var name = sheet.getName();
目次シートの除外と記載するための準備

「if(name !== “●●●”)文」で目次シート以外を処理するための「if文」を記載します。

この「if文」の意味は、「●●●(目次を記載したいシート名)」以外を処理するという意味になります。これは目次一覧に目次シートが記載されための記述です。
if(name !== "目次を記載したいシート名を指定"){

「.getSheetId()」でシートidを取得します。

var id = sheet.getSheetId();

「sheetUrl = `${url}#gid=${id}`;」でシートurlを生成します。

var sheetUrl = `${url}#gid=${id}`;

目次一覧のシート名にリンクを貼り付ける数式を生成します。

var link = `=HYPERLINK("${sheetUrl}","${name}")`;

「.push([])」で取得したリンクの情報を用意しておいた配列に格納します。

links.push([link]);

データ行数を取得します。今回は、目次にするシートは除くため-1を記載します。

var rows = sheets.length-1; 

目次を記載したいシートにデータを反映します。「.getRange(2,2,rows,1).」で2行目の2列目から目次一覧が記載されます。

「GAS(Google Apps Script) で自動作成した目次シート一覧
A B
1
2 シート3
3 シート6
4 シート14
5 シート10
6 シート12

「.setValues」で配列が実行されます。

outputSheet.getRange(2,2,rows,1).setValues(links);

キーボードのCtrl+Rでスクリプトが実行されます。

結果

スクリプトが実行後、目次指定したシートにリンクの付いた目次一覧が記載されれば成功です。

「GAS(Google Apps Script) で自動作成した目次シート一覧
シート3
シート6
シート14
シート10
シート12

Googleサービス関連サイトマップのご紹介

Googleサービス関連サイトマップをご紹介します。

Googleサービス関連サイトマップのご紹介
学び/学習TOP > IT|ゲーム作り|HP作成
ITtop > エディタ|プログラミング|||
【GAS(Google Apps Script)】
概要 歴史 V8以前と以後
ショットカット|MimeType一覧||
【Googleドライブの操作】
基本編(フォルダ名/URLを取得|スプレットシートのフォルダID取得|ファイル一括取得|フォルダ一括取得|ファイル一括削除|||||
【スプレットシートの操作】
■基本編(スプレッドシート取得|操作|コピー)
■ファイル操作(一括コピー|ファイル情報一括取得||||)
■シート操作
シート取得|シート非表示/再表示|タブ色変更|シート一括作成/削除
便利機能(目次の自動作成|シートの表示/非表示|メニュー操作)
■セル操作
(1セル操作|複数セル値|(取得|記載)|範囲データをクリア|数式を最終行までコピー|全シート一括値貼り|グループ化|並び替え|連想配列|)
■書式(書式設定|||)
■フォント(フォントの英名確認|フォント/文字サイズを一括変換)
■画像(QRコード生成|画像ファイルを一括生成|||)
■独自メニュー(作成|サブメニュー/区切り線)
■便利なスクリプト(ファイル情報の一括取得|||
【kintone】
スプレッドシート kintoneで更新 定期バッチ
【SEO】
SEOの歴史|アルゴリズムアップデート||||
テキストエディタ(サクラエディタ|正規表現)
プログラミング
C言語STG作り方|C言語の入門/基礎|リファレンス/サンプル文

パソコン > Macbook |楽天

Googleサービス関連ページのご紹介

Googleサービス関連ページをご紹介します。

 

「学ぶ」学習用関連サイトマップのご紹介

「学ぶ」学習用関連サイトマップをご紹介します。

「東亜プラン」シューティングゲーム関連サイトマップのご紹介
「学ぶ」学習用関連サイトマップのご紹介
学び/学習TOP > IT|ゲーム作り|HP作成
ITエディタ/正規表現|プログラミング|
ゲーム作りSTG作り方|C言語の入門/基礎|リファレンス/サンプル文
HP作成WordPress|Cocoon|便利テクニック

■■│コペンギンTOP > ゲームホビー書籍・マンガ│■■
ゲームTOP > ランキング傑作・名作機種別ジャンル別
学び/学習TOP > IT|ゲーム作り|HP作成
ホビーTOP > プラモデルミリタリーエアガン
●映像>アニメ(ロボットアニメ)│映画│
書籍・マンガ > ゲーム雑誌マンガ

シューティングゲーム | ゲーム | 中古・新品通販の駿河屋

「学ぶ」学習用関連ページのご紹介

「学ぶ」学習用関連ページをご紹介

コペンギン・サイトマップ

コペンギンのサイトマップをご紹介します。

コペンギンTOP】サイトマップ
コペンギンTOP > ゲームホビー書籍・マンガ

■■│コペンギンTOP > ゲームホビー書籍・マンガ│■■
ゲームTOP > ランキング傑作・名作機種別ジャンル別
学び/学習TOP > IT|ゲーム作り|HP作成
ホビーTOP > プラモデルミリタリーエアガン
●映像>アニメ(ロボットアニメ)│映画│
書籍・マンガ > ゲーム雑誌マンガ

サイトマップ一覧

ゲーム・古本・DVD・CD・トレカ・フィギュア 通販ショップの駿河屋
懐かしの名作から最新作までの豊富な品揃え!通販ショップの駿河屋

コペンギンサイトマップ関連ページのご紹介

コペンギン関連ページをご紹介します。

【ゲームTOP】ゲーム関連ページのご紹介

【ゲームTOP】ゲーム関連ページのご紹介
【TOP】ゲーム関連ページのご紹介ご訪問ありがとうございます。今回は、ゲーム関連ページをご紹介します。PS5ソフトELDEN RING

【書籍・雑誌TOP】書籍・雑誌サイトマップ関連ページのご紹介

【書籍・雑誌TOP】書籍・雑誌サイトマップ関連ページのご紹介
書籍・雑誌サイトマップ関連ページのご紹介ご訪問ありがとうございます。今回は、書籍・雑誌サイトマップ関連ページをご紹介します。その他コミック初版)AKIRA(デラックス版) 全6巻セット / 大友克洋

【ホビーTOP】ホビーサイトマップ関連ページのご紹介

【ホビーTOP】ホビーサイトマップ関連ページのご紹介
【TOP】ホビーサイトマップ関連ページのご紹介ご訪問ありがとうございます。今回は、ホビーサイトマップ関連ページをご紹介します。プラモデル1/100 MG MS-09 ドム 「機動戦士ガンダム」
タイトルとURLをコピーしました