如何将string值传递给VBA中的数组

编辑:

现在我将数组更改为范围: Set arrDeviceType = ScriptSheet.Range("P2:P" & LastApar)但是仍然在arrDeviceType(X, 1).Resize(I - 2, 0) = "Internet"


我的VBA脚本有这个问题

 arrDeviceType(X, 1).Resize(I - 2, 0) = "Internet" 

arrDeviceType被设置为一个变体,它的单元格值是“Internet System”,我需要将该列与“Internet System”与另一个带有“Internet”的工作表列进行比较,但它们的意思是相同的。 由于我需要匹配这两个值,所以我想让脚本首先在一个工作表中将“Internet系统”识别为“Internet”,而不对工作表进行实际的更改。 所以我把所有的东西都存放在arrDeviceType arrDeviceType = ScriptSheet.Range("P2:P" & LastApar).Value

所以问题是我该怎么做? 我已经做了相同的date值,将其更改为一个月的第一天,像这样arrOpenDate(X, 1) = arrOpenDate(X, 1) - Day(arrOpenDate(X, 1)) + 1 ,它的作品,所以我试图达到与此string值相同。

下面贴出的相关代码,有三对string需要匹配:

  I = 1 X = 1 Do While arrDeviceType(I, 1) = "Internet System" I = I + 1 Loop arrDeviceType(X, 1).Resize(I - 2, 0) = "Internet" X = I OPS = X Do While arrDeviceType(OPS, 1) = "Other production system" OPS = OPS + 1 Loop arrDeviceType(X, 1).Resize(OPS - X, 0) = "DR" X = OPS DR = X Do While arrDeviceType(DR, 1) = "System subject to disaster recovery" DR = DR + 1 Loop arrDeviceType(X, 1).Resize(DR - X, 0) = "DR"