繁体   English   中英

Excel VBA - 将数据从单元格解析为数组

[英]Excel VBA - parse data from cell into array

我在一个单元格(E2)中有数据,由逗号和空格分隔的数字组成(即1, 14, 33, 46, 22, 3 )。 单元格中最多可以有1,000个数字。 我想取这些数字并将它们放在一个数组中,然后我可以将它们与我称之为AudienceNumber的变量相匹配。 如果数组包含数字1AudienceNumber我想将我构建数组的行(在本例中为第2行)写入新工作簿。 如果数组不包含1AudienceNumber我想转到下一行的单元格E并重复该过程。 我想继续这样做,直到单元格E为空。 我似乎无法将单元格E2的内容放入数组中。 这是我得到的:

Dim AudienceArray (1000) as Variant
ActiveWorkbook.Worksheets("Data").Select
Range("E2").Select
AudienceArray=Sprlit(ActiveCell.Value,",")

当我运行sub我得到了一个

无法分配给阵列错误

信息。 我似乎无法弄清楚我做错了什么。 任何帮助,将不胜感激。

尝试这个:

Option Explicit

    Sub Test()

        Dim ws As Worksheet
        Dim val As String
        Dim arr As Variant
        Dim i As Long

        Set ws = ActiveWorkbook.Worksheets("Data")
        val = ws.Range("E2").Text
        arr = Split(val, ",", -1, vbBinaryCompare)

        For i = 0 To UBound(arr)
            Debug.Print arr(i)
            'split retains spaces...
            Debug.Print Trim$(arr(i))
        Next i

    End Sub

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM