檢索 Google Drive 檔案的驅動器檔案資訊并在 Google Sheet 中列出
我希望使用 appscript 通過檔案 ID 串列查找所有者、檔案創建日期、驅動器檔案的當前共享設定,檔案 ID 在 A 列中逐行列出,結果將列印行中單獨列中的資訊(列 B 為所有者,C 為創建日期,D 為當前共享設定)。
這可能嗎?
uj5u.com熱心網友回復:
我相信你的目標如下。
- 您想從電子表格的“A”列中檢索檔案 ID,并希望檢索檔案所有者的電子郵件、創建日期、當前共享設定(“Enum Access”的值)并將其放入“列” B”、“C”和“D”。
- 您想使用 Google Apps 腳本實作此目的。
在這種情況下,下面的示例腳本怎么樣?
示例腳本:
請將以下腳本復制并粘貼到電子表格的腳本編輯器中。并且,請設定作業表名稱,并myFunction在腳本編輯器中運行。
function myFunction() {
const sheetName = "Sheet1"; // Please set the sheet name.
const sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName(sheetName);
const lastRow = sheet.getLastRow();
if (lastRow == 0) return;
const range = sheet.getRange("A1:A" lastRow);
const values = range.getValues().map(([id]) => {
try {
const file = DriveApp.getFileById(id);
const owner = file.getOwner();
const createdDate = file.getDateCreated();
const sharing = file.getSharingAccess().toString();
return [owner ? owner.getEmail() : "", createdDate, sharing];
} catch (e) {
console.log(e.message)
return Array(3).fill("");
}
});
range.offset(0, 1, values.length, values[0].length).setValues(values);
}
運行此腳本時,將從“A”列、所有者(電子郵件地址)、創建日期、檔案的共享設定中檢索檔案 ID,并從“B”列中輸入這些值。
當無法檢索所有者時,將放置空值。
筆記:
- 在此示例腳本中,根據您的問題,它假設檔案 ID 被放入“A”列。如果“A”列不是檔案 ID,則無法檢索檔案元資料。請注意這一點。
參考:
- getFileById(id)
- 地圖()
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/435847.html
