Kịch bản sau đây sẽ thêm một ô 0
vào mỗi ô trống trong phạm vi.
Mã
function onOpen() {
SpreadsheetApp.getUi().createMenu("Zeros")
.addItem("Sheet", "zeroSheet")
.addItem("Data range", "zeroDatarange")
.addItem("Selection", "zeroSelection")
.addItem("Manual Override", "zeroManual")
.addToUi();
}
function zeroSheet() {
var sheet = SpreadsheetApp.getActiveSheet();
zero(sheet, 'sheet');
}
function zeroDatarange() {
var range = SpreadsheetApp.getActiveSheet().getDataRange();
zero(range, 'datarange');
}
function zeroSelection() {
var range = SpreadsheetApp.getActiveSheet().getActiveRange();
zero(range, 'activerange');
}
function zeroManual() {
var spreadsheet = SpreadsheetApp.getActive();
zero(spreadsheet, 'manual');
}
function zero(source, type) {
var data, range;
switch(type) {
case 'sheet':
var lastRow = source.getMaxRows();
var lastColumn = source.getMaxColumns();
range = source.getRange(1, 1, lastRow, lastColumn);
break;
case 'manual':
range = source.getSheetByName('Sheetname').getRange(2, 4, 3, 6);
break;
case 'datarange':
case 'activerange':
range = source;
break;
}
data = range.getValues();
range.setValues( data.map( function(row) {
return row.map( function(cell) {
return !cell ? 0 : cell;
});
}));
}
Ghi chú
Khi tệp được mở, một mục menu có tên Zeros được tạo, có bốn mục phụ. Nếu bạn cũng muốn chạy chức năng thủ công khi mở, thì chỉ cần thêm nó như vậy:

Thí dụ
Tôi đã tạo một tệp ví dụ cho bạn: Thay thế ô trống bằng số không .
1. Tạo một bản sao của tệp hoặc dán mã trong Công cụ> Trình chỉnh sửa tập lệnh . 2. Nhấn nút lỗi đồng hồ để xác thực tập lệnh.
3. Mở lại tài liệu của bạn, bây giờ bạn có menu mới!
