【发布时间】:2018-05-13 07:14:47
【问题描述】:
谁能帮我解决这个问题?对于这个特定的功能,它得到运行时错误 1004 为 "sheet1.Range("a1:a" & RowNbr).AdvancedFilter Action:=xlFilterCopy, CopyToRange:=sheet1.Range("J1"), Unique:=True "
这是完整的代码:
Sub stock_exercise()
Dim RowNbr As Long
Dim uniqueticker As Long
Dim totalvolume As String
Dim r As Long
Dim sheet1 As Worksheet
Set sheet1 = ThisWorkbook.Sheets("A")'determine row count
RowNbr = sheet1.Range("A1", sheet1.Range("A1").End(xlDown)).Rows.Count
'copy and past unique ticker from column a to column j
sheet1.Range("a1:a" & RowNbr).AdvancedFilter Action:=xlFilterCopy, CopyToRange:=sheet1.Range("J1"), Unique:=True
sheet1.Range("J1").Value = "ticker"
uniqueticker = sheet1.Range("j1", Range("j1").End(xlDown)).Rows.Count
'sumif of each ticker
For r = 2 To uniqueticker
totalvolume = Application.SumIf(sheet1.Range("a1:a" & RowNbr), sheet1.Cells(r, 10), sheet1.Range("g1:g" & RowNbr))
sheet1.Cells(r, 11).Value = totalvolume
Next r
End Sub
【问题讨论】:
-
fwiw,它为我运行;生成一个唯一列表,包括从 a 列到 j 列的列标题标签。 (顺便说一句,edit 你的问题,选择你的代码并点击 ctrl+k)
-
如果失败,
RowNbr有什么价值? -
Excel 还将工作表
CodeName保持相同的格式。我会使用wksOne之类的东西来代替sheet1。不过可能无法解决您的问题。
标签: vba excel runtime-error