powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / VBA Excel, как вывести на лист определенные строки массива
6 сообщений из 6, страница 1 из 1
VBA Excel, как вывести на лист определенные строки массива
    #39104335
Bobax012
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
VBA Excel:
Есть готовый массив, например
1,2,3,4,5
6,7,8,9,0
9,8,7,6,5
Как вывести содержимое на лист так, чтобы получилось следующее:
1,6,9
2,7,8
3,8,7
4,9,6
5,0,5
Можно ли это сделать без FOR?
Если, да, то подскажите как.
...
Рейтинг: 0 / 0
VBA Excel, как вывести на лист определенные строки массива
    #39104344
Фотография The_Prist
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Bobax012,

Вы хотите транспонировать массив без цикла? Чем вызвана прихоть?
В принципе без проблем должно сработать это:
Код: vbnet
1.
2.
3.
4.
5.
dim arr
'заполнили массив
'....
'теперь "переворачиваем(транспонируем)
arr = application.Transpose(arr)


Но у этого метода есть ограничения:
-не работает с массивами более 65536 строк;
-обрезает текст до 255 символов.
если всегда числа и их не так уж много - проблем не будет.
...
Рейтинг: 0 / 0
VBA Excel, как вывести на лист определенные строки массива
    #39104383
Bobax012
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
The_Prist,

Спасибо за наводку, транспонирование получилось, остался вопрос, как целиком допустим 1 строку полученного массива перенести на 2 столбец листа, потом 2 строку массива на 4 столбец листа.
...
Рейтинг: 0 / 0
VBA Excel, как вывести на лист определенные строки массива
    #39104404
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Bobax0121 строку ... на 2 столбец листа, потом 2 строку массива на 4 столбец листа.
А вот это уже только построчно заполнять. В цикле.
...
Рейтинг: 0 / 0
VBA Excel, как вывести на лист определенные строки массива
    #39104417
Bobax012
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
AkinaBobax0121 строку ... на 2 столбец листа, потом 2 строку массива на 4 столбец листа.
А вот это уже только построчно заполнять. В цикле.

Да, так и придется видимо.
Спасибо Всем за помощь.
...
Рейтинг: 0 / 0
VBA Excel, как вывести на лист определенные строки массива
    #39104881
Казанский
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Bobax012, функция листа ИНДЕКС может извлекать строки и столбцы из массива. Но, вероятно, у нее такие же ограничения, как у функции Transpose.
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
Dim arr()
'заполнение массива
arr = [{1,2,3,4,5;6,7,8,9,0;9,8,7,6,5}]
'1 строку на 2 столбец листа
Cells(1, 2).Resize(UBound(arr, 2)).Value = _
  WorksheetFunction.Transpose(WorksheetFunction.Index(arr, 1, 0))
'2 строку массива на 4 столбец листа
Cells(1, 4).Resize(UBound(arr, 2)).Value = _
  WorksheetFunction.Transpose(WorksheetFunction.Index(arr, 2, 0))
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / VBA Excel, как вывести на лист определенные строки массива
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]