Javascript 计算Google Sheets脚本中的粗体单元格数
所以,老实说,我不是一个很好的编码员,但我已经设法摸索出了计算单元格背景颜色的方法,但我努力让它在计算字体粗体的单元格时起作用。我在下面详细介绍了我的函数,其中只有6个单元格采用粗体字体,但有13个单元格采用粗体字体Javascript 计算Google Sheets脚本中的粗体单元格数,javascript,google-apps-script,google-sheets,Javascript,Google Apps Script,Google Sheets,所以,老实说,我不是一个很好的编码员,但我已经设法摸索出了计算单元格背景颜色的方法,但我努力让它在计算字体粗体的单元格时起作用。我在下面详细介绍了我的函数,其中只有6个单元格采用粗体字体,但有13个单元格采用粗体字体 function countboldcells() { var book = SpreadsheetApp.getActiveSpreadsheet(); var sheet = book.getActiveSheet(); var range_input = shee
function countboldcells() {
var book = SpreadsheetApp.getActiveSpreadsheet();
var sheet = book.getActiveSheet();
var range_input = sheet.getRange("E2:S7");
var range_output = sheet.getRange("G14");
var cell_styles = range_input.getFontStyle();
var count = 0;
for(var r = 0; r < cell_styles.length; r++) {
for(var c = 0; c < cell_styles[0].length; c++) {
if(cell_styles.isBold = true) {
count = count + 1;
}
}
range_output.setValue(count);
}
}
函数countboldcells(){
var book=SpreadsheetApp.getActiveSpreadsheet();
var sheet=book.getActiveSheet();
var range_输入=sheet.getRange(“E2:S7”);
var range_输出=sheet.getRange(“G14”);
var cell_styles=range_input.getFontStyle();
var计数=0;
对于(var r=0;r
您的if语句需要在括号内有3“=”if(cell_styles.isBold==true)
是返回或不返回bold
的方法。然后计算它们的简单方法是将数组、所有的“bold”
元素展平,并获得过滤列表的值
function countboldcells() {
var book = SpreadsheetApp.getActiveSpreadsheet();
var sheet = book.getActiveSheet();
var range_input = sheet.getRange("E2:S7");
var range_output = sheet.getRange("G14");
// Get the fontWeights of the range and flatten the array
var cell_styles = range_input.getFontWeights().join().split(",");
// Filter out any value that is not "bold"
var filter_bold = cell_styles.filter(function (e) { return e == "bold" });
// Set the count
range_output.setValue(filter_bold.length);
}
这是你的代码和更正。评论中有解释
function countboldcells() {
var book = SpreadsheetApp.getActiveSpreadsheet();
var sheet = book.getActiveSheet();
var range_input = sheet.getRange("E2:S7");
var range_output = sheet.getRange("G14");
var cell_styles = range_input.getFontWeights(); // getFontStyle can only return 'italic' or 'normal'
var count = 0;
for(var r = 0; r < cell_styles.length; r++) {
for(var c = 0; c < cell_styles[0].length; c++) { // isBold is a method for Google Documents only (not sheets)
if(cell_styles[r][c] === "bold") { // you need at least two '=' signs // also include the index of cell_styles
count = count + 1; // count += 1 would also work
}
}
}
range_output.setValue(count); // make sure you setValue only when booth loops are done.
}
函数countboldcells(){
var book=SpreadsheetApp.getActiveSpreadsheet();
var sheet=book.getActiveSheet();
var range_输入=sheet.getRange(“E2:S7”);
var range_输出=sheet.getRange(“G14”);
var cell_styles=range_input.getFontWeights();//getFontStyle只能返回“italic”或“normal”
var计数=0;
对于(var r=0;r