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

Вход

Регистрация

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

 

= Мир MS Excel/Добавить в коллекцию значения из столбца - Мир MS Excel

  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_, DrMini  
Добавить в коллекцию значения из столбца
ant6729 Дата: Понедельник, 29.01.2018, 21:39 | Сообщение № 1
Группа: Проверенные
Ранг: Ветеран
Сообщений: 533
Репутация: 2 ±
Замечаний: 40% ±

Excel 2010
Добрый вечер всем
Подскажите, пожалуйста, как добавить в коллекцию то, что выделено серым в примере

Отталкиваюсь от этого, но не получается.

[vba]
Код
Sub U()

Dim Msg As String
Dim Response As Long
Dim MyCollection As Collection
Dim Rng As Range
Dim Cell As Range
Dim vNum As Variant
Dim i&

lr1 = Sheets("Лист1").Cells(Rows.Count, 1).End(xlUp).Row + 1
lr2 = Sheets("Лист1").Cells(Rows.Count, 2).End(xlUp).Row - 2

Set MyCollection = New Collection
On Error Resume Next
For Each Cell In Rng.Cells
MyCollection.Add Cell.Value, CStr(Cell.Value)
Next Cell
Next i
On Error GoTo 0
For Each vNum In MyCollection
MsgBox vNum
On Error Resume Next

Next vNum

End Sub
[/vba]

Спасибо.
К сообщению приложен файл: 1082508.xlsx (8.9 Kb)
 
Ответить
СообщениеДобрый вечер всем
Подскажите, пожалуйста, как добавить в коллекцию то, что выделено серым в примере

Отталкиваюсь от этого, но не получается.

[vba]
Код
Sub U()

Dim Msg As String
Dim Response As Long
Dim MyCollection As Collection
Dim Rng As Range
Dim Cell As Range
Dim vNum As Variant
Dim i&

lr1 = Sheets("Лист1").Cells(Rows.Count, 1).End(xlUp).Row + 1
lr2 = Sheets("Лист1").Cells(Rows.Count, 2).End(xlUp).Row - 2

Set MyCollection = New Collection
On Error Resume Next
For Each Cell In Rng.Cells
MyCollection.Add Cell.Value, CStr(Cell.Value)
Next Cell
Next i
On Error GoTo 0
For Each vNum In MyCollection
MsgBox vNum
On Error Resume Next

Next vNum

End Sub
[/vba]

Спасибо.

Автор - ant6729
Дата добавления - 29.01.2018 в 21:39
Апострофф Дата: Понедельник, 29.01.2018, 21:47 | Сообщение № 2
Группа: Проверенные
Ранг: Обитатель
Сообщений: 468
Репутация: 129 ±
Замечаний: 0% ±

Excel 1997
ant6729, Rng объявлен, используется, но не задан, т.е. пустой.
Next i закрывает неначатый цикл.
После[vba]
Код
MyCollection.Add Cell.Value, CStr(Cell.Value)
[/vba]не мешало бы проверить-очистить возможную ошибку[vba]
Код
if err then err.clear
[/vba]


Сообщение отредактировал Апострофф - Понедельник, 29.01.2018, 21:52
 
Ответить
Сообщениеant6729, Rng объявлен, используется, но не задан, т.е. пустой.
Next i закрывает неначатый цикл.
После[vba]
Код
MyCollection.Add Cell.Value, CStr(Cell.Value)
[/vba]не мешало бы проверить-очистить возможную ошибку[vba]
Код
if err then err.clear
[/vba]

Автор - Апострофф
Дата добавления - 29.01.2018 в 21:47
ant6729 Дата: Понедельник, 29.01.2018, 21:57 | Сообщение № 3
Группа: Проверенные
Ранг: Ветеран
Сообщений: 533
Репутация: 2 ±
Замечаний: 40% ±

Excel 2010
Проблема в обозначении Rng

Я его пробовал словить через lr1 и lr2 как-то...
Rng как раз напротив пустых ячеек в первом столбце
Не не получилось

Да, можно, указать мануально Rng
Типа, через Selection
 
Ответить
СообщениеПроблема в обозначении Rng

Я его пробовал словить через lr1 и lr2 как-то...
Rng как раз напротив пустых ячеек в первом столбце
Не не получилось

Да, можно, указать мануально Rng
Типа, через Selection

Автор - ant6729
Дата добавления - 29.01.2018 в 21:57
Апострофф Дата: Понедельник, 29.01.2018, 22:25 | Сообщение № 4
Группа: Проверенные
Ранг: Обитатель
Сообщений: 468
Репутация: 129 ±
Замечаний: 0% ±

Excel 1997
[vba]
Код
Sub U()

Dim Msg As String
Dim Response As Long
Dim MyCollection As Collection
Dim Rng As Range
Dim Cell As Range
Dim vNum As Variant
Dim i&

lr1 = Sheets("Лист1").Cells(Rows.Count, 1).End(xlUp).Row + 1
lr2 = Sheets("Лист1").Cells(Rows.Count, 2).End(xlUp).Row - 1
Set Rng = Range(Cells(lr1, "J"), Cells(lr2, "J"))
Set MyCollection = New Collection
On Error Resume Next
For Each Cell In Rng.Cells
  MyCollection.Add Cell.Value, CStr(Cell.Value)
Next Cell
'Next i
On Error GoTo 0
For Each vNum In MyCollection
  MsgBox vNum
  'On Error Resume Next
Next vNum

End Sub
[/vba]
 
Ответить
Сообщение[vba]
Код
Sub U()

Dim Msg As String
Dim Response As Long
Dim MyCollection As Collection
Dim Rng As Range
Dim Cell As Range
Dim vNum As Variant
Dim i&

lr1 = Sheets("Лист1").Cells(Rows.Count, 1).End(xlUp).Row + 1
lr2 = Sheets("Лист1").Cells(Rows.Count, 2).End(xlUp).Row - 1
Set Rng = Range(Cells(lr1, "J"), Cells(lr2, "J"))
Set MyCollection = New Collection
On Error Resume Next
For Each Cell In Rng.Cells
  MyCollection.Add Cell.Value, CStr(Cell.Value)
Next Cell
'Next i
On Error GoTo 0
For Each vNum In MyCollection
  MsgBox vNum
  'On Error Resume Next
Next vNum

End Sub
[/vba]

Автор - Апострофф
Дата добавления - 29.01.2018 в 22:25
ant6729 Дата: Вторник, 30.01.2018, 00:34 | Сообщение № 5
Группа: Проверенные
Ранг: Ветеран
Сообщений: 533
Репутация: 2 ±
Замечаний: 40% ±

Excel 2010
Да, спасибо!
 
Ответить
СообщениеДа, спасибо!

Автор - ant6729
Дата добавления - 30.01.2018 в 00:34
  • Страница 1 из 1
  • 1
Поиск:

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