【问题标题】:Accessing ActiveX textbox value from cell formula从单元格公式访问 ActiveX 文本框值
【发布时间】:2018-07-06 13:57:07
【问题描述】:

我无法发布我的代码,因为它是公司财产,但问题是我想输入一个单元格公式,以便在其他特定单元格发生变化时自动更新。

我有两列,一列是美元价格,另一列是另一种货币。另一个货币列是一个简单的“=SUM ...”,但货币转换为美元总是在变化,而且价格足够大,这些变化很重要。因此,我让用户在 activex 文本框中输入转换值,并且我想将美元单元格的公式设置为以美元为单位的价格,所以显然我需要得到这个转换值,但我不能只输入文本框名称,不起作用。

我正在使用 VBA,但我想将其作为“=FORMULA”直接输入到单元格中,其中公式包含 activeX 文本框值,以便它自动更新。

据我在 VBA 中发现,如果我想将公式分配给单元格,我必须在子或函数中这样做,所以每次我想更新单元格时都必须调用子,但我希望它像 Excel 用于其他单元格公式一样自动。

我一直在玩 Worksheet_Change 并考虑过 worksheet_open 但还有其他问题。例如,有许多不同的单元格可能会发生变化,我必须监控它们的变化,我不能简单地监控另一种货币的价格列的变化,因为当单元格从公式更新时,工作表更改不会将这些单元格显示为改变了。

也许这就像在 worksheet_open 上设置单元格公式一样简单,但我也没有运气让 cell.formula 甚至可以工作。我可以丢弃常规单元格的文本框,这将完全解决这个问题,但我还有一个 textbox_lostfocus 子需要运行,但我不知道如何为单元格执行此操作。

抱歉,这篇文章很长,总而言之,在不使用 vba 的情况下,如何在理想情况下评估用于单元格公式的文本框值?

【问题讨论】:

  • 请花时间创建并包含minimal reproducible example。它不一定是您公司的超级机密代码,只要是说明问题的可重现场景即可。
  • 欢迎来到Stack Overflow 这是一大块难以阅读的文本。一些格式和间距将有助于其他人更容易阅读(因此更有可能提供帮助!)除了上面的链接,请务必查看tour(并获得徽章!)以及“How to Ask”。这是tips from S.O.'s top user的列表@
  • 很公平,我会编辑帖子。
  • 对不起,这是我第一次发帖
  • 严肃的人。可以通过接受答案将其标记为完成。写个短篇吧。请不要在您的帖子中写出已解决或类似的内容,我们不是论坛而是问答网站。

标签: excel vba activex


【解决方案1】:

这就是链接单元格的用途。您将 ActiveX 文本框链接到一个单元格。更新文本框的值后,单元格值就会更新。您可以在正常的 excel 公式中引用此单元格。教程见这里:https://analysistabs.com/vba-code/activex-controls/textbox/

【讨论】:

    猜你喜欢
    • 2017-09-30
    • 1970-01-01
    • 1970-01-01
    • 2023-01-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多