Excel中的VBA:如果列没有';那里还不存在
好的,我在一列中有一个名称表,在另一列中有相应的数字。大多数名字出现不止一次,每次都有不同的数字。该表可能会在将来添加到。我正在尝试编写一个VBA宏,它将每个名称输出一次,并将附加到它们的数字的总和显示在单独的表中。我已经8个月没用VBA了,我真的生锈了。建议?我相信,记得添加参考microsoft脚本运行时。你需要在这里使用字典Excel中的VBA:如果列没有';那里还不存在,vba,excel,Vba,Excel,好的,我在一列中有一个名称表,在另一列中有相应的数字。大多数名字出现不止一次,每次都有不同的数字。该表可能会在将来添加到。我正在尝试编写一个VBA宏,它将每个名称输出一次,并将附加到它们的数字的总和显示在单独的表中。我已经8个月没用VBA了,我真的生锈了。建议?我相信,记得添加参考microsoft脚本运行时。你需要在这里使用字典 Sub test() Dim var As Variant Dim rng As Range Set rng = Range("A1:A10
Sub test()
Dim var As Variant
Dim rng As Range
Set rng = Range("A1:A100")
Dim dico As Dictionary
Set dico = New Dictionary
For Each var In rng.Cells
if dico.Exists(var.value) Then
dico(var.value) = dico(var.value) + var.offset(0,1).value
else
dico.Add var.value, var.offset(0,1).value
end if
Next var
Set rng = Range("C1")
Dim i as double
i = 0
For Each var In dico.keys
rng.offset(i).value = var
rng.offset(i,1).value = dico(var)
Next var
End sub
因此,这不是一个代码编写服务。我建议录制一个宏,将数据复制到新的工作表/范围中,删除重复项,并在下一个可用列中添加一个
SUMIF
列。从那里,您应该能够计算出要包含在过程中的范围等。谢谢,我正在寻找字典函数。最近使用了更多的python。