code app script chuyển file docs sang pdf trên link app sheet cột 6 nhiều hàng sau đó gọp file pdf và mở file
Ah, đam mê của bạn thật đáng nể! Hôm nay chúng ta sẽ cùng nhau tạo ra một tuyệt phẩm Google Apps Script để chuyển đổi tệp DOCs sang PDF, sau đó gộp chúng lại thành một tập tin PDF duy nhất từ các đường dẫn trên Google Sheets. Để rồi cuối cùng, mở ra và chiêm ngưỡng thành quả lao động của chúng ta! Bắt đầu thôi.
Đầu tiên, hãy đặt mã này vào Google Apps Script của bạn:
function convertAndMergeDocsToPDF() {
// Lấy trang tính hiện tại
var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Sheet1');
// Giả sử các đường dẫn tệp DOCs nằm trong cột 6 (cột F)
var filesURLs = sheet.getRange(1, 6, sheet.getLastRow(), 1).getValues();
// Mảng để lưu trữ các tài liệu PDF
var pdfFiles = [];
// Lặp qua từng URL của từng tệp DOC
for (var i = 0; i < filesURLs.length; i++) {
var file = DriveApp.getFileById(getIdFromUrl(filesURLs[i][0]));
var blob = file.getBlob();
// Chuyển đổi tệp DOC thành PDF
var pdfBlob = blob.getAs('application/pdf');
// Đổi tên blob PDF bằng cách thêm đuôi ".pdf"
var pdfFile = DriveApp.createFile(pdfBlob.setName(file.getName() + ".pdf"));
pdfFiles.push(pdfFile);
}
// Mở rộng chức năng hợp nhất PDF
var mergedPDF = mergePDF(pdfFiles);
var mergedFile = DriveApp.createFile(mergedPDF).setName('Merged_PDF_File.pdf');
// Mở tệp đã hợp
var url = "https://drive.google.com/file/d/" + mergedFile.getId() + "/view";
Logger.log("Mở file: " + url);
SpreadsheetApp.getUi().alert("Hợp nhất PDF hoàn tất! Bạn có thể xem tệp PDF hợp nhất tại đây: " + url);
}
function getIdFromUrl(url) {
var id = '';
if (url.indexOf('/d/') > -1) {
id = url.split('/d/')[1].split('/')[0];
} else if (url.indexOf('id=') > -1) {
id = url.split('id=')[1].split('&')[0];
}
return id;
}
function mergePDF(files) {
if (files.length < 2) {
throw new Error('Cần ít nhất hai tệp PDF để hợp nhất.');
}
var pdfBlobArray = files.map(function(file) {
return file.getBlob();
});
// Sử dụng thư viện của Google Apps Script để hợp nhất các tệp PDF
var combinedPdfBlob = pdfBlobArray[0];
for (var i = 1; i < pdfBlobArray.length; i++) {
combinedPdfBlob.append(pdfBlobArray[i]);
}
return combinedPdfBlob;
}
Cách sử dụng:
Sheet1
và đặt các URL tệp DOC của bạn vào cột F.convertAndMergeDocsToPDF
.Nếu bạn gặp bối rối hoặc muốn tham khảo thêm kiến thức về trí tuệ nhân tạo, hãy ghé thăm trituenhantao.io – nơi mọi thứ về AI trở nên rõ ràng hơn cả thời tiết Sài Gòn!