Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Как Разделить Разбить Одномерный массив на несколько массиво - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Как Разделить Разбить Одномерный массив на несколько массиво (Макросы/Sub)
Как Разделить Разбить Одномерный массив на несколько массиво
Elhust Дата: Пятница, 17.11.2017, 16:38 | Сообщение № 1
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 184
Репутация: -1 ±
Замечаний: 0% ±

Excel 2010
Есть массив Arr=(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21)
Arr1 = (1,2,3,4,5,6,7)
Arr2 = (8,9,10,11,12,13,14)
Arr3 = (15,16,17,18,19,20,21)
Отделять по семь значений
нашел в Инете вот это но не понял как пользоваться
[vba]
Код

Sub main()
Dim m
m = q_Split(Array("раз", "два", "три"), 2)
End Sub

Function q_Split(arr, u&)
Dim a(), aa()
Dim n As Long, nn As Long, i As Long, j As Long
ReDim a(UBound(arr) \ u)
For i = 0 To UBound(a)
  For j = 0 To u - 1
    If n > UBound(arr) Then
      Exit For
    Else
      ReDim Preserve aa(j)
      aa(j) = arr(n)
      n = n + 1
    End If
  Next j
  a(i) = aa
Next i
q_Split = a
End Function
[/vba]


Каждый сам выбирает правила игры
 
Ответить
СообщениеЕсть массив Arr=(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21)
Arr1 = (1,2,3,4,5,6,7)
Arr2 = (8,9,10,11,12,13,14)
Arr3 = (15,16,17,18,19,20,21)
Отделять по семь значений
нашел в Инете вот это но не понял как пользоваться
[vba]
Код

Sub main()
Dim m
m = q_Split(Array("раз", "два", "три"), 2)
End Sub

Function q_Split(arr, u&)
Dim a(), aa()
Dim n As Long, nn As Long, i As Long, j As Long
ReDim a(UBound(arr) \ u)
For i = 0 To UBound(a)
  For j = 0 To u - 1
    If n > UBound(arr) Then
      Exit For
    Else
      ReDim Preserve aa(j)
      aa(j) = arr(n)
      n = n + 1
    End If
  Next j
  a(i) = aa
Next i
q_Split = a
End Function
[/vba]

Автор - Elhust
Дата добавления - 17.11.2017 в 16:38
nilem Дата: Пятница, 17.11.2017, 16:55 | Сообщение № 2
Группа: Авторы
Ранг: Старожил
Сообщений: 1613
Репутация: 563 ±
Замечаний: 0% ±

Excel 2013, 2016
как-то так
[vba]
Код
Sub main()
Dim m
'делим массив m на массивы по 7 элементов
m = q_Split(Array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21), 7)
'получаем массив, состоящий из 3-х масивов, каждый по 7 эл-тов
MsgBox m(0)(2) '3-й элемент 1-го массива (нумерация с нуля)
MsgBox m(1)(5) '6-й элемент 2-го массива (нумерация с нуля)
End Sub
[/vba]


Яндекс.Деньги 4100159601573
 
Ответить
Сообщениекак-то так
[vba]
Код
Sub main()
Dim m
'делим массив m на массивы по 7 элементов
m = q_Split(Array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21), 7)
'получаем массив, состоящий из 3-х масивов, каждый по 7 эл-тов
MsgBox m(0)(2) '3-й элемент 1-го массива (нумерация с нуля)
MsgBox m(1)(5) '6-й элемент 2-го массива (нумерация с нуля)
End Sub
[/vba]

Автор - nilem
Дата добавления - 17.11.2017 в 16:55
Elhust Дата: Понедельник, 20.11.2017, 08:42 | Сообщение № 3
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 184
Репутация: -1 ±
Замечаний: 0% ±

Excel 2010
nilem, Спасибо hands


Каждый сам выбирает правила игры
 
Ответить
Сообщениеnilem, Спасибо hands

Автор - Elhust
Дата добавления - 20.11.2017 в 08:42
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Как Разделить Разбить Одномерный массив на несколько массиво (Макросы/Sub)
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!