TC7*_*C76 6 google-sheets google-apps-script google-sheets-formula
是否有FORMULA将在单元格中显示文件名的方法?
我找到了可以执行此操作的脚本,可以显示工作表名称的公式,但是找不到可以显示文件名的公式。
如果我不得不求助于脚本,那就这样吧。但如果可能的话,我想使用公式。
如果之前有人问过这个问题,请把我指向那个帖子,我会删除这个帖子。
没有这样的公式。Google 表格的当前限制不支持仅通过内部公式获取工作表名称,因此您需要求助于脚本。这里有一些变化:
function SHEETNAME() {
return SpreadsheetApp.getActiveSpreadsheet().getActiveSheet().getName();
}
Run Code Online (Sandbox Code Playgroud)
function SHEETLIST() {
try {
var sheets = SpreadsheetApp.getActiveSpreadsheet().getSheets()
var out = new Array( sheets.length+1 ) ;
out[0] = [ "NAME" , "#GID" ];
for (var i = 1 ; i < sheets.length+1 ; i++ ) out[i] =
[sheets[i-1].getName() , sheets[i-1].getSheetId() ];
return out
}
catch( err ) {
return "#ERROR!"
}
}
Run Code Online (Sandbox Code Playgroud)
function SHEET(input) {
try {
var sheets = SpreadsheetApp.getActiveSpreadsheet().getSheets() ;
if( (input>0) && (input <= sheets.length)) return sheets[(input-1)].getName() ;
else return "invalid sheet #" ;
}
catch( err ) {
return "#ERROR!"
}
}
Run Code Online (Sandbox Code Playgroud)
function SNAME(option) {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getActiveSheet()
var thisSheet = sheet.getName();
if(option === 0){ // ACTIVE SHEET NAME =SNAME(0)
return thisSheet;
}else if(option === 1){ // ALL SHEET NAMES =SNAME(1)
var sheetList = [];
ss.getSheets().forEach(function(val){
sheetList.push(val.getName())
});
return sheetList;
}else if(option === 2){ // SPREADSHEET NAME =SNAME(2)
return ss.getName();
}else{
return "#N/A"; // ERROR MESSAGE
};
};
Run Code Online (Sandbox Code Playgroud)
No\xe2\x80\x94 不幸的是,任何内置函数都不可能做到这一点。
\n使用函数执行此操作的唯一方法是使用 AppScript 编写自定义函数,这本质上又回到了编写脚本。
\n| 归档时间: |
|
| 查看次数: |
5136 次 |
| 最近记录: |