以下是我的例子:
Sheet file with ID:
1uxEy8cPkNQVBVAFSHPBhvq0aRgRVZ0z2_I1AxK0gcuI
有2列。 A列:包含要替換的單詞,例如:
"A1"。Le Minh Hai, "A2": ABC,"A3"。HAIBA
B列:包含您要替換的詞,例如:
"B1"。Nguyen Le Minh, "B2": CDE,"B3"。BAAAA
有一個名為
的檔案這是李明海的檔案
這是李明海的檔案。
我想把它改成:
這是阮黎明的檔案
如果有一個檔案有不同的名字
這是ABC檔案
它將變回
這是一個CD檔案
這是CDE檔案這是CDE檔案
其他檔案也是如此
代碼:function getNewestFileInFolder(){
var arryFileDates,file,fileDate,files,folder, folders,
newestDate,newestFileID,objFilesByDate;
folders = DriveApp.getFoldersByName('bvm-hd')。
while (folders.hasNext() ) {
folder = folders.next()。
files = folder.getFilesByType("application/vnd.google-apps.document") 。
while (files.hasNext()){
file = files.next()。
var newestFileID = file.getId();
var currentDoc = DocumentApp.openById(newestFileID)。
var ss = SpreadsheetApp. openById('1t9T5FWedPLFcQ6wqcx4gGRHrrpldZHcLhgBJR0JbrPI');//ID sheet find and replace。
SpreadsheetApp.setActiveSpreadsheet(ss)。
SpreadsheetApp.setActiveSheet(ss.getSheets)[0])。
var sh = SpreadsheetApp.getActiveSpreadsheet() 。 getSheetByName('Trang tính1')。
var dongcuoi= sh.getLastRow()。
var dc = dongcuoi 1;
var doc = DocumentApp.openById(newSp.getId() )。
var rgtxt = doc.getName() 。
var rgrep = ss.getSheets()[0] 。 getRange("A1:B"/span> dc)。
var repA = rgrep.getValues().filter(>r => r。 every(c => c.toString()) 。)
repA.forEach(span class="hljs-params">e => rgtxt.replaceText(...e))。
}
}
uj5u.com熱心網友回復:
我相信你的目標是如下的。
- 你想用Spreadsheet重命名特定檔案夾中的Google Document的檔案名。
- 你想把現有的檔案名包括 "A "列的值改為 "B "列的值。
- 例如,當檔案名是
這是Le Minh Hai的檔案,你想把它改為這是Nguyen Le Minh的檔案。
在這種情況下,下面這個修改后的腳本怎么樣?
修改后的腳本:
function getNewestFileInFolder(){
var ss = SpreadsheetApp. openById('1t9T5FWedPLFcQ6wqcx4gGRHrrpldZHcLhgBJR0JbrPI') 。
var sheet = ss.getSheetByName('Trang tính1') 。
var values = sheet.getDataRange().getValues()。
var folders = DriveApp.getFoldersByName('bvm-hd')。
while (folders.hasNext() ) {
var folder = folders.next() 。
var files = folder.getFilesByType("application/vnd.google-apps.document") 。
while (files.hasNext() ) {
file = files.next()。
var filename = file.getName()。
var check = values.filter(([a]) => filename.includes(a) )。)
if (check.length > 0) {
file.setName(filename. replace(check[0][0],check[0][1])。
}
}
}
}
- 從你的腳本中,我擔心可能有檔案夾名稱為
bvm-hd的檔案夾。所以我使用while回圈來檢索檔案夾。 - 這些值可以通過一次呼叫從電子表格中檢索出來。所以在這個修改后的腳本中,這個腳本被移到了回圈之外。
- 為了改變檔案名,你可以使用類檔案的
getName和setName。
參考資料:
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/330544.html
標籤:
