LibreOffice Calc Goal Seek 在基本宏中不起作用
Posted
技术标签:
【中文标题】LibreOffice Calc Goal Seek 在基本宏中不起作用【英文标题】:LibreOffice Calc Goal Seek does not work from Basic Macro 【发布时间】:2020-04-09 16:52:26 【问题描述】:我正在尝试从 Calc 基本宏运行目标搜索。
Public Sub Goal_Seek()
oVariableCell = detailSheet.getCellRangeByName("VariableCell")
oFormulaCell = detailSheet.getCellRangeByName("FormulaCell")
oTargetCell = detailSheet.getCellRangeByName("TargetCell")
ThisComponent.seekGoal(oFormulaCell.CellAddress, oVariableCell.CellAddress, oTargetCell.getValue)
End Sub
当我运行宏时,没有任何更新。当我从电子表格菜单 Tools->Goal Seek 运行 Goal Seek 并在表单中输入相同的单元格时,目标搜索功能正常。
我的宏在我的宏标准模块 1 中。命名范围返回正确的单元格地址。从宏调用时,什么可能导致目标寻求不更新?
【问题讨论】:
剪切粘贴时错过了sub的第一行detailSheet = ThisComponent.Sheets(7)
【参考方案1】:
它不起作用的原因是当我从宏调用目标集时,我必须自己设置结果。我应该猜到的。新代码是
detailSheet = ThisComponent.Sheets(7)
oVariableCell = detailSheet.getCellRangeByName("VariableCell")
oFormulaCell = detailSheet.getCellRangeByName("FormulaCell")
oTargetCell = detailSheet.getCellRangeByName("TargetCell")
oGoal = ThisComponent.seekGoal(oFormulaCell.CellAddress, oVariableCell.CellAddress, oTargetCell.getValue)
oVariableCell.setValue(oGoal.Result)
End Sub
【讨论】:
以上是关于LibreOffice Calc Goal Seek 在基本宏中不起作用的主要内容,如果未能解决你的问题,请参考以下文章
用于 Libreoffice-calc 和 Openoffice-calc 的 Python“Hello World”[关闭]
LibreOffice Calc / OpenOffice Calc / Excel:如何显示负持续时间?
用于 CSV 导入的 Libreoffice Calc 模板
如何通过 LibreOffice 的 Calc 中的正则表达式语句捕获公司名称