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

Вход

Регистрация

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

 

= Мир MS Excel/Автопечать с выбором - Мир MS Excel

  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_, DrMini  
Автопечать с выбором
Allexsin Дата: Среда, 23.05.2018, 15:01 | Сообщение № 1
Группа: Пользователи
Ранг: Новичок
Сообщений: 39
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
Добрый день!
Столкнулся с проблемой. Необходимо печатать в большом количестве бланки и необходимо это немного автоматизировать. Уже есть макрос и лист с функцией впр, для формирования бланков, но макрос не совсем подходит так, как необходимо выбирать строки которые будут печататься, их может быть и больше десяти. Как его адаптировать не пойму %) . Прилагаю файл для примера.
К сообщению приложен файл: 2439301.xlsm (21.6 Kb)
 
Ответить
СообщениеДобрый день!
Столкнулся с проблемой. Необходимо печатать в большом количестве бланки и необходимо это немного автоматизировать. Уже есть макрос и лист с функцией впр, для формирования бланков, но макрос не совсем подходит так, как необходимо выбирать строки которые будут печататься, их может быть и больше десяти. Как его адаптировать не пойму %) . Прилагаю файл для примера.

Автор - Allexsin
Дата добавления - 23.05.2018 в 15:01
Nic70y Дата: Среда, 23.05.2018, 17:03 | Сообщение № 2
Группа: Друзья
Ранг: Экселист
Сообщений: 9130
Репутация: 2415 ±
Замечаний: 0% ±

Excel 2010
все ниже написанное ИМХО
нужно категорически все изменить,
привести к нормальному виду
макрос циклом,
нафиг картинки!
повторюсь - ИМХО


ЮMoney 41001841029809
 
Ответить
Сообщениевсе ниже написанное ИМХО
нужно категорически все изменить,
привести к нормальному виду
макрос циклом,
нафиг картинки!
повторюсь - ИМХО

Автор - Nic70y
Дата добавления - 23.05.2018 в 17:03
StoTisteg Дата: Среда, 23.05.2018, 17:33 | Сообщение № 3
Группа: Авторы
Ранг: Старожил
Сообщений: 1161
Репутация: 103 ±
Замечаний: 0% ±

Excel 2010
Два вопроса. 1) почему, простите, бланк картинкой? 2) зачем там нерабочая формула, ежели всё равно макрос крутится? Написать нормальный макрос — дело 10 минут, но не под картинку жеж в самом деле...


Интуитивно понятный код - это когда интуитивно понятно, что это код.
 
Ответить
СообщениеДва вопроса. 1) почему, простите, бланк картинкой? 2) зачем там нерабочая формула, ежели всё равно макрос крутится? Написать нормальный макрос — дело 10 минут, но не под картинку жеж в самом деле...

Автор - StoTisteg
Дата добавления - 23.05.2018 в 17:33
Allexsin Дата: Среда, 23.05.2018, 17:54 | Сообщение № 4
Группа: Пользователи
Ранг: Новичок
Сообщений: 39
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
Картинка это форма, картинку можно удалить. Формула рабочая, если на листе "макет" в верхнем углу где стр№ указать цифру, которая будет соответствовать номеру строки на листе "список", для этого вместо "х" нужно пронумеровать строки, то все станет понятно. Т.е. выбрав ту или иную строку мы получаем бланк с разными данными. Так же нужно нажать сочетание клавиш ctr+q (английская раскладка), то он будет печатать по порядку подменяя номера строк. Мне это не подходит. Приложил файл который пытался изменить поэтому запутал, прилагаю исходный. А про 10 минут на макрос, возможно, но я не спец в этом, поэтому и обратился за помощью.
К сообщению приложен файл: 0605435.xlsm (22.5 Kb)
 
Ответить
СообщениеКартинка это форма, картинку можно удалить. Формула рабочая, если на листе "макет" в верхнем углу где стр№ указать цифру, которая будет соответствовать номеру строки на листе "список", для этого вместо "х" нужно пронумеровать строки, то все станет понятно. Т.е. выбрав ту или иную строку мы получаем бланк с разными данными. Так же нужно нажать сочетание клавиш ctr+q (английская раскладка), то он будет печатать по порядку подменяя номера строк. Мне это не подходит. Приложил файл который пытался изменить поэтому запутал, прилагаю исходный. А про 10 минут на макрос, возможно, но я не спец в этом, поэтому и обратился за помощью.

Автор - Allexsin
Дата добавления - 23.05.2018 в 17:54
StoTisteg Дата: Среда, 23.05.2018, 18:13 | Сообщение № 5
Группа: Авторы
Ранг: Старожил
Сообщений: 1161
Репутация: 103 ±
Замечаний: 0% ±

Excel 2010
Впрочем, как упражнение на SpecialCells сойдёт... Ловите, помечать можно любым символом.
[vba]
Код
Sub AutoPrint()

   Dim i As Long
   
   With Worksheets(2)
      With .Range(.Cells(2, 1), .Cells(.Cells(Rows.Count, 1).End(xlUp).Row, 1))
         For i = 1 To .SpecialCells(xlCellTypeConstants).Count
            Worksheets(1).Cells(20, 2).Value = .SpecialCells(xlCellTypeConstants)(i).Offset(, 2).Value
            Worksheets(1).Cells(23, 3).Value = .SpecialCells(xlCellTypeConstants)(i).Offset(, 4).Value
            Worksheets(1).Cells(26, 3).Value = .SpecialCells(xlCellTypeConstants)(i).Offset(, 5).Value
            Worksheets(1).Cells(2, 9).Value = "ñòð. " & i
            Worksheets(1).PrintOut From:=1, to:=1, Copies:=1, Collate:=True, IgnorePrintAreas:=False
         Next i
      End With
   End With

End Sub
[/vba]
К сообщению приложен файл: 3231079.xlsm (24.3 Kb)


Интуитивно понятный код - это когда интуитивно понятно, что это код.

Сообщение отредактировал StoTisteg - Среда, 23.05.2018, 18:20
 
Ответить
СообщениеВпрочем, как упражнение на SpecialCells сойдёт... Ловите, помечать можно любым символом.
[vba]
Код
Sub AutoPrint()

   Dim i As Long
   
   With Worksheets(2)
      With .Range(.Cells(2, 1), .Cells(.Cells(Rows.Count, 1).End(xlUp).Row, 1))
         For i = 1 To .SpecialCells(xlCellTypeConstants).Count
            Worksheets(1).Cells(20, 2).Value = .SpecialCells(xlCellTypeConstants)(i).Offset(, 2).Value
            Worksheets(1).Cells(23, 3).Value = .SpecialCells(xlCellTypeConstants)(i).Offset(, 4).Value
            Worksheets(1).Cells(26, 3).Value = .SpecialCells(xlCellTypeConstants)(i).Offset(, 5).Value
            Worksheets(1).Cells(2, 9).Value = "ñòð. " & i
            Worksheets(1).PrintOut From:=1, to:=1, Copies:=1, Collate:=True, IgnorePrintAreas:=False
         Next i
      End With
   End With

End Sub
[/vba]

Автор - StoTisteg
Дата добавления - 23.05.2018 в 18:13
Nic70y Дата: Среда, 23.05.2018, 19:19 | Сообщение № 6
Группа: Друзья
Ранг: Экселист
Сообщений: 9130
Репутация: 2415 ±
Замечаний: 0% ±

Excel 2010
дело 10 минут
[offtop]Вы вот зачем раскрываете все секреты,
юзеры все "умные" стали - типа Вам тут работы на 18 мин..
[/offtop]


ЮMoney 41001841029809

Сообщение отредактировал Nic70y - Среда, 23.05.2018, 19:20
 
Ответить
Сообщение
дело 10 минут
[offtop]Вы вот зачем раскрываете все секреты,
юзеры все "умные" стали - типа Вам тут работы на 18 мин..
[/offtop]

Автор - Nic70y
Дата добавления - 23.05.2018 в 19:19
Allexsin Дата: Среда, 23.05.2018, 21:04 | Сообщение № 7
Группа: Пользователи
Ранг: Новичок
Сообщений: 39
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
Спасибо, но не то :'( . При запуске макроса он запускает печать как бешеный и печатает большее количество бланков, чем есть для них значений. На выставленный символ в столбце "выбор" на листе "список" не реагирует. Основной смысл макроса чтобы выполнялась печать только тех строк которые помечены символом "х". Указание номера страницы бланка, выведенной не принципиально.
 
Ответить
СообщениеСпасибо, но не то :'( . При запуске макроса он запускает печать как бешеный и печатает большее количество бланков, чем есть для них значений. На выставленный символ в столбце "выбор" на листе "список" не реагирует. Основной смысл макроса чтобы выполнялась печать только тех строк которые помечены символом "х". Указание номера страницы бланка, выведенной не принципиально.

Автор - Allexsin
Дата добавления - 23.05.2018 в 21:04
StoTisteg Дата: Четверг, 24.05.2018, 10:16 | Сообщение № 8
Группа: Авторы
Ранг: Старожил
Сообщений: 1161
Репутация: 103 ±
Замечаний: 0% ±

Excel 2010
Странно... Немного переделал без нумерации, прогнал — печатает только Иванова и Сидорова, как и нужно.
[vba]
Код
Sub AutoPrint()

   Dim cell As Range
   
   With Worksheets(2)
      With .Range(.Cells(2, 1), .Cells(.Cells(Rows.Count, 1).End(xlUp).Row, 1))
         For Each cell In .SpecialCells(xlCellTypeConstants)
            Worksheets(1).Cells(20, 2).Value = cell.Offset(, 2).Value
            Worksheets(1).Cells(23, 3).Value = cell.Offset(, 4).Value
            Worksheets(1).Cells(26, 3).Value = cell.Offset(, 5).Value
            Worksheets(1).PrintOut From:=1, to:=1, Copies:=1, Collate:=True, IgnorePrintAreas:=False
         Next cell
      End With
   End With

End Sub
[/vba]
К сообщению приложен файл: 4809968.xlsm (29.6 Kb)


Интуитивно понятный код - это когда интуитивно понятно, что это код.

Сообщение отредактировал StoTisteg - Четверг, 24.05.2018, 10:21
 
Ответить
СообщениеСтранно... Немного переделал без нумерации, прогнал — печатает только Иванова и Сидорова, как и нужно.
[vba]
Код
Sub AutoPrint()

   Dim cell As Range
   
   With Worksheets(2)
      With .Range(.Cells(2, 1), .Cells(.Cells(Rows.Count, 1).End(xlUp).Row, 1))
         For Each cell In .SpecialCells(xlCellTypeConstants)
            Worksheets(1).Cells(20, 2).Value = cell.Offset(, 2).Value
            Worksheets(1).Cells(23, 3).Value = cell.Offset(, 4).Value
            Worksheets(1).Cells(26, 3).Value = cell.Offset(, 5).Value
            Worksheets(1).PrintOut From:=1, to:=1, Copies:=1, Collate:=True, IgnorePrintAreas:=False
         Next cell
      End With
   End With

End Sub
[/vba]

Автор - StoTisteg
Дата добавления - 24.05.2018 в 10:16
StoTisteg Дата: Четверг, 24.05.2018, 10:28 | Сообщение № 9
Группа: Авторы
Ранг: Старожил
Сообщений: 1161
Репутация: 103 ±
Замечаний: 0% ±

Excel 2010
юзеры все "умные" стали - типа Вам тут работы на 18 мин..

[offtop]А сильно умный юзер, способный точно оценить, сколько времени мне (!) нужно на работу, пусть сам её делает, раз знает как. Знаете анекдот про отвёртку?
У мужика заглохла машина, он её дотолкал до СТО.. Вышел механик, открыл капот, ткнул отвёрткой, машина завелась.
— Ой, класс, спасибо! Сколько с меня?
— Тысяча.
— Почему так дорого! Вы же только отвёрткой ткнули!
Механик молча уходит и возвращается со счётом:
1. Ткнул отвёрткой 10 руб.
2. Знал, куда 990 руб.


Интуитивно понятный код - это когда интуитивно понятно, что это код.
 
Ответить
Сообщение
юзеры все "умные" стали - типа Вам тут работы на 18 мин..

[offtop]А сильно умный юзер, способный точно оценить, сколько времени мне (!) нужно на работу, пусть сам её делает, раз знает как. Знаете анекдот про отвёртку?
У мужика заглохла машина, он её дотолкал до СТО.. Вышел механик, открыл капот, ткнул отвёрткой, машина завелась.
— Ой, класс, спасибо! Сколько с меня?
— Тысяча.
— Почему так дорого! Вы же только отвёрткой ткнули!
Механик молча уходит и возвращается со счётом:
1. Ткнул отвёрткой 10 руб.
2. Знал, куда 990 руб.

Автор - StoTisteg
Дата добавления - 24.05.2018 в 10:28
Allexsin Дата: Четверг, 24.05.2018, 11:37 | Сообщение № 10
Группа: Пользователи
Ранг: Новичок
Сообщений: 39
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
Теперь вроде работает. Проблема в том, что при добавлении новых строк (данных) на лист "список" необходимо будет дописывать макрос, это не совсем удобно объем данных большой, будет затрачиваться много времени.
 
Ответить
СообщениеТеперь вроде работает. Проблема в том, что при добавлении новых строк (данных) на лист "список" необходимо будет дописывать макрос, это не совсем удобно объем данных большой, будет затрачиваться много времени.

Автор - Allexsin
Дата добавления - 24.05.2018 в 11:37
StoTisteg Дата: Четверг, 24.05.2018, 11:47 | Сообщение № 11
Группа: Авторы
Ранг: Старожил
Сообщений: 1161
Репутация: 103 ±
Замечаний: 0% ±

Excel 2010
Макрос рассчитан на произвольное количество строк. У Вас в примере — 6 строк на 2 листе, Вы где-нибудь в коде эту цифру видите? ;)


Интуитивно понятный код - это когда интуитивно понятно, что это код.
 
Ответить
СообщениеМакрос рассчитан на произвольное количество строк. У Вас в примере — 6 строк на 2 листе, Вы где-нибудь в коде эту цифру видите? ;)

Автор - StoTisteg
Дата добавления - 24.05.2018 в 11:47
Allexsin Дата: Четверг, 24.05.2018, 13:52 | Сообщение № 12
Группа: Пользователи
Ранг: Новичок
Сообщений: 39
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
Все ок не туда посмотрел. Благодарю StoTisteg.
 
Ответить
СообщениеВсе ок не туда посмотрел. Благодарю StoTisteg.

Автор - Allexsin
Дата добавления - 24.05.2018 в 13:52
  • Страница 1 из 1
  • 1
Поиск:

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