Как поместить значения из столбца в массив.
Roman777
Дата: Среда, 11.02.2015, 12:00 |
Сообщение № 1
Группа: Проверенные
Ранг: Ветеран
Сообщений: 980
Репутация:
127
±
Замечаний:
0% ±
Excel 2007, Excel 2013
Добрый день! Необходимо мне поместить значения из одного столбца в массив. Причем в столбце могут быть как и текстовые так и численные значения (как в примере). Хочу это сделать для дальнейшего сравнения массива с числом (переменной).
Добрый день! Необходимо мне поместить значения из одного столбца в массив. Причем в столбце могут быть как и текстовые так и численные значения (как в примере). Хочу это сделать для дальнейшего сравнения массива с числом (переменной). Roman777
К сообщению приложен файл:
1_.xlsx
(8.0 Kb)
Много чего не знаю!!!!
Ответить
Сообщение Добрый день! Необходимо мне поместить значения из одного столбца в массив. Причем в столбце могут быть как и текстовые так и численные значения (как в примере). Хочу это сделать для дальнейшего сравнения массива с числом (переменной). Автор - Roman777 Дата добавления - 11.02.2015 в 12:00
Gustav
Дата: Среда, 11.02.2015, 12:19 |
Сообщение № 2
Группа: Админы
Ранг: Участник клуба
Сообщений: 2843
Репутация:
1194
±
Замечаний:
±
начинал с Excel 4.0, видел 2.1
Ну и поместите: [vba]Код
Sub io() Dim massiv, i massiv = Range("A1:A7") For i = LBound(massiv) To UBound(massiv) Debug.Print massiv(i, 1) Next End Sub
[/vba]
Ну и поместите: [vba]Код
Sub io() Dim massiv, i massiv = Range("A1:A7") For i = LBound(massiv) To UBound(massiv) Debug.Print massiv(i, 1) Next End Sub
[/vba] Gustav
МОИ: Ник , Tip box: 41001663842605
Сообщение отредактировал Gustav - Среда, 11.02.2015, 12:21
Ответить
Сообщение Ну и поместите: [vba]Код
Sub io() Dim massiv, i massiv = Range("A1:A7") For i = LBound(massiv) To UBound(massiv) Debug.Print massiv(i, 1) Next End Sub
[/vba] Автор - Gustav Дата добавления - 11.02.2015 в 12:19
Roman777
Дата: Среда, 11.02.2015, 12:48 |
Сообщение № 3
Группа: Проверенные
Ранг: Ветеран
Сообщений: 980
Репутация:
127
±
Замечаний:
0% ±
Excel 2007, Excel 2013
Спасибо большое всем откликнувшимся, причём так оперативно! Я посмотрел все варианты, наиболее удобным для моей задачи показался мне вариант krosav4ig. Единственное, немного не понял, что означает "offset"? Manyasha, я вот попробовал вывести MgsBox результат вашего кода, почему-то делает ошибку. "Rows.count" даст значение количества всех строк? или только непустых?
Спасибо большое всем откликнувшимся, причём так оперативно! Я посмотрел все варианты, наиболее удобным для моей задачи показался мне вариант krosav4ig. Единственное, немного не понял, что означает "offset"? Manyasha, я вот попробовал вывести MgsBox результат вашего кода, почему-то делает ошибку. "Rows.count" даст значение количества всех строк? или только непустых? Roman777
Много чего не знаю!!!!
Ответить
Сообщение Спасибо большое всем откликнувшимся, причём так оперативно! Я посмотрел все варианты, наиболее удобным для моей задачи показался мне вариант krosav4ig. Единственное, немного не понял, что означает "offset"? Manyasha, я вот попробовал вывести MgsBox результат вашего кода, почему-то делает ошибку. "Rows.count" даст значение количества всех строк? или только непустых? Автор - Roman777 Дата добавления - 11.02.2015 в 12:48
Manyasha
Дата: Среда, 11.02.2015, 12:52 |
Сообщение № 4
Группа: Модераторы
Ранг: Старожил
Сообщений: 2198
Репутация:
902
±
Замечаний:
0% ±
Excel 2010, 2016
Roman777 , Rows.Count - количество всех строк на листе, [vba]Код
Cells(Rows.Count, 1).End(xlUp).Row
[/vba] последняя заполненная строчка. А как вы вводите массив в msgbox? попробуйте как у Gustavа: [vba]Код
For i = 1 To UBound(arr) 'For i = LBound(arr) To UBound(arr) в данном случае тоже самое MsgBox arr(i, 1) Next
[/vba] у вас там небольшая опечаточка:
Опечатку поправила
Roman777 , Rows.Count - количество всех строк на листе, [vba]Код
Cells(Rows.Count, 1).End(xlUp).Row
[/vba] последняя заполненная строчка. А как вы вводите массив в msgbox? попробуйте как у Gustavа: [vba]Код
For i = 1 To UBound(arr) 'For i = LBound(arr) To UBound(arr) в данном случае тоже самое MsgBox arr(i, 1) Next
[/vba] у вас там небольшая опечаточка:
Опечатку поправилаManyasha
ЯД: 410013299366744 WM: R193491431804
Сообщение отредактировал Manyasha - Среда, 11.02.2015, 14:08
Ответить
Сообщение Roman777 , Rows.Count - количество всех строк на листе, [vba]Код
Cells(Rows.Count, 1).End(xlUp).Row
[/vba] последняя заполненная строчка. А как вы вводите массив в msgbox? попробуйте как у Gustavа: [vba]Код
For i = 1 To UBound(arr) 'For i = LBound(arr) To UBound(arr) в данном случае тоже самое MsgBox arr(i, 1) Next
[/vba] у вас там небольшая опечаточка:
Опечатку поправилаАвтор - Manyasha Дата добавления - 11.02.2015 в 12:52
Roman777
Дата: Среда, 11.02.2015, 13:16 |
Сообщение № 5
Группа: Проверенные
Ранг: Ветеран
Сообщений: 980
Репутация:
127
±
Замечаний:
0% ±
Excel 2007, Excel 2013
Manyasha , Я понял! Спасибо большое! Eдинственное у вас там небольшая опечаточка: [vba]Код
For i = LBound(arr) To UBound(arr)
[/vba]
Manyasha , Я понял! Спасибо большое! Eдинственное у вас там небольшая опечаточка: [vba]Код
For i = LBound(arr) To UBound(arr)
[/vba]Roman777
Много чего не знаю!!!!
Сообщение отредактировал Roman777 - Среда, 11.02.2015, 13:18
Ответить
Сообщение Manyasha , Я понял! Спасибо большое! Eдинственное у вас там небольшая опечаточка: [vba]Код
For i = LBound(arr) To UBound(arr)
[/vba]Автор - Roman777 Дата добавления - 11.02.2015 в 13:16