見出し画像

【GAS】GoogleAppsScript 100本ノック 81~90本目

初心者向けの、GASの学習教材が少ないため、作成しました。
全100問まで、投稿予定です。

GoogleAppsScriptは、Googleの各種ツールとの連携が魅力ですので、各種ツールとの連携を一通り学べるような内容にしています。

記事作成の励みになりますので、是非「スキ」をお願い致します。

▼ 第1回はコチラです。

81. Googleマップのピン追加

問題文:
特定の位置にピン(マーカー)を追加するGoogleマップを作成するスクリプトを作成しなさい。

回答:

function addPinToMap() {
var map = Maps.newStaticMap().setSize(600, 400).setCenter('Tokyo, Japan').setZoom(10).addMarker('Tokyo, Japan');
var blob = map.getAs('image/png');
var folder = DriveApp.getFolderById('your-folder-id'); // 保存先フォルダのIDを指定してください
folder.createFile(blob.setName('map-with-pin.png'));
}

解説:
このスクリプトは、特定の位置(例:東京)にピンを追加したGoogleマップを作成し、指定されたフォルダに保存します。
Maps.newStaticMap()を使用して地図を作成し、addMarker('Tokyo, Japan')でピンを追加します。


82. Googleマップのピン削除

問題文:
特定の位置にピンを追加し、その後削除するスクリプトを作成しなさい。

回答:

function addAndRemovePinFromMap() {
var map = Maps.newStaticMap().setSize(600, 400).setCenter('Tokyo, Japan').setZoom(10).addMarker('Tokyo, Japan');
var marker = map.addMarker('Tokyo, Japan');
map.removeMarker(marker);
var blob = map.getAs('image/png');
var folder = DriveApp.getFolderById('your-folder-id'); // 保存先フォルダのIDを指定してください
folder.createFile(blob.setName('map-without-pin.png'));
}

解説:
このスクリプトは、特定の位置にピンを追加し、その後削除します。
addMarker('Tokyo, Japan')でピンを追加し、map.removeMarker(marker)で削除します。


83. Googleマップの経路作成

問題文:
特定の出発地から目的地までの経路を作成し、Googleマップに表示するスクリプトを作成しなさい。

回答:

function createRouteOnMap() {
var map = Maps.newStaticMap().setSize(600, 400).setCenter('Tokyo, Japan').setZoom(10).addPath('Tokyo, Japan|Yokohama, Japan');
var blob = map.getAs('image/png');
var folder = DriveApp.getFolderById('your-folder-id'); // 保存先フォルダのIDを指定してください
folder.createFile(blob.setName('map-with-route.png'));
}

解説:
このスクリプトは、特定の出発地(東京)から目的地(横浜)までの経路を作成し、Googleマップに表示します。
addPath('Tokyo, Japan|Yokohama, Japan')を使用して経路を追加します。


84. Googleマップの共有設定

問題文:
作成したGoogleマップを特定のユーザーと共有するスクリプトを作成しなさい。

回答:

function shareMap() {
var map = Maps.newStaticMap().setSize(600, 400).setCenter('Tokyo, Japan').setZoom(10);
var blob = map.getAs('image/png');
var file = DriveApp.createFile(blob.setName('shared-map.png'));
file.addViewer('user@example.com'); // 共有したいユーザーのメールアドレスを指定してください
}

解説:
このスクリプトは、作成したGoogleマップを特定のユーザーと共有します。
file.addViewer('user@example.com')を使用してユーザーに閲覧権限を付与します。


85. Googleマップのエクスポート

問題文:
作成したGoogleマップを画像としてGoogleドライブにエクスポートするスクリプトを作成しなさい。

回答:

function exportMap() {
var map = Maps.newStaticMap().setSize(600, 400).setCenter('Tokyo, Japan').setZoom(10);
var blob = map.getAs('image/png');
var folder = DriveApp.getFolderById('your-folder-id'); // 保存先フォルダのIDを指定してください
folder.createFile(blob.setName('exported-map.png'));
}

解説:
このスクリプトは、作成したGoogleマップを画像としてGoogleドライブにエクスポートします。
folder.createFile(blob.setName('exported-map.png'))を使用して画像を保存します。


86. Googleマップのインポート

問題文:
指定されたGoogleドライブの画像ファイルをGoogleマップとしてインポートし、特定の位置に表示するスクリプトを作成しなさい。

回答:

function importMap() {
var fileId = 'your-file-id'; // インポートしたい画像ファイルのIDを指定してください
var file = DriveApp.getFileById(fileId);
var blob = file.getBlob();
var map = Maps.newStaticMap().setSize(600, 400).setCenter('Tokyo, Japan').setZoom(10).addMarker('Tokyo, Japan').addImage(blob, 0, 0, 600, 400);
var newBlob = map.getAs('image/png');
var folder = DriveApp.getFolderById('your-folder-id'); // 保存先フォルダのIDを指定してください
folder.createFile(newBlob.setName('imported-map.png'));
}

解説:
このスクリプトは、指定されたGoogleドライブの画像ファイルをGoogleマップとしてインポートし、特定の位置に表示します。
addImage(blob, 0, 0, 600, 400)を使用して画像を追加します。


87. Googleタスクのタスク作成

問題文:
新しいGoogleタスクを作成し、「Example Task」というタイトルを付けるスクリプトを作成しなさい。

回答:

function createTask() {
var taskListId = 'your-task-list-id'; // タスクリストのIDを指定してください
var task = Tasks.newTask();
task.setTitle('Example Task');
Tasks.Tasks.insert(task, taskListId);
}

解説:
このスクリプトは、新しいGoogleタスクを作成し、「Example Task」というタイトルを付けます。
Tasks.Tasks.insert(task, taskListId)を使用してタスクをタスクリストに追加します。


88. Googleタスクのタスク編集

問題文:
既存のGoogleタスクのタイトルを「Updated Task」に変更するスクリプトを作成しなさい。

回答:

function updateTask() {
var taskListId = 'your-task-list-id'; // タスクリストのIDを指定してください
var taskId = 'your-task-id'; // 更新したいタスクのIDを指定してください
var task = Tasks.Tasks.get(taskListId, taskId);
task.setTitle('Updated Task');
Tasks.Tasks.update(task, taskListId, taskId);
}

解説:
このスクリプトは、既存のGoogleタスクのタイトルを「Updated Task」に変更します。
Tasks.Tasks.update(task, taskListId, taskId)を使用してタスクを更新します。


89. Googleタスクのタスク削除

問題文:
指定したGoogleタスクを削除するスクリプトを作成しなさい。

回答:

function deleteTask() {
var taskListId = 'your-task-list-id'; // タスクリストのIDを指定してください
var taskId = 'your-task-id'; // 削除したいタスクのIDを指定してください
Tasks.Tasks.remove(taskListId, taskId);
}

解説:
このスクリプトは、指定したGoogleタスクを削除します。
Tasks.Tasks.remove(taskListId, taskId)を使用してタスクを削除します。

90. Googleタスクのタスクリスト作成

問題文:
新しいGoogleタスクリストを作成し、「Example Task List」というタイトルを付けるスクリプトを作成しなさい。

回答:

function createTaskList() {
var taskList = Tasks.newTaskList();
taskList.setTitle('Example Task List');
Tasks.Tasklists.insert(taskList);
}

解説:
このスクリプトは、新しいGoogleタスクリストを作成し、「Example Task List」というタイトルを付けます。
Tasks.Tasklists.insert(taskList)を使用してタスクリストを追加します。

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