如何在Google Sheets中通过自定义公式获取单元格字体大小
解决Google Sheets自定义公式获取字体大小的问题
你的代码无法运行的核心问题有两个:
getFontSize()是Range对象的专属方法,不能直接全局调用,必须先获取目标单元格的Range实例再调用该方法- 你传入的
Number参数没有实际意义,未关联到目标单元格
正确的自定义函数代码
下面的代码支持两种使用场景:
- 输入
=FONTSIZE():获取当前单元格的字体大小 - 输入
=FONTSIZE(A1):获取指定单元格(如A1)的字体大小
function FONTSIZE() { const currentCell = SpreadsheetApp.getActiveRange(); const formula = currentCell.getFormula(); // 解析公式中的目标单元格引用 const refMatch = formula.match(/FONTSIZE\((.*?)\)/); if (refMatch) { const targetRef = refMatch[1]; const targetRange = currentCell.getSheet().getRange(targetRef); return targetRange.getFontSize(); } // 无参数时返回当前单元格字体大小 return currentCell.getFontSize(); }
注意事项
- 如果要获取其他工作表的单元格字体大小,需要传入完整引用,比如
=FONTSIZE(Sheet2!B3) - 首次使用时需要授权脚本访问你的表格数据,按照页面提示完成授权即可
内容的提问来源于stack exchange,提问作者Rhys Davies
相关产品推荐
相关产品推荐

