带有集合示例的Excel宏

时间:2014-09-04 10:58:27

标签: excel vba

我的数据

Person     City    New City
A          P
B          Q
C          R

我想从城市列表(第2列)中随机将新城市分配给某人。但是,新城不应该与已分配给该人的城市相同。

我尝试创建一个Excel宏,但是,我无法获得相同的参考库。例如

Dim RandomClass As New Random()
Dim RememberSet As New HashSet(Of Integer)

Dim RandomNumber As Integer

While RememberSet.Count < 5
    RandomNumber = RandomClass.Next(0, 10)
    If RememberSet.Add(RandomNumber) Then
        MsgBox (RandomNumber)
    End If
End While

在前两行给出编译时错误。有人可以帮忙吗?或者上传使用列表或集合的Excel宏?

1 个答案:

答案 0 :(得分:1)

问题是您使用语法来解决问题。 They are different languages,语法不同。你说的是另一种语言。 Excel使用,Visual Basic用于应用程序,即Microsoft Applications。相应地调整您的代码和语法。

假设您根据自己的问题使用VBA:您可以使用List ItemCollection来执行此操作。

Dim varCollection As Collection

中没有List类,


在VB(与VBA相对)中,您可以使用:

Dim varCollection As New Microsoft.VisualBasic.Collection()