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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 24.11.2012, 21:31   #1
Lesha-R
Новичок
Джуниор
 
Регистрация: 24.11.2012
Сообщений: 5
По умолчанию Друзья не откажите в решении проблемки.

Нужно в таблицу Ecel добавить пару кнопок.
Первая кнопка - это вызов окна Save AS.
Собственно как вызвать само окно я разобрался, через Application.Dialogs(xlDialogSaveAs) .Show
а вот можно ли что бы в нем уже по умолчанию был выбран формат сохранения с поддержкой макросов.
Пытался поиграть с FileFormat:= _xlOpenXMLWorkbookMacroEnabled но для него как я понял требуется задавать имя файла Filename:=
Вот и пытаюсь разобраться....

И еще хотел создать пару кнопок для печати.
В документе будут использоваться несколько листов и я хотел сделать несколько кнопок, таких например:
Кнопка 1 - Печатать "Лист 2 страницы 1,3,5"
Кнопка 2 - Печатать "Лист 2 страницы 2,4,6"
Кнопка 3 - Печатать "Лист 3
Кнопка 3 - Печатать "Лист 4

Если не сложно, то подскажи плиз как сделать.
Заранее благодарен.
Lesha-R вне форума Ответить с цитированием
Старый 24.11.2012, 21:37   #2
VictorM
Старожил
 
Аватар для VictorM
 
Регистрация: 15.05.2008
Сообщений: 2,058
По умолчанию

Цитата:
Кнопка 1 - Печатать "Лист 2 страницы 1,3,5"
Кнопка 2 - Печатать "Лист 2 страницы 2,4,6"
Кнопка 3 - Печатать "Лист 3
Кнопка 3 - Печатать "Лист 4
Если не сложно, то подскажи плиз как сделать.
Все это можно сделать довольно просто. Включите макрорекордер, проделайте необходимые действия и получите готовый рабочий код.
А потом у же можно все это назначить соответствующим кнопкам.
"Дайте людям рыбы, и вы накормите их на весь день; научите их ловить рыбу - и вы накормите их на всю жизнь"
"Большое спасибо" - Z261597841314, R208907249777, U447361470499
VictorM вне форума Ответить с цитированием
Старый 24.11.2012, 22:08   #3
Lesha-R
Новичок
Джуниор
 
Регистрация: 24.11.2012
Сообщений: 5
По умолчанию

Цитата:
Сообщение от VictorM Посмотреть сообщение
Все это можно сделать довольно просто. Включите макрорекордер, проделайте необходимые действия и получите готовый рабочий код.
Я бы с удовольствием, только у меня нет строки ввода заданных страниц в окне печати.
Lesha-R вне форума Ответить с цитированием
Старый 24.11.2012, 22:45   #4
VictorM
Старожил
 
Аватар для VictorM
 
Регистрация: 15.05.2008
Сообщений: 2,058
По умолчанию

Цитата:
у меня нет строки ввода заданных страниц в окне печати
Сгруппируйте нужные листы и включите - выделенные листы
Изображения
Тип файла: jpg 2012-11-24_204950.jpg (79.0 Кб, 109 просмотров)
"Дайте людям рыбы, и вы накормите их на весь день; научите их ловить рыбу - и вы накормите их на всю жизнь"
"Большое спасибо" - Z261597841314, R208907249777, U447361470499

Последний раз редактировалось VictorM; 24.11.2012 в 22:51.
VictorM вне форума Ответить с цитированием
Старый 24.11.2012, 22:57   #5
Lesha-R
Новичок
Джуниор
 
Регистрация: 24.11.2012
Сообщений: 5
По умолчанию

Цитата:
Сообщение от VictorM Посмотреть сообщение
Сгруппируйте нужные листы и включите - выделенные листы
Вы не поняли.
Кнопка 1 Кнопка 2 должны печатать один лист но разные страницы (Для двухсторонней распечатки)
В Excel 2003 в окне "Печать" была строчка где можно было перечислить конкретные страницы на листе, а в 2007 не вижу этого или я туплю окончательно....
Изображения
Тип файла: jpg Безымянный-1.jpg (48.9 Кб, 93 просмотров)

Последний раз редактировалось Lesha-R; 24.11.2012 в 23:02.
Lesha-R вне форума Ответить с цитированием
Старый 24.11.2012, 23:07   #6
VictorM
Старожил
 
Аватар для VictorM
 
Регистрация: 15.05.2008
Сообщений: 2,058
По умолчанию

Цитата:
В Excel 2003 в окне "Печать" была строчка где можно было перечислить конкретные страницы на листе,
Скриншот выше именно из 2003-го Excel и как видите, такой строчки там тоже нет.
Строчка, о которой Вы говорите, присутствует в окне печати Word-а.
А насчет двусторонней печати, тут даже 2 кнопки не нужны.
Печатаете нечетные, затем выводите MsgBox с текстом типа переверните листы и нажмите ОК.
И продолжаете уже печатать четные.
Говорю так уверенно, потому что у меня давно работает такой макрос.
"Дайте людям рыбы, и вы накормите их на весь день; научите их ловить рыбу - и вы накормите их на всю жизнь"
"Большое спасибо" - Z261597841314, R208907249777, U447361470499
VictorM вне форума Ответить с цитированием
Старый 24.11.2012, 23:14   #7
Lesha-R
Новичок
Джуниор
 
Регистрация: 24.11.2012
Сообщений: 5
По умолчанию

Цитата:
Сообщение от VictorM Посмотреть сообщение
Строчка, о которой Вы говорите, присутствует в окне печати Word-а.
Уже увидел где лопухнулся ))

Цитата:
Сообщение от VictorM Посмотреть сообщение
А насчет двусторонней печати, тут даже 2 кнопки не нужны.
Печатаете нечетные, затем выводите MsgBox с текстом типа переверните листы и нажмите ОК.
И продолжаете уже печатать четные.
Примером не поделитесь
Lesha-R вне форума Ответить с цитированием
Старый 24.11.2012, 23:16   #8
VictorM
Старожил
 
Аватар для VictorM
 
Регистрация: 15.05.2008
Сообщений: 2,058
По умолчанию

Показанное Вами окно печати у меня присутствует, как я уже говорил, в Word-е
В Excel же окно печати выглядит, по крайней мере у меня, так как я показал.
И в 2003-м и в 2007-м
"Дайте людям рыбы, и вы накормите их на весь день; научите их ловить рыбу - и вы накормите их на всю жизнь"
"Большое спасибо" - Z261597841314, R208907249777, U447361470499
VictorM вне форума Ответить с цитированием
Старый 24.11.2012, 23:17   #9
VictorM
Старожил
 
Аватар для VictorM
 
Регистрация: 15.05.2008
Сообщений: 2,058
По умолчанию

Цитата:
Примером не поделитесь
запросто
Код:
 If MsgBox("Печать первой страницы Договора." & Chr(10) & "Вставьте в принтер два листа бумаги." & Chr(10) & "Печатать ?", vbYesNo, "Внимание") = vbNo Then
        Exit Sub
    End If
   Sheets("Договор").PrintOut From:=1, To:=1, Copies:=2, Collate:=True
    MsgBox "Печать второй страницы Договора." & Chr(10) & "Переверните листы и вставьте в принтер.", vbInformation, "Внимание"
    Sheets("Договор").PrintOut From:=2, To:=2, Copies:=2, Collate:=True
Подставьте свой код из записанного макрорекордером
"Дайте людям рыбы, и вы накормите их на весь день; научите их ловить рыбу - и вы накормите их на всю жизнь"
"Большое спасибо" - Z261597841314, R208907249777, U447361470499
VictorM вне форума Ответить с цитированием
Старый 24.11.2012, 23:29   #10
Lesha-R
Новичок
Джуниор
 
Регистрация: 24.11.2012
Сообщений: 5
По умолчанию

Спасибо! Попробую.
Lesha-R вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
проблемки с форумом на основе IntBoard VaMpIR1111 Помощь студентам 1 18.08.2011 01:22
проблемки с TPascal Arioh Помощь студентам 4 17.11.2010 20:27
проблемки с видео nikox12 Компьютерное железо 27 03.09.2010 12:39
друзья!!! NYKOLAY Компьютерное железо 10 19.06.2010 03:14
Проблемки в создании компонента(( Ti_pain) Помощь студентам 29 14.11.2009 12:05