从数组中删除空值并复制到新数组

我将一行文本分成一个数组,然后试图把一个新的数组没有空格。 出于某种原因,它不是从旧arrays复制到新arrays。 顺便说一句,如果有人有这样做的更有效的方式,我也打开。

Dim x As Variant, i As Integer, m As String, rdate As String, k(0 To 50) As Variant, j As Integer rdate = ThisWorkbook.Sheets("sheet1").Range("a58").Value j = 0 x = Split(rdate, " ") For i = 0 To UBound(x) If x(i) <> "" Then k(j) = x(i) j = j + 1 m = m & j & k(j) & vbCrLf End If Next MsgBox m 

您的脚本添加k(j)后递增j …您的msgbox显示为空。