Googleドライブで共有された .xlsx や .csv、.pptx などのファイルを、毎回手動でGoogleスプレッドシートやスライドに変換していませんか。
少数なら手動でも対応できますが、ファイル数が増えると手間と時間がかかります。
そこで本記事では、GAS(Google Apps Script)とDrive APIを活用して、Driveフォルダ内のファイルを一括でGoogle形式に変換する方法を解説します。
なぜGASで自動変換するのか
- Googleドライブ上で受け取った
.xlsxや.csv、.pptのままだとプレビューや共同編集がしづらい - 複数人での閲覧や同時編集を行うため、Google形式への変換が必要になる
- 手動で1つずつ変換すると時間がかかり、作業漏れも起こりやすい
事前準備:Google Drive APIの有効化
スクリプト自体はシンプルですが、事前にAPIを有効化する設定が必要です。
Google Drive APIを使えるように設定する
設定画面には英語の項目もありますが、手順どおりに進めれば問題ありません。
Googleドライブを開き、「新規」>「その他」>「Google Apps Script」の順に選択してプロジェクトを新規作成します。

プロジェクト名の変更
「無題のプロジェクト」をクリックして任意の名称に変更します。
(例:「フォルダ内ファイル一括変換」)
Googleの拡張サービスを選択
上部メニューの「リソース」>「Googleの拡張サービス」を選択します。

案内ダイアログが表示されたら、「OK」をクリックしてGoogle Cloud Platform(GCP)のコンソール画面を開きます。
Google Drive APIの選択
API一覧や検索窓から「Google Drive API」を検索して選択します。

Google Drive APIを有効にする
「有効にする」ボタンをクリックします。

認証情報の作成
「認証情報を作成」をクリックします。

必要な認証情報の指定
- Google Drive API
- ウェブブラウザ(JavaScript)
- ユーザーデータにチェック
各項目を設定し、「必要な認証情報」をクリックします。

ユーザータイプの選択
User Typeで「内部」を選択します。

アプリ名の入力
アプリケーション名を入力します。

認証情報の作成完了

画面の案内に沿って進め、認証情報の作成を完了します。
完了したら、Google Apps Scriptのエディタ画面に戻ります。
Drive APIの有効化確認
再度上部メニューの「リソース」>「Googleの拡張サービス」を開きます。

Drive APIを有効にする
「Drive API」をONに切り替えて「OK」をクリックします。

実行権限の承認

「このアプリは確認されていません」と警告が表示された場合は、「詳細」から「(安全ではないページ)に移動」をクリックして進みます。
アカウントへのアクセスを「許可」すれば初期設定は完了です。
これでGASからDrive APIの機能を利用できるようになります。
あとはスクリプトを実行するだけで、指定フォルダ内のOfficeファイルをGoogle形式へ一括変換できます。
フォルダ内のファイルを一括でGoogle形式に変換するスクリプト
- 後述のスクリプトコードをエディタに貼り付けます。
- 対象となるGoogleドライブのフォルダID(URL末尾の
https://drive.google.com/drive/folders/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxにあたる文字列)を指定します。 - 実行ボタンをクリックすると、同一フォルダ内に変換後のファイルが生成されます。(例:2つのCSVファイルを実行した場合、それぞれのスプレッドシートが作成されます)

なお、フォルダ自体をコピーする方法は以下の記事で解説しています。

Googleスプレッドシートに関するその他の便利操作は、まとめ記事をご覧ください。

function myConvertToSpreadsheet() {
var id = "GoogleDriveのフォルダID";
var source_folder = DriveApp.getFolderById(id);
var target_files = source_folder.getFiles();
var dest_folder = DriveApp.getFolderById(id);
while (target_files.hasNext()) {
var file = target_files.next();
convertToSpreadsheet(file, dest_folder);
}
}
function convertToSpreadsheet(file, folder) {
var options = {
title: file.getName(),
mimeType: MimeType.GOOGLE_SHEETS,
parents: [{ id: folder.getId() }]
};
Drive.Files.insert(options, file.getBlob());
}Googleスライドに変換する場合
MimeType.GOOGLE_SLIDES に書き換えて実行します。
function convertToSlides(file, folder) {
var options = {
title: file.getName(),
mimeType: MimeType.GOOGLE_SLIDES,
parents: [{ id: folder.getId() }]
};
Drive.Files.insert(options, file.getBlob());
}Googleドキュメントに変換する場合
同様に MimeType.GOOGLE_DOCUMENT に書き換えて実行します。
function convertToDocument(file, folder) {
var options = {
title: file.getName(),
mimeType: MimeType.GOOGLE_DOCUMENT,
parents: [{ id: folder.getId() }]
};
Drive.Files.insert(options, file.getBlob());
}この記事で紹介しているコードは、GitHubのMOTOKI-LLC/cg-method-codeにもまとめています。
Googleドライブのファイルやフォルダを扱う記事は、ほかにもあります。



まとめ
Googleドライブ上のファイルを、毎回手動で変換する作業は不要になります。
GASとDrive APIを連携させれば、1クリックで大量のファイルをまとめて変換可能です。
定期的なファイル変換作業の効率化や、チームでの情報共有スピード向上にぜひ役立ててください。
この記事の手順はGASの旧エディタのものです。
現在のエディタでは拡張サービスの追加は左メニューの「サービス」から行います。
画面が違う場合は、現行のエディタに読み替えてください。
