Vba 使用IF条件在Google应用程序脚本电子表格中填充新工作表
我有一个谷歌电子表格,包含2张表格 如果工作表1中特定单元格的内容等于某个内容,我想在工作表2的特定单元格中写入某个内容 因为我需要做很多次,我想用谷歌应用程序脚本来做。使用VBA,这非常简单,但在这里它返回我“无法更改或修改对象的属性”。你知道我的代码有什么问题吗 谢谢你的帮助 这是我的密码:Vba 使用IF条件在Google应用程序脚本电子表格中填充新工作表,vba,google-apps-script,google-sheets,Vba,Google Apps Script,Google Sheets,我有一个谷歌电子表格,包含2张表格 如果工作表1中特定单元格的内容等于某个内容,我想在工作表2的特定单元格中写入某个内容 因为我需要做很多次,我想用谷歌应用程序脚本来做。使用VBA,这非常简单,但在这里它返回我“无法更改或修改对象的属性”。你知道我的代码有什么问题吗 谢谢你的帮助 这是我的密码: function synthese() { var results = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('results');
function synthese() {
var results = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('results');
var synthese = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('synt');
B3 = results.getRange("B3");
if (B3="Yes") {
results.getRange("A1").setValue = "Yes";
} else {
results.getRange("A1").setValue = "No";
}
}
B3仍然是一个范围,具有大小、背景色等属性。 它不是一个值,您可以通过
getValue()
提取它
您的第二个问题是,您正在if中执行作业
最后,setValue
是一个方法而不是一个属性,因此该值需要作为参数提供
function synthese() {
var results = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('results');
var synthese = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('synt');
var B3 = results.getRange("B3"); // good practice to make variables local
if (B3.getValue() === "Yes") {
results.getRange("A1").setValue("Yes");
} else {
results.getRange("A1").setValue("No");
}
}
哇,这么多错误。。。我还需要学习很多东西,JS和VBA真的不同。非常感谢你的帮助。很乐意帮忙。如果这解决了您的问题,请您将答案标记为已接受。谢谢