0

我想制作一个excel工作表来满足我制作word文档(邮件合并)的需要。

我可以使用IF这样的功能:

IF(A1=Specific text;Write this text;RUN MACRO with popup box to input other text)

基本上,如果值为真 - 编写预定义的文本,如果它是假的 - 给我弹出框输入新文本?

4

2 回答 2

2

是的,您可以,但是我不建议这样做,因为每次计算工作表时,如果您的IF()语句结果为FALSE,则将显示 InputBox。

但是,如果您坚持,请尝试以下操作:

细胞公式=IF(A1="Something","Result1", AskForResult())

在代码模块中,添加以下内容:

Public Function AskForResult() As String
    Dim strUserResponse As String

    strUserResponse = InputBox("What result to give?")

    AskForResult = strUserResponse
End Function

当 A1 <> "Something" 中的值时,这将显示如下所示的 InputBox

在此处输入图像描述

于 2013-04-10T10:53:10.517 回答
0

使用 vba 函数即可。如果您的 vba 函数是:

function test() as string

    Test = Inputbox("Enter value")

End function

用法:

=if(A1="value", "value1", test)
于 2013-04-10T10:52:15.773 回答