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

Вход

Регистрация

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

 

= Мир MS Excel/Начинаю работать с массивами на VBA, непонятно - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Начинаю работать с массивами на VBA, непонятно
Raven2009 Дата: Воскресенье, 16.02.2020, 14:57 | Сообщение № 1
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 151
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
Добрый день.

Я начал загонять диапазон в массив и записывать в словарь, код взят из файла, где все ок.

Код находится в Module1, писать только начал, макрос UpdateList. Но далее после кода где я использую ReDim в цикле возникает ошибка - Subscript out of range на строке:

rz(t, 1) = m(r, 1)

Подскажите пожалуйста, что мне нужно поправить? Заранее спасибо))

Массивы только начал изучать, смотрю видео в ютубе, литература к сожалению подсознательно не воспринимается, книга Уокенбаха есть (читаю периодически), но пока сам не напорюсь на грабли, ничего не запомню (извините...)
К сообщению приложен файл: 8052756.xlsm (224.8 Kb)
 
Ответить
СообщениеДобрый день.

Я начал загонять диапазон в массив и записывать в словарь, код взят из файла, где все ок.

Код находится в Module1, писать только начал, макрос UpdateList. Но далее после кода где я использую ReDim в цикле возникает ошибка - Subscript out of range на строке:

rz(t, 1) = m(r, 1)

Подскажите пожалуйста, что мне нужно поправить? Заранее спасибо))

Массивы только начал изучать, смотрю видео в ютубе, литература к сожалению подсознательно не воспринимается, книга Уокенбаха есть (читаю периодически), но пока сам не напорюсь на грабли, ничего не запомню (извините...)

Автор - Raven2009
Дата добавления - 16.02.2020 в 14:57
doober Дата: Воскресенье, 16.02.2020, 15:32 | Сообщение № 2
Группа: Друзья
Ранг: Ветеран
Сообщений: 971
Репутация: 333 ±
Замечаний: 0% ±

Excel 2010
Здравствуйте.
Напишите словами. что хотите в итоге получить
С кода ничего не понятно, там каша одна.


 
Ответить
СообщениеЗдравствуйте.
Напишите словами. что хотите в итоге получить
С кода ничего не понятно, там каша одна.

Автор - doober
Дата добавления - 16.02.2020 в 15:32
Raven2009 Дата: Воскресенье, 16.02.2020, 15:47 | Сообщение № 3
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 151
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
Добрый день.

Хорошо. Добавил второй лист где в сводной представлена инф, которую я планирую записывать в словарь через массивы а потом выводить в листбокс (но до этого надо еще дойти...))

Значения столбцов 9,10,11 будут суммироваться. Плюс еще счетчик по кол-ву артикулов планировался... Можно будет как-то отталкиваться от той каши, которая уже есть в коде?
К сообщению приложен файл: 4726342.xlsm (229.8 Kb)
 
Ответить
СообщениеДобрый день.

Хорошо. Добавил второй лист где в сводной представлена инф, которую я планирую записывать в словарь через массивы а потом выводить в листбокс (но до этого надо еще дойти...))

Значения столбцов 9,10,11 будут суммироваться. Плюс еще счетчик по кол-ву артикулов планировался... Можно будет как-то отталкиваться от той каши, которая уже есть в коде?

Автор - Raven2009
Дата добавления - 16.02.2020 в 15:47
doober Дата: Воскресенье, 16.02.2020, 15:56 | Сообщение № 4
Группа: Друзья
Ранг: Ветеран
Сообщений: 971
Репутация: 333 ±
Замечаний: 0% ±

Excel 2010
Теперь понятно


 
Ответить
СообщениеТеперь понятно

Автор - doober
Дата добавления - 16.02.2020 в 15:56
doober Дата: Воскресенье, 16.02.2020, 16:28 | Сообщение № 5
Группа: Друзья
Ранг: Ветеран
Сообщений: 971
Репутация: 333 ±
Замечаний: 0% ±

Excel 2010
так?
Совет обязательно назначайте тип переменной для ключей словарей, можете наколоться
К сообщению приложен файл: 5468195.xlsm (225.3 Kb)




Сообщение отредактировал doober - Воскресенье, 16.02.2020, 16:30
 
Ответить
Сообщениетак?
Совет обязательно назначайте тип переменной для ключей словарей, можете наколоться

Автор - doober
Дата добавления - 16.02.2020 в 16:28
Raven2009 Дата: Воскресенье, 16.02.2020, 16:43 | Сообщение № 6
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 151
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
Совет обязательно назначайте тип переменной для ключей словарей


спасибо вам большое)) обязательно последую вашему совету. Ого, вы и в листбокс на форме их добавили)) Спасибо!
 
Ответить
Сообщение
Совет обязательно назначайте тип переменной для ключей словарей


спасибо вам большое)) обязательно последую вашему совету. Ого, вы и в листбокс на форме их добавили)) Спасибо!

Автор - Raven2009
Дата добавления - 16.02.2020 в 16:43
Raven2009 Дата: Воскресенье, 16.02.2020, 16:47 | Сообщение № 7
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 151
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
для ключей словарей


мне для понимания кстати. А ключом словаря что здесь является?))
 
Ответить
Сообщение
для ключей словарей


мне для понимания кстати. А ключом словаря что здесь является?))

Автор - Raven2009
Дата добавления - 16.02.2020 в 16:47
Raven2009 Дата: Воскресенье, 16.02.2020, 16:50 | Сообщение № 8
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 151
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
так?


Извиняюсь, а там же артикула в таблице повторяются.... Может возможно сделать так чтобы только уникальные номера артикулов считались? Совсем забыл, что бывают задвоения в таблице из-за разных номеров заказов(((
 
Ответить
Сообщение
так?


Извиняюсь, а там же артикула в таблице повторяются.... Может возможно сделать так чтобы только уникальные номера артикулов считались? Совсем забыл, что бывают задвоения в таблице из-за разных номеров заказов(((

Автор - Raven2009
Дата добавления - 16.02.2020 в 16:50
doober Дата: Воскресенье, 16.02.2020, 17:23 | Сообщение № 9
Группа: Друзья
Ранг: Ветеран
Сообщений: 971
Репутация: 333 ±
Замечаний: 0% ±

Excel 2010
А ключом словаря что здесь является?))

t-это ключ[vba]
Код
If Not oi.exists(t)
[/vba]
чтобы только уникальные номера артикулов считались?

Проявите солдатскую смекалку, переопределите массив размерностью 7
и в res(7) помещайте локальный словарь, который будет вести этот подсчет


 
Ответить
Сообщение
А ключом словаря что здесь является?))

t-это ключ[vba]
Код
If Not oi.exists(t)
[/vba]
чтобы только уникальные номера артикулов считались?

Проявите солдатскую смекалку, переопределите массив размерностью 7
и в res(7) помещайте локальный словарь, который будет вести этот подсчет

Автор - doober
Дата добавления - 16.02.2020 в 17:23
Raven2009 Дата: Воскресенье, 16.02.2020, 17:42 | Сообщение № 10
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 151
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
Хорошо. Попробую. Спасибо)
 
Ответить
СообщениеХорошо. Попробую. Спасибо)

Автор - Raven2009
Дата добавления - 16.02.2020 в 17:42
Raven2009 Дата: Воскресенье, 16.02.2020, 20:18 | Сообщение № 11
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 151
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
который будет вести этот подсчет


ковырялся, ковырялся...

Нужно Ваше профессиональное мнение. Подскажите пож-ста правильно ли я сделал?)) Мне кажется, что громоздко как то я написал...
К сообщению приложен файл: 0579175.xlsm (226.5 Kb)
 
Ответить
Сообщение
который будет вести этот подсчет


ковырялся, ковырялся...

Нужно Ваше профессиональное мнение. Подскажите пож-ста правильно ли я сделал?)) Мне кажется, что громоздко как то я написал...

Автор - Raven2009
Дата добавления - 16.02.2020 в 20:18
Raven2009 Дата: Воскресенье, 16.02.2020, 20:51 | Сообщение № 12
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 151
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
Нет, наверно не так. Попробовал на других данных... Неправильно 100%
 
Ответить
СообщениеНет, наверно не так. Попробовал на других данных... Неправильно 100%

Автор - Raven2009
Дата добавления - 16.02.2020 в 20:51
doober Дата: Воскресенье, 16.02.2020, 21:33 | Сообщение № 13
Группа: Друзья
Ранг: Ветеран
Сообщений: 971
Репутация: 333 ±
Замечаний: 0% ±

Excel 2010
Покажите правильный результат, который должен получиться


 
Ответить
СообщениеПокажите правильный результат, который должен получиться

Автор - doober
Дата добавления - 16.02.2020 в 21:33
Raven2009 Дата: Воскресенье, 16.02.2020, 23:39 | Сообщение № 14
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 151
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
который должен получиться


я взял данные из другой рабочей таблицы на 1ый лист, там побольше живых примеров. Добавил на второй лист последний столбец кол-во уникальных артикулов для каждого суппорта))

с армейской смекалкой к сожалению не сложилось, массивы только начал учить и логику их пока постигаю.
К сообщению приложен файл: 0274534.xlsm (236.2 Kb)
 
Ответить
Сообщение
который должен получиться


я взял данные из другой рабочей таблицы на 1ый лист, там побольше живых примеров. Добавил на второй лист последний столбец кол-во уникальных артикулов для каждого суппорта))

с армейской смекалкой к сожалению не сложилось, массивы только начал учить и логику их пока постигаю.

Автор - Raven2009
Дата добавления - 16.02.2020 в 23:39
doober Дата: Понедельник, 17.02.2020, 07:53 | Сообщение № 15
Группа: Друзья
Ранг: Ветеран
Сообщений: 971
Репутация: 333 ±
Замечаний: 0% ±

Excel 2010
Держите.
К сообщению приложен файл: 2710696.xlsm (237.1 Kb)


 
Ответить
СообщениеДержите.

Автор - doober
Дата добавления - 17.02.2020 в 07:53
Raven2009 Дата: Понедельник, 17.02.2020, 09:17 | Сообщение № 16
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 151
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
Спасибо вам огромное)) изучать и изучать...
 
Ответить
СообщениеСпасибо вам огромное)) изучать и изучать...

Автор - Raven2009
Дата добавления - 17.02.2020 в 09:17
Raven2009 Дата: Понедельник, 17.02.2020, 12:54 | Сообщение № 17
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 151
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
Вопрос напоследок по этому же файлу и процедуре записи в листбокс. В массив записаны наименования заголовков из таблицы.

В листбокс возможно подгрузить их из массива? Или только из таблицы можно так сделать?


Сообщение отредактировал Raven2009 - Понедельник, 17.02.2020, 13:01
 
Ответить
СообщениеВопрос напоследок по этому же файлу и процедуре записи в листбокс. В массив записаны наименования заголовков из таблицы.

В листбокс возможно подгрузить их из массива? Или только из таблицы можно так сделать?

Автор - Raven2009
Дата добавления - 17.02.2020 в 12:54
  • Страница 1 из 1
  • 1
Поиск:

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