Отобразить данные одномерного массива с помощью функции MsgBox (не используя цикл) — Visual Basic(Бейсик)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
iFamily = Array("Иванов", "Петров", "Сидоров")
  
MsgBox Join(iFamily, vbLf), , ""
 
Dim iFamily$(1 To 3) 'iFamily(1 To 3) As String
 
iFamily(1) = "Иванов"
iFamily(2) = "Петров"
iFamily(3) = "Сидоров"
  
MsgBox Join(iFamily, vbCr), , ""
Если же речь идёт о данных столбца многомерного массива, то в таком случае можно объединить вышеприведённый пример, т.е. :
 
 
Dim iMassiv(1 To 10, 1 To 5)
  
'Здесь идёт заполнение массива некими данными
 
MsgBox Join(Application.Transpose( _
Application.Index(iMassiv, 0, 1)), vbNewLine), , "Первый столбец :"
  
'или так
 
With Application
     MsgBox Join(.Transpose(.Index(iMassiv, 0, 3)), _
     Chr(10)), , "Третий столбец :"
End With
  
With WorksheetFunction
     MsgBox Join(.Transpose(.Index(iMassiv, 0, 5)), _
     Chr(13)), , "Пятый столбец :"
End With
Почти тоже самое, но применительно к данным ячейкам активного рабочего листа, может выглядить так:
 
 
MsgBox Join(Application.Transpose(Range("A1:A10").Value), vbLf)
  
MsgBox Join([Transpose(A1:A10)], vbCr)

Leave a Comment