Уважаемые гуру – помогите чайнику реализовать задачу автопереноса данных. Как пример строка 5 листа «апрель», - если я "вошел" в ячейку А5, значения данной строки должны автоматом переходить в лист «Итог», и одновременно команда на печать листа «Итог», (если возможно такое). Т.е. "вошел" в ячейку А5 «апрель», значения ячеек В5,С5,Е5,М5, N5 – переносятся в лист «Итог» в ячейки B2,G2,C13,H18,D13 соответственно. "Вошел" в ячейку А7 «апрель», значения ячеек В7,С7,Е7,М7, N7 – переносятся в лист «Итог» в ячейки B2,G2,C13,H18,D13. Однако если я вошел в ячейку А7 «апрель», добавляется еще одна переносимая ячейка О7 в Н28 в «Итог»(см. лист «Итог»2) и добавляется надпись «Марка контроля» в Е28. В листе «апрель» 1500 заполненных строк. Надеюсь не очень путано обьяснил. Спасибо.
Уважаемые гуру – помогите чайнику реализовать задачу автопереноса данных. Как пример строка 5 листа «апрель», - если я "вошел" в ячейку А5, значения данной строки должны автоматом переходить в лист «Итог», и одновременно команда на печать листа «Итог», (если возможно такое). Т.е. "вошел" в ячейку А5 «апрель», значения ячеек В5,С5,Е5,М5, N5 – переносятся в лист «Итог» в ячейки B2,G2,C13,H18,D13 соответственно. "Вошел" в ячейку А7 «апрель», значения ячеек В7,С7,Е7,М7, N7 – переносятся в лист «Итог» в ячейки B2,G2,C13,H18,D13. Однако если я вошел в ячейку А7 «апрель», добавляется еще одна переносимая ячейка О7 в Н28 в «Итог»(см. лист «Итог»2) и добавляется надпись «Марка контроля» в Е28. В листе «апрель» 1500 заполненных строк. Надеюсь не очень путано обьяснил. Спасибо.Victor62
Пасибки за отклики! Дело в том что данная задача выполнялась в Excel(без автовывода на печать, это уже моя задумка), но грохнулся(пожар) безвозвратно комп., и копий не существуют. Человека что делал данную прогу увы уже нет. Я пытаюсь восстановить, т.к. для работы очень надо. "Марку контроля" придумал как проявлять через функцию ЕСЛИ(прилагаю файл), а с остальным вопрос открыт. Читаю форум уже от конца - мож чего найду. А может кто поможет, так понимаю что в нестандартной задаче.
Пасибки за отклики! Дело в том что данная задача выполнялась в Excel(без автовывода на печать, это уже моя задумка), но грохнулся(пожар) безвозвратно комп., и копий не существуют. Человека что делал данную прогу увы уже нет. Я пытаюсь восстановить, т.к. для работы очень надо. "Марку контроля" придумал как проявлять через функцию ЕСЛИ(прилагаю файл), а с остальным вопрос открыт. Читаю форум уже от конца - мож чего найду. А может кто поможет, так понимаю что в нестандартной задаче.Victor62
Вариант решения задачи. Код в модуле листа "апрель" [vba]
Код
Private Sub Worksheet_SelectionChange(ByVal Target As Range) If Not Intersect(Range("A5:A10000"), Target) Is Nothing Then With Sheets("Итог") .Range("B2,G11,C13,D13:E13,H18,H28,E28").ClearContents .Range("B2") = Range("B5").Offset(Target.Row - 5, 0) .Range("G11") = Range("C5").Offset(Target.Row - 5, 0) .Range("C13") = Range("E5").Offset(Target.Row - 5, 0) .Range("H18") = Range("M5").Offset(Target.Row - 5, 0) .Range("D13") = Range("N5").Offset(Target.Row - 5, 0) .Range("H28") = Range("O5").Offset(Target.Row - 5, 0) If .Range("H28") <> "" Then .Range("E28") = "Марка контроля" .PrintOut From:=1, To:=1, Copies:=1, Collate:=True End With End If End Sub
[/vba]
Вариант решения задачи. Код в модуле листа "апрель" [vba]
Код
Private Sub Worksheet_SelectionChange(ByVal Target As Range) If Not Intersect(Range("A5:A10000"), Target) Is Nothing Then With Sheets("Итог") .Range("B2,G11,C13,D13:E13,H18,H28,E28").ClearContents .Range("B2") = Range("B5").Offset(Target.Row - 5, 0) .Range("G11") = Range("C5").Offset(Target.Row - 5, 0) .Range("C13") = Range("E5").Offset(Target.Row - 5, 0) .Range("H18") = Range("M5").Offset(Target.Row - 5, 0) .Range("D13") = Range("N5").Offset(Target.Row - 5, 0) .Range("H28") = Range("O5").Offset(Target.Row - 5, 0) If .Range("H28") <> "" Then .Range("E28") = "Марка контроля" .PrintOut From:=1, To:=1, Copies:=1, Collate:=True End With End If End Sub
Алекс,Василик(?) - ребят, вы просто молодцы!!! Не могу сейчас "проверить" что вы написали - мозг просто отключен... - но то что вы тратите время на пожилого "погорельца", тем более "чайника" которого кроме кнопки включить-выключить комп "ничего" не знает - нижайший вам поклон!!!
ПС. Алекс, я обещался вечером включить макрос - сил нема. Извините! Ребят, обязательно отпишусь- постараюсь завтра. Еще раз - поклон ВАМ!
Алекс,Василик(?) - ребят, вы просто молодцы!!! Не могу сейчас "проверить" что вы написали - мозг просто отключен... - но то что вы тратите время на пожилого "погорельца", тем более "чайника" которого кроме кнопки включить-выключить комп "ничего" не знает - нижайший вам поклон!!!
ПС. Алекс, я обещался вечером включить макрос - сил нема. Извините! Ребят, обязательно отпишусь- постараюсь завтра. Еще раз - поклон ВАМ!Victor62
AlexM, все сделал в основном(рабочем) документе - все отлично! Но если можно еще чуток помогите - не хватает мне знаний как сделать кнопку вкл/откл данного макроса. Т.е. во время внесения вручную данных в лист "апрель", при случайном входе в столбец А чтобы макрос не работал, и соответсвенно когда надо отправлять на печать данные - включил кнопку - и вот он фокус!
Спасибо.
AlexM, все сделал в основном(рабочем) документе - все отлично! Но если можно еще чуток помогите - не хватает мне знаний как сделать кнопку вкл/откл данного макроса. Т.е. во время внесения вручную данных в лист "апрель", при случайном входе в столбец А чтобы макрос не работал, и соответсвенно когда надо отправлять на печать данные - включил кнопку - и вот он фокус!
Алекс, спасибо. Но я не увидел разницы. Наверное из-за своего неофитизма. Возможно я неправильно вопрос задал. Девушка которая заполняет лист "апрель"(в реальности это протоколы испытаний), боится случайно залезть в столбец А, т.к. последующие строки не пустые... а неверная, случайная распечатка "итога"(в реальности док строгой отчетности)- грозит ей сумасшедшей бюрократией по списанию неверно распечатанного. Сейчас мы просто включаем/отключаем макрос через безопасность... отсюда и появилась мысль про кнопку. Просмотрел инет по теме - но ничего у меня не получилось
Алекс, спасибо. Но я не увидел разницы. Наверное из-за своего неофитизма. Возможно я неправильно вопрос задал. Девушка которая заполняет лист "апрель"(в реальности это протоколы испытаний), боится случайно залезть в столбец А, т.к. последующие строки не пустые... а неверная, случайная распечатка "итога"(в реальности док строгой отчетности)- грозит ей сумасшедшей бюрократией по списанию неверно распечатанного. Сейчас мы просто включаем/отключаем макрос через безопасность... отсюда и появилась мысль про кнопку. Просмотрел инет по теме - но ничего у меня не получилось Victor62
Доработанный макрос не будет распечатывать документ, пока не будут заполнены обязательные 6 ячеек. Это ячейки столбца А, В, С, Е, M и N. Девушка заполняет эти ячейки, и ячейку столбца О, при необходимости. Затем активирует ячейку столбца А. Лист распечатается. Если такой вариант не устраивает, то надо убрать запуск макроса по событию листа и сделать запуск только по кнопке. Как бы макрос не запускался всегда можно случайно распечатать документ с данными одной строки. Может быть для защиты сделать дополнительный столбец с меткой о печати данных из строки, например макрос после печати ставит знак "V" и в дальнейшем строку с таким знаком макрос не печатает. Думаю вам надо хорошо продумать алгоритм, чтобы все доработки сделать разом.
Доработанный макрос не будет распечатывать документ, пока не будут заполнены обязательные 6 ячеек. Это ячейки столбца А, В, С, Е, M и N. Девушка заполняет эти ячейки, и ячейку столбца О, при необходимости. Затем активирует ячейку столбца А. Лист распечатается. Если такой вариант не устраивает, то надо убрать запуск макроса по событию листа и сделать запуск только по кнопке. Как бы макрос не запускался всегда можно случайно распечатать документ с данными одной строки. Может быть для защиты сделать дополнительный столбец с меткой о печати данных из строки, например макрос после печати ставит знак "V" и в дальнейшем строку с таким знаком макрос не печатает. Думаю вам надо хорошо продумать алгоритм, чтобы все доработки сделать разом.AlexM
Номер мобильного модема (без голосовой связи) 9269171249 МегаФон, Московский регион.
Думаю вам надо хорошо продумать алгоритм, чтобы все доработки сделать разом.
Согласен. Ситуация - в день, оператор заполняет в среднем 75-100 строк. Распечатка итогов производится раз в два дня. Прогу(предпоследний код) что Вы сделали - просто супер! Полностью устраивает и меня и оператора. Но у оператора появилась боязнь о случайном входе в ячейку столбца А когда этого совсем не надо. Мы как раз эти дни занимаемся тестированием восстановленного, и уже и с Вашей прогой. Вначале я ей предложил не включать принтер пока не наступит момент для распечатки, и в случае случайного входа в А - просто отменить очередь печати. Сам понимаю что это фигня полная. Потом вывел на панель кнопку макроса и просто стали менять безопасность. Тоже не особо удобно. Сейчас у меня мысль появилась - просто скрывать столбец А правой кнопкой мыши, и отобразить его перед началом печати. А если через какую либо плавающую кнопку(или в шапке листа) скрывать/отображать столбец А? На мой взгляд(сейчас) самое простое решение. Как думаете?(понимаю что Вам за меня думать совсем не обязательно, но без Вас мне вообще торба была бы). Просто у меня сейчас, кроме этой проблемы еще кучу чего надо восстановить до понедельника, а мозг уже почти на исходе.
Wasilic, спасибо, но это не то. Я имел ввиду кнопку вкл/выкл всего кода, а не построчно(если я правильно изьясняюсь).
Думаю вам надо хорошо продумать алгоритм, чтобы все доработки сделать разом.
Согласен. Ситуация - в день, оператор заполняет в среднем 75-100 строк. Распечатка итогов производится раз в два дня. Прогу(предпоследний код) что Вы сделали - просто супер! Полностью устраивает и меня и оператора. Но у оператора появилась боязнь о случайном входе в ячейку столбца А когда этого совсем не надо. Мы как раз эти дни занимаемся тестированием восстановленного, и уже и с Вашей прогой. Вначале я ей предложил не включать принтер пока не наступит момент для распечатки, и в случае случайного входа в А - просто отменить очередь печати. Сам понимаю что это фигня полная. Потом вывел на панель кнопку макроса и просто стали менять безопасность. Тоже не особо удобно. Сейчас у меня мысль появилась - просто скрывать столбец А правой кнопкой мыши, и отобразить его перед началом печати. А если через какую либо плавающую кнопку(или в шапке листа) скрывать/отображать столбец А? На мой взгляд(сейчас) самое простое решение. Как думаете?(понимаю что Вам за меня думать совсем не обязательно, но без Вас мне вообще торба была бы). Просто у меня сейчас, кроме этой проблемы еще кучу чего надо восстановить до понедельника, а мозг уже почти на исходе. Victor62
Сообщение отредактировал Victor62 - Пятница, 28.02.2014, 05:54