Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 19.04.2013, 15:06   #1
Ixituni
Пользователь
 
Регистрация: 19.04.2013
Сообщений: 20
По умолчанию VBA: как задать массив с листа в Excel неизвестного размера

Вообщем задание такое:
Задан столбец чисел на листе, к-во елементов неизвестно.
Необходимо считать эти данные в одномерный массив, и посчитать количество елементов.
Как задать массив из столбца неизвестного размера с листа?
Ixituni вне форума Ответить с цитированием
Старый 19.04.2013, 15:20   #2
DiemonStar
Старожил
 
Регистрация: 08.02.2012
Сообщений: 2,173
По умолчанию

для произвольного количества элементов в столбце A

Код:
Sub ff()
  Dim A()
  Set R = Range([A1], Range("A" & Rows.Count).End(xlUp))
  A = R.Value
  MsgBox UBound(A)
End Sub
Правильно поставленная задача - три четверти решения.

Последний раз редактировалось DiemonStar; 19.04.2013 в 15:22.
DiemonStar вне форума Ответить с цитированием
Старый 19.04.2013, 17:35   #3
Ixituni
Пользователь
 
Регистрация: 19.04.2013
Сообщений: 20
По умолчанию

а если массив задается через InputBox?
Ixituni вне форума Ответить с цитированием
Старый 24.04.2013, 14:09   #4
Ixituni
Пользователь
 
Регистрация: 19.04.2013
Сообщений: 20
По умолчанию

Как проделать то же, но и для произвольного столбца выбранного по активной ячейке?

Последний раз редактировалось Ixituni; 24.04.2013 в 14:23.
Ixituni вне форума Ответить с цитированием
Старый 24.04.2013, 14:18   #5
Ixituni
Пользователь
 
Регистрация: 19.04.2013
Сообщений: 20
По умолчанию

Как проделать то же, но и для произвольного столбца выбранного по активной ячейке?
Ixituni вне форума Ответить с цитированием
Старый 24.04.2013, 14:28   #6
DiemonStar
Старожил
 
Регистрация: 08.02.2012
Сообщений: 2,173
По умолчанию

Цитата:
Сообщение от Ixituni Посмотреть сообщение
а если массив задается через InputBox?
Код:
Разделитель = ","
A = Split(InputBox("Введите массив через разделители ("&Разделитель&"):", ""), Разделитель)
Правильно поставленная задача - три четверти решения.
DiemonStar вне форума Ответить с цитированием
Старый 24.04.2013, 14:32   #7
DiemonStar
Старожил
 
Регистрация: 08.02.2012
Сообщений: 2,173
По умолчанию

Цитата:
Сообщение от Ixituni Посмотреть сообщение
Как проделать то же, но и для произвольного столбца выбранного по активной ячейке?
Код:
Sub ff()
  Dim A()
  A = Range(Cells(1,ActiveCell.Column), Cells(Rows.Count, ActiveCell.Column).End(xlUp)).Value
  MsgBox UBound(A)
End Sub
Правильно поставленная задача - три четверти решения.
DiemonStar вне форума Ответить с цитированием
Старый 24.04.2013, 15:20   #8
Ixituni
Пользователь
 
Регистрация: 19.04.2013
Сообщений: 20
Радость

Большое спасибо
Ixituni вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как задать псевдоним имени листа? Depressive Microsoft Office Excel 18 06.03.2013 23:02
Двумерный массив, как решить на VBA в Excel not_table Помощь студентам 0 14.03.2012 20:22
как копировать группу строк из одного листа Excel в другой на VBA или Делфи S_Yevgeniy Помощь студентам 1 26.04.2010 11:07
Таблица заранее неизвестного размера в Basic.net byte916 Помощь студентам 1 02.04.2008 02:38