|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу. Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста". Название темы слишком короткое или не отражает сути вашего вопроса. Тема исчерпала себя, помните, один вопрос - одна тема Прочитайте правила и заново правильно создайте тему. |
|
Опции темы | Поиск в этой теме |
23.11.2008, 13:01 | #11 |
Новичок
СтарожилДжуниор
Регистрация: 05.02.2008
Сообщений: 9,487
|
во вложении вариант на формулах (для одного листа, для второго можете сделать самостоятельно, собственно, необходимо только исправить условия отбора в формулах столбца 9).
начальник как откроет, так все время все видно. в 9, 10 столбце определяется какая строка должна быть показана и в каком виде.
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
Последний раз редактировалось IgorGO; 23.11.2008 в 13:05. |
23.11.2008, 13:06 | #12 | |||
Программист VBA
СуперМодератор
Регистрация: 13.07.2008
Сообщений: 6,856
|
Цитата:
А вот, собственно, что требовалось добавить: Код:
Цитата:
Туда уже внесены все изменения. Цитата:
__Полезные надстройки для Excel. Парсинг сайтов и файлов.
Макросы любой сложности на заказ. Мониторинг цен конкурентов Последний раз редактировалось EducatedFool; 23.11.2008 в 13:10. |
|||
23.11.2008, 13:17 | #13 |
Пользователь
Регистрация: 22.11.2008
Сообщений: 10
|
IgorGO, EducatedFool,
большое Вам спасибо за помощь!!! Всё работает!!! EducatedFool, остановился на Вашем варианте! |
23.11.2008, 13:28 | #14 |
Пользователь
Регистрация: 22.11.2008
Сообщений: 10
|
EducatedFool,
я не совсем понимаю почему так...я добавил пару позиций (выделено красным шрифтом), но они не переносятся на листы с вероятностями |
23.11.2008, 13:48 | #15 |
Программист VBA
СуперМодератор
Регистрация: 13.07.2008
Сообщений: 6,856
|
строка IsBlank = (Len(Trim$(ro.Cells(1))) = 0) And (Len(Trim$(ro.Cells(2))) = 0 And (Len(Trim$(ro.Cells(4)))) = 0)
определяет пустые строки. Раньше было так - если в первом и втором столбце пусто, строка считается пустой. Теперь (см. строку выше) назначено условие: строка считается пустой, если в первом , во втором и в четвёртом столбце пусто. Я изначально просто подумал, что товар по каталогу - обязательная к заполнению ячейка... Теперь всё вроде работает как надо. Найдёте недоработки - обращайтесь, исправим PS: вышеприведённую строку правильно было бы написать так: IsBlank = (Len(Trim$(ro.Cells(1))) = 0) And (Len(Trim$(ro.Cells(2))) = 0) And (Len(Trim$(ro.Cells(4))) = 0) В спешке напутал со скобками... Исправьте в коде, там 2 таких строки.
__Полезные надстройки для Excel. Парсинг сайтов и файлов.
Макросы любой сложности на заказ. Мониторинг цен конкурентов Последний раз редактировалось EducatedFool; 23.11.2008 в 13:53. |
23.11.2008, 13:52 | #16 |
Пользователь
Регистрация: 22.11.2008
Сообщений: 10
|
Спасибо Вам за помощь и разъяснения!!!!
Теперь действительно все работает просто СУПЕР!!! |
23.11.2008, 14:19 | #17 |
Программист VBA
СуперМодератор
Регистрация: 13.07.2008
Сообщений: 6,856
|
Вот более корректный вариант макроса.
Устранена проблема с неправильной установкой высоты отдельных строк |
23.11.2008, 14:34 | #18 |
Пользователь
Регистрация: 22.11.2008
Сообщений: 10
|
Еще раз спасибо!!
EducatedFool, неудобно Вас напрягать, но к вопросу об информационном окне. Меня не покидает мысль, что кто то из многочисленных сотрудников начнет корректировать скажем не тот лист, а потом будут непонятки почему не работает... Вобщем то конечно можно просто написать инстукцию по пользованию, но боюсь ее не все прочитают.. Можно всеж придумать какое то всплывающее при запуске окно, я б там обозначил, что корректировки надо вносить в токой-то лист. обновление наступает после закрытия файла? |
23.11.2008, 14:48 | #19 | |||
Программист VBA
СуперМодератор
Регистрация: 13.07.2008
Сообщений: 6,856
|
Цитата:
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean) Main End Sub добавьте процедуру, срабатывающую каждый раз при открытии файла. Например, так: Код:
Цитата:
Можно запускать обновление по самым разным событиям Excel (например, даже после выделения очередной ячейки). Но, мне кажется, это уже лишнее. Можно вывести кнопочку на панель инструментов для ручного запуска макроса. Цитата:
Макрос будет снимать эту защиту перед копированием, и устанавливать вновь после завершения обработки листов.
__Полезные надстройки для Excel. Парсинг сайтов и файлов.
Макросы любой сложности на заказ. Мониторинг цен конкурентов Последний раз редактировалось EducatedFool; 23.11.2008 в 14:50. |
|||
23.11.2008, 14:55 | #20 |
Программист VBA
СуперМодератор
Регистрация: 13.07.2008
Сообщений: 6,856
|
Для удобства при формировании своего сообщения можете воспользоваться программой MsgBox Generator
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Автоматический перенос данных из общего листа в другие | InvoiceControl | Microsoft Office Excel | 3 | 02.10.2008 13:21 |
Excel-перенос иформации с одного листа в другой согласно условия | ЛюдмилаЗ | Microsoft Office Excel | 2 | 28.05.2008 12:38 |
Помогите с сортировкой | radist | Паскаль, Turbo Pascal, PascalABC.NET | 5 | 23.04.2007 12:50 |