第一次使用,如果我的问题不符合格式指南,我会道歉。
我有几张每天都要改变的数据,我希望和解。 在一个特定的表单中,详细列出了客户列表。 作为对账的一部分,我需要随机选择其中一家公司并列出其中的某些细节
这些详情载于第3,5,7,14和20栏。
下面我粘贴了代码,在那里我计算了一天(最后一行)中有多少客户,并随机抽取客户并列出数据。
但是我一直收到运行时错误450:错误的数字争议或无效的属性分配。
任何人都可以帮助我吗?
'Regency
Dim Regrows As Integer
Dim RegCust As Integer
Dim Regcustomer As Range
AgedDebtors.Activate
AgedDebtors.Sheets("Regency").Activate
Regrows = Range("C" & Rows.Count).End(xlUp).Row
RegCust = Int((Regrows - 45 + 1) * Rnd + 45)
With AgedDebtors.Sheets("Regency")
Regcustomer = Range(Cells(RegCust, 3), Cells(RegCust, 5), _
Cells(RegCust, 7), Cells(RegCust, 14), _
Cells(RegCust, 20))
Regcustomer.Activate
Selection.Copy
End With
答案 0 :(得分:1)
在为对象变量赋值时需要使用Set
,但主要问题是Range()
无法按照您希望的方式运行。
Set Regcustomer = .Range(Replace("C?,E?,G?,N?,T?", "?", RegCust))
您不需要激活工作表来复制范围,也不需要激活范围
Dim Regrows As Integer
Dim RegCust As Integer
Dim Regcustomer As Range
With AgedDebtors.Sheets("Regency")
Regrows = .Range("C" & .Rows.Count).End(xlUp).Row
RegCust = Int((Regrows - 45 + 1) * Rnd + 45)
.Range(Replace("C?,E?,G?,N?,T?","?",RegCust)).Copy
End With