代码之家  ›  专栏  ›  技术社区  ›  Aaron Parisi

如何在VBA中附加初始空字符串数组?

  •  0
  • Aaron Parisi  · 技术社区  · 6 年前

    我的代码位于工作表更改函数中:

                Dim StartNums(0 To 2) As String
    
                doneColor = RGB(175, 175, 175)
    
                cmt = FRg.Comment.Text
    
    
                rowLen = InStr(1, cmt, vbLf)
                If rowLen = 0 Then
                    rowLen = Len(cmt)
                End If
                numChunks = rowLen / 32
                numRows = Len(cmt) / rowLen
    '            For i = 1 To 12 'FRg.Comment.Shape.TextFrame.Characters.Count
    '                With FRg.Comment.Shape.TextFrame.Characters(i, 1)
    '                    If .Font.Strikethrough = True Then
    '                        .Font.Color = vbGreen
    '                    End If
    '                End With
    '            Next i
                MsgBox ("About to fill StartNums, nothing should be in it yet")
                For j = 0 To numChunks - 1
                    MsgBox ("going to add stuff for chunk " & j)
                    If Not UBound(StartNums) = 2 Then
    '                    MsgBox ("resizing an empty array")
    '                    ReDim Preserve StartNums(3) As Variant
    '                Else
                        'MsgBox ("resizing a non-empty array")
                        ReDim Preserve StartNums(UBound(StartNums) + 3) As String
                    End If
    
                    StartNums(UBound(StartNums) - 2) = (j * 32) + 5 + (0 * 9)
                    StartNums(UBound(StartNums) - 1) = (j * 32) + 5 + (1 * 9)
                    StartNums(UBound(StartNums) - 0) = (j * 32) + 5 + (2 * 9)
                Next j
    

    Array already dimensioned . 我知道它已经被标注了尺寸,这就是我重新标注的原因。

    如何在数组中再添加3个空格?

    1 回复  |  直到 6 年前
        1
  •  4
  •   braX    6 年前

    当你最初 Dim 如果你打算以后再改尺寸,你就不能给它尺寸:

    Dim StartNums(0 To 2) As String
    

    你会用

    Dim StartNums() As String
    

    然后在下一行

    ReDim StartNums(0 To 2)
    

    注意,您也可以使用它,因为默认情况下它是基于0的。

    ReDim StartNums(2)
    

    Redim Preserve 改变它的大小。

    推荐文章