如何使用 Excel VBA 将复制的值粘贴到 InputBox 中?

How to paste copied value into InputBox using Excel VBA?

如何将从 Excel 单元格复制的值粘贴到 InputBox 中?

我可以从记事本复制到输入框时粘贴相同的值。

Sub input_box()

    Dim Input_value as variant

    Application.EnableEvents = False
    Application.ScreenUpdating = False
    Application.Calculation = xlCalculationManual

    Input_value = InputBox(Prompt:="Please enter ID", Title:="Enter ID")
    If Input_value = "" Or Input_value = Empty Then
        msg = MsgBox("Please enter ID!", vbCritical + vbDefaultButton1, "Error")
        goto ends:
    end if
ends:
    Application.EnableEvents = True
    Application.ScreenUpdating = True
    Application.Calculation = xlAutomatic

End sub

Input_Value 是否声明为变体、字符串、整数……? 此外,InputBox 的完整语法包括一个类型(参见 https://docs.microsoft.com/en-us/office/vba/api/excel.application.inputbox

类型应与您的声明方式相匹配 Input_Value。它还将有助于编辑错误的输入

我遇到的问题已通过禁用 Application.Calculation = xlCalculationManual 得到解决。 现在,从 excel 单元格复制的值的粘贴工作正常。