2

希望有人可以帮助解决我遇到的 VBA 问题。

当用户双击单元格时,我想更改命名范围的值。有两个工作表,一个是单元格中的值的初始工作表,另一个是包含命名范围 Account_Number 的目标工作表。

这是我的代码:

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)

    [Account_Number] = ActiveCell.Value 'assign the value to the Named Range

    Range([Account_Number]).Select ' go to the Named Range on the other worksheet

   'Sheets("Transaction Listing_LINKS").Select 'the workaround to the problem below
End Sub

我期望的是命名范围被填充和选择。

问题是我得到一个

“1004 错误:对象 '_Worksheet' 的方法 'Range' 失败”

双击单元格时出错。

奇怪的是,如果我只使用一个工作表,它就可以正常工作。

谁能向我解释为什么会发生这种情况以及如何避免它?

我能想到的唯一修复/解决方法是对工作表的选择进行编码以强制它选择它。

谢谢

4

1 回答 1

2

尝试:

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
  'assign the value to the Named Range
  Sheet2.Range("Account_Number").Value = ActiveCell.Value
  ' go to the Named Range on the other worksheet
  Application.GoTo Reference:="Account_Number" 
 'Sheets("Transaction Listing_LINKS").Select 'the workaround to the problem below
End Sub

当然,您需要将“Sheet2”更改为包含命名范围的目标工作表名称。

于 2012-06-10T03:27:31.270 回答