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

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

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 17.02.2009, 02:21   #1
valerij
Старожил
 
Аватар для valerij
 
Регистрация: 12.05.2007
Сообщений: 2,339
По умолчанию Скомпоновать выпадающий список

Скомпоновать выпадающий список, не могу придумать как это сделать?
Поясню. Мне нужно узнать Вес, полученных товаров по позициям.
В аттаче, перечень товара за 31 день(с шагом 51, дат нет), нужно, что бы я мог просмотреть, за любой день из 31(30, 29, 28), за все дни месяца сразу как в аттаче(а может это лишнее) и общий итог за месяц, наименование позиций, например А3:A40, должны быть всегда, мало того, должен быть выбор торговой точки, то же, любой точки из 13 и общий итог со всех точек.
Причем, сбор данных, это количества товара по позициям * на вес за единицу, макрос должен собрать, только при активации Листа Вес.
Вложения
Тип файла: rar В_С.rar (11.1 Кб, 17 просмотров)

Последний раз редактировалось valerij; 17.02.2009 в 02:23.
valerij вне форума Ответить с цитированием
Старый 17.02.2009, 20:41   #2
valerij
Старожил
 
Аватар для valerij
 
Регистрация: 12.05.2007
Сообщений: 2,339
По умолчанию

Наверно я задумал не выполнимую задачу?
valerij вне форума Ответить с цитированием
Старый 17.02.2009, 21:00   #3
EducatedFool
Программист VBA
СуперМодератор
 
Аватар для EducatedFool
 
Регистрация: 13.07.2008
Сообщений: 6,856
По умолчанию

Цитата:
Наверно я задумал не выполнимую задачу?
Задача выполнимая, но сформулировал ты её так, что понять, что же на самом деле требуется, очень сложно...

Непонятно даже, что ты подразумеваешь под выпадающим списком (выпадающий список в ячейке (Данные - Проверка), элемент управления Combobox на листе, тот же Combobox, только на форме, или что-то другое)

Тем более неясно, из какого диапазона ячеек брать значения для выпадающего списка.

При правильной постановке задачи ответ бы последовал незамедлительно.
А с такой формулировкой получится как всегда - к 20-му посту в теме выяснится, что изначально требовалось совершенно другое...
EducatedFool вне форума Ответить с цитированием
Старый 17.02.2009, 21:30   #4
valerij
Старожил
 
Аватар для valerij
 
Регистрация: 12.05.2007
Сообщений: 2,339
По умолчанию

Цитата:
Сообщение от EducatedFool Посмотреть сообщение
Задача выполнимая, но сформулировал ты её так, что понять, что же на самом деле требуется, очень сложно..
Игорь, ну а что не ясно, мне самому сформулировать задачу сложно было, но
Давай по этапно.
1. Выпадающий список.
Я имел ввиду, что при активации Листа ВЕС вижу, перечень товара А3:A40 а в В3:В40 сумма данных со всех торг. точек на конец месяца и есть треугольничек в котором есть выбор по числам месяца, рядом, так же, выбор конкретной, торговой точки.

Если опять не ясно, сделаю скрин
valerij вне форума Ответить с цитированием
Старый 21.02.2009, 00:17   #5
valerij
Старожил
 
Аватар для valerij
 
Регистрация: 12.05.2007
Сообщений: 2,339
По умолчанию

Ну ладно с выпадающим списком я разобрался, наверное.
Делал так
Через Элемент Управление - Поле со списком в Свойствах, указал диапазон ячеек и в LinkedCell связал [O3] ... А далее код, что там не так, т. е. меняю в выпадающем списке число, ничего, перещелкну листы, работает, не могу понять(может мона упростить код)?

Код:
Private Sub Worksheet_Activate()
Dim dn As Long, dk As Byte
dk = 3
Application.EnableEvents = False
If [O3] = 1 Then dn = 3 'Шаг 51
If [O3] = 2 Then dn = 54
If [O3] = 3 Then dn = 105
If [O3] = 4 Then dn = 156
If [O3] = 5 Then dn = 207
If [O3] = 6 Then dn = 258
If [O3] = 7 Then dn = 309
If [O3] = 8 Then dn = 360
If [O3] = 9 Then dn = 411
If [O3] = 10 Then dn = 462
If [O3] = 11 Then dn = 513
If [O3] = 12 Then dn = 564
If [O3] = 13 Then dn = 615
If [O3] = 14 Then dn = 666
If [O3] = 15 Then dn = 717
If [O3] = 16 Then dn = 768
If [O3] = 17 Then dn = 819
If [O3] = 18 Then dn = 870
If [O3] = 19 Then dn = 921
If [O3] = 20 Then dn = 972
If [O3] = 21 Then dn = 1023
If [O3] = 22 Then dn = 1074
If [O3] = 23 Then dn = 1125
If [O3] = 24 Then dn = 1176
If [O3] = 25 Then dn = 1227
If [O3] = 26 Then dn = 1278
If [O3] = 27 Then dn = 1329
If [O3] = 28 Then dn = 1380
If [O3] = 29 Then dn = 1431
If [O3] = 30 Then dn = 1482
If [O3] = 31 Then dn = 1533
For List = 1 To 13
For tov = dn To dn + 37
Cells(dk, 1 + List) = Sheets(List).Cells(tov, 4) * Cells(dk, 17)
dk = dk + 1
Next
dk = 3
Next
Application.EnableEvents = True
[B42].Select
End Sub

Последний раз редактировалось valerij; 21.02.2009 в 02:36.
valerij вне форума Ответить с цитированием
Старый 21.02.2009, 00:50   #6
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

Валера, все программируешь? изящно у тебя получается...

Код:
Private Sub Worksheet_Activate()
Dim dn As Long, dk As Byte
dk = 3
Application.EnableEvents = False
dn = ([O3] -1)*51+ 3 'Шаг 51
For List = 1 To 13
For tov = dn To dn + 37
Cells(dk, 1 + List) = Sheets(List).Cells(tov, 4) * Cells(dk, 17)
dk = dk + 1
Next
dk = 3
Next
Application.EnableEvents = True
[B42].Select
End Sub
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума Ответить с цитированием
Старый 21.02.2009, 00:58   #7
valerij
Старожил
 
Аватар для valerij
 
Регистрация: 12.05.2007
Сообщений: 2,339
По умолчанию

Цитата:
Сообщение от IgorGO Посмотреть сообщение
Валера, все программируешь? изящно у тебя получается...
Кризис заставляет, ......
Игорь, ну то же самое, меняю в списке число(это даты) и нужно перещелкивать листы.
Я на этом листе, только выбираю числа в выпадающем списке, наверное Private Sub Worksheet_Activate() не катит?
А упрощение, класс!!

Последний раз редактировалось valerij; 21.02.2009 в 01:15.
valerij вне форума Ответить с цитированием
Старый 24.02.2009, 01:54   #8
valerij
Старожил
 
Аватар для valerij
 
Регистрация: 12.05.2007
Сообщений: 2,339
По умолчанию

Все сделал, но остался последний штрих в этой теме(уже не не соображаю), посмотрите пожалуйста, пояснение в Rem.txt
Вложения
Тип файла: rar ZXC.rar (239.6 Кб, 40 просмотров)
valerij вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Форма. Выпадающий список SNkMaster HTML и CSS 13 15.03.2010 15:02
Выпадающий список lenka_fed Microsoft Office Excel 3 18.11.2008 13:26
Выпадающий список Акашаев Нурлан Общие вопросы Delphi 3 27.06.2008 16:58
выпадающий список SunKnight БД в Delphi 1 24.03.2008 22:44
выпадающий список Toxa Microsoft Office Excel 2 23.04.2007 09:40