見出し画像

【GAS】GoogleAppsScript 100本ノック 41~50本目

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

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

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

▼ 第1回はコチラです。

41. Googleドライブのフォルダ作成

問題文:
Google Driveに「My Folder」という名前の新しいフォルダを作成するスクリプトを作成しなさい。

回答:

function createFolder() {
var folderName = 'My Folder';
DriveApp.createFolder(folderName);
}

解説:
このスクリプトは、Google Driveに「My Folder」という名前の新しいフォルダを作成します。
DriveApp.createFolder(folderName)を使用して指定された名前のフォルダを作成します。


42. Googleドライブのフォルダ削除

問題文:
Google Driveの指定されたフォルダを削除するスクリプトを作成しなさい。

回答:

function deleteFolder() {
var folderId = 'your-folder-id'; // 削除したいフォルダのIDを指定してください
var folder = DriveApp.getFolderById(folderId);
folder.setTrashed(true);
}

解説:
このスクリプトは、Google Driveの指定されたフォルダを削除します。
DriveApp.getFolderById(folderId)でフォルダを取得し、folder.setTrashed(true)でフォルダをゴミ箱に移動します。


43. Googleドライブのファイル共有設定

問題文:
Google Driveの指定されたファイルの共有設定を「リンクを知っている全員に表示」に変更するスクリプトを作成しなさい。

回答:

function setFileSharing() {
var fileId = 'your-file-id'; // 共有設定を変更したいファイルのIDを指定してください
var file = DriveApp.getFileById(fileId);
file.setSharing(DriveApp.Access.ANYONE_WITH_LINK, DriveApp.Permission.VIEW);
}

解説:
このスクリプトは、Google Driveの指定されたファイルの共有設定を「リンクを知っている全員に表示」に変更します。
file.setSharing(DriveApp.Access.ANYONE_WITH_LINK, DriveApp.Permission.VIEW)を使用して共有設定を変更します。


44. Googleドライブのファイル検索

問題文:
Google Drive内の指定されたキーワードを含むファイルを検索し、それらのファイル名をログに表示するスクリプトを作成しなさい。

回答:

function searchFiles() {
var keyword = 'example'; // 検索キーワードを指定してください
var files = DriveApp.searchFiles('title contains "' + keyword + '"');
while (files.hasNext()) {
 var file = files.next();
 Logger.log('Found file: ' + file.getName());
 }
}

解説:
このスクリプトは、Google Drive内の指定されたキーワードを含むファイルを検索し、それらのファイル名をログに表示します。
DriveApp.searchFiles('title contains "' + keyword + '"')でキーワードを含むファイルを検索します。


45. Googleカレンダーのイベント作成

問題文:
Googleカレンダーに「Meeting」というタイトルで、明日の午前10時から11時までのイベントを作成するスクリプトを作成しなさい。

回答:

function createCalendarEvent() {
var calendar = CalendarApp.getDefaultCalendar();
var title = 'Meeting';
var startTime = new Date();
startTime.setDate(startTime.getDate() + 1); // 明日に設定
startTime.setHours(10, 0); // 午前10時
var endTime = new Date(startTime);
endTime.setHours(11, 0); // 午前11時
calendar.createEvent(title, startTime, endTime);
}

解説:
このスクリプトは、Googleカレンダーに「Meeting」というタイトルで明日の午前10時から11時までのイベントを作成します。
calendar.createEvent(title, startTime, endTime)を使用してイベントを作成します。


46. Googleカレンダーのイベント編集

問題文:
Googleカレンダーの特定のイベントを「Updated Meeting」というタイトルに変更し、時間を翌日の午後2時から3時に変更するスクリプトを作成しなさい。

回答:

function editCalendarEvent() {
var calendar = CalendarApp.getDefaultCalendar();
var events = calendar.getEventsForDay(new Date()); // 今日のイベントを取得
if (events.length > 0) {
 var event = events[0];
 event.setTitle('Updated Meeting');
 var newStartTime = new Date();
 newStartTime.setDate(newStartTime.getDate() + 1); // 翌日に設定
 newStartTime.setHours(14, 0); // 午後2時
 var newEndTime = new Date(newStartTime);
 newEndTime.setHours(15, 0); // 午後3時
 event.setTime(newStartTime, newEndTime);
 }
}

解説:
このスクリプトは、Googleカレンダーの特定のイベントを「Updated Meeting」というタイトルに変更し、時間を翌日の午後2時から3時に変更します。
event.setTitle('Updated Meeting')とevent.setTime(newStartTime, newEndTime)を使用してイベントを編集します。


47. Googleカレンダーのイベント削除

問題文:
Googleカレンダーの特定のイベントを削除するスクリプトを作成しなさい。

回答:

function deleteCalendarEvent() {
var calendar = CalendarApp.getDefaultCalendar();
var events = calendar.getEventsForDay(new Date()); // 今日のイベントを取得
if (events.length > 0) {
 var event = events[0];
 event.deleteEvent();
 }
}

解説:
このスクリプトは、Googleカレンダーの特定のイベントを削除します。
event.deleteEvent()を使用してイベントを削除します。


48. Googleカレンダーの予定表作成

問題文:
新しいGoogleカレンダーの予定表「Project Calendar」を作成するスクリプトを作成しなさい。

回答:

function createCalendar() {
CalendarApp.createCalendar('Project Calendar');
}

解説:
このスクリプトは、新しいGoogleカレンダーの予定表「Project Calendar」を作成します。
CalendarApp.createCalendar('Project Calendar')を使用して予定表を作成します。


49. Googleカレンダーの予定表削除

問題文:
Googleカレンダーの特定の予定表を削除するスクリプトを作成しなさい。

回答:

function deleteCalendar() {
var calendarId = 'your-calendar-id'; // 削除したい予定表のIDを指定してください
var calendar = CalendarApp.getCalendarById(calendarId);
calendar.deleteCalendar();
}

解説:
このスクリプトは、Googleカレンダーの特定の予定表を削除します。
CalendarApp.getCalendarById(calendarId)で予定表を取得し、calendar.deleteCalendar()で予定表を削除します。


50. Googleカレンダーの共有設定

問題文:
Googleカレンダーの特定の予定表を指定したメールアドレスに「閲覧権限」で共有するスクリプトを作成しなさい。

回答:

function shareCalendar() {
var calendarId = 'your-calendar-id'; // 共有したい予定表のIDを指定してください
var email = 'user@example.com'; // 共有したいメールアドレスを指定してください
var calendar = CalendarApp.getCalendarById(calendarId);
calendar.addViewer(email);
}

解説:
このスクリプトは、Googleカレンダーの特定の予定表を指定したメールアドレスに「閲覧権限」で共有します。
calendar.addViewer(email)を使用して閲覧権限を付与します。

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