将二维数组打印到消息框 - Excel VBA

时间:2016-05-24 15:45:34

标签: excel vba excel-vba

我试图以可读的形式将动态数组的后两个“列”写入消息框。这可能吗?

然后,如果用户点击“确定”以继续播放该子节目,那么我想要,如果用户点击取消,那么我希望该子播放停止。

加载数组的代码如下:

ReDim table(tableSize, 1 To 3)   ' set array length

i = 1
c = 1
Do While Worksheets("Items").Cells(i, 1).Value <> ""

    If Worksheets("Items").Cells(i, 2).Value = item Then    'load array
        table(c, 1) = i
        table(c, 2) = Worksheets("Items").Cells(i, 4)
        table(c, 3) = Worksheets("Items").Cells(i, 10)
        c = c + 1
    End If

    i = i + 1
Loop

我试图使用foreach循环,但我不知道这是否是最好的方式,我无法解决。为了使它稍微复杂一点,我想在打印出来的数组之前和之后包含一个字符串。

1 个答案:

答案 0 :(得分:1)

这是获得表格风格的一种方式&#34;消息:

Sub MessyMessage()
    msg = ""

    For Each r In Range("A:A")
        If r.Value = "" Then Exit For
        msg = msg & vbCrLf & r.Value & vbTab & r.Offset(0, 1).Value
    Next r

    MsgBox msg
End Sub

enter image description here