将命令按钮移动到 vba 中的新 sheet

Moving a command button to a new sheet in vba

我有一个命令按钮可以为我做很多计算。要制作用户界面,我需要将按钮从 "calculation" sheet 移动到 "user interface" sheet。移动按钮后,我需要将输入和输出寻址到 "calculation" sheet。 我使用 with 语句如下:

  With Sheets("Calculation")
    .Range("C3", Range("C3").End(xlDown)).Clear
    .Range("X3", Range("X3").End(xlDown)).Clear
    .Range("Y3", Range("Y3").End(xlDown)).Clear
    .Range("z3", Range("z3").End(xlDown)).Clear
    .Range("AC3", Range("AC3").End(xlDown)).Clear
    .Range("B3", Range("B3").End(xlDown)).Clear
    .Range("E4", Range("E4").End(xlDown)).Clear
    .Range("A3", Range("A3").End(xlDown)).Clear
    .Range("K3", Range("K3").End(xlDown)).Clear
    .Range("D3", Range("D3").End(xlDown)).Clear

End With

而且我遇到了 运行 时间错误“1004”(表示:应用程序定义或对象定义的错误。)

我想知道当我在 "user interface" sheet.

中有按钮时如何调用 "calculation" sheet

您收到错误的原因是您的 Range 语句中的第二个拼写错误。如果没有 .,您指的是当前工作表,而不是 With 语句中的工作表,运行时错误是因为无法跨 2 张工作表定义该范围。

With Sheets("Calculation")
    .Range("C3", .Range("C3").End(xlDown)).Clear
    .Range("X3", .Range("X3").End(xlDown)).Clear
    .Range("Y3", .Range("Y3").End(xlDown)).Clear
    .Range("z3", .Range("z3").End(xlDown)).Clear
    .Range("AC3", .Range("AC3").End(xlDown)).Clear
    .Range("B3", .Range("B3").End(xlDown)).Clear
    .Range("E4", .Range("E4").End(xlDown)).Clear
    .Range("A3", .Range("A3").End(xlDown)).Clear
    .Range("K3", .Range("K3").End(xlDown)).Clear
    .Range("D3", .Range("D3").End(xlDown)).Clear
End With