Sử dụng câu trả lời @gabhubert, bạn có thể làm được điều này, nếu bạn muốn để có được các kết quả từ các loại nguyên liên tiếp. Từ trình chỉnh sửa tập lệnh.
function GetMD5Hash(value) {
var rawHash = Utilities.computeDigest(Utilities.DigestAlgorithm.MD5, value);
var txtHash = '';
for (j = 0; j <rawHash.length; j++) {
var hashVal = rawHash[j];
if (hashVal < 0)
hashVal += 256;
if (hashVal.toString(16).length == 1)
txtHash += "0";
txtHash += hashVal.toString(16);
}
return txtHash;
}
function straightToText() {
var ss = SpreadsheetApp.getActiveSpreadsheet().getSheets();
var r = 1;
var n_rows = 9999;
var n_cols = 1;
var column = 1;
var sheet = ss[0].getRange(r, column, n_rows, ncols).getValues(); // get first sheet, a1:a9999
var results = [];
for (var i = 0; i < sheet.length; i++) {
var hashmd5= GetMD5Hash(sheet[i][0]);
results.push(hashmd5);
}
var dest_col = 3;
for (var j = 0; j < results.length; j++) {
var row = j+1;
ss[0].getRange(row, dest_col).setValue(results[j]); // write output to c1:c9999 as text
}
}
Sau đó, từ trình đơn Run, chỉ cần chạy hàm straightToText() để bạn có thể nhận được kết quả và bỏ qua quá nhiều cuộc gọi đến lỗi chức năng.
Nguồn
2014-03-25 11:04:22
Nice câu trả lời. Bạn có thể muốn thêm 'Utilities.sleep (100)' vào một nơi nào đó bên trong hàm, để ngăn không cho nó bị rơi khi sử dụng chức năng tự động điền (nếu không bạn sẽ gặp giới hạn về tần suất có thể gọi) – leo
Tôi không thể dường như để có được điều này để phù hợp với những gì 'md5sum (1)' nào; ví dụ 'frew' trong cli cho' c241183cbf6766bd86061a60d6c8fe1b' không có dòng mới, nhưng 'cfb5d06a43aad502d0f6219143ba0e34' từ hàm. –