我在 A1 中有一个带有调用 UDF 的 HYPERLINK 公式的单元格:
=HYPERLINK("#funcCopy()";"macro")
UDF 只需将 3 个单元格复制并粘贴到另一个位置:
Public Function funcCopy()
Set funcCopy = Selection
Dim plan As Worksheet
Dim copyrow As Range
Set plan = ThisWorkbook.Sheets("Plan1")
Set copyrow = plan.Range("A3:E3")
copyrow.Copy plan.Range("A5")
MsgBox "I'm actually working!"
End Function
但是当我点击超链接时,它不会复制/粘贴。我添加
MsgBox
验证函数是否正在运行(它是!)。通过 VBE 运行正常。
我对此无能为力。有什么我可以做的吗?
最佳答案
Copy
似乎不起作用,但如果符合您的要求,直接值(value)转移确实有效。
Public Function funcCopy() As Range
Set funcCopy = Selection
Dim plan As Worksheet
Dim copyrow As Range
Set plan = ThisWorkbook.Sheets("Plan1")
Set copyrow = plan.Range("A3:E3")
plan.Range("A5:E5").Value = copyrow.Value
MsgBox "I'm actually working!"
End Function
(已编辑以明确返回类型,归功于 @Mathieu Guindon 的 pointing that out。)
关于excel - 从公式运行的宏不会复制/粘贴,但通过 vbe 运行它可以正常工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55962644/