Помогите ПОЖАЛУЙСТА!!!ОЧЕНБ НАДО!!!!
Добавлено: 24 июл 2008, 00:45
Уважаемые МЕГА-програмисты помогите доделать макрос под Word!!
Сразу хочу сказать, что в VB я дуб дубом
и сделал ее благодаря примерам из книги (какие нашел и выдерании програмного кода из уже сделанных программ), так что если есть возможность оъяснить оставшуюся часть работы, просьба объяснить доходчиво, для "чайников"!! Заранее благодарен!
Есть форма UserForm1
1. Есть ячейки предположим TextBox1,2,3 в которые вписываются (Ф.И.О. клиента) и есть ячейка TextBox4 в которой должны высветиться фамилия и инициалы клиента, при нажатии кнопки CommandButton1.
Например в ячейки TextBox1,2,3 Иванов Иван Иванович при нажатии на кнопку CommandButton1 в ячейке TextBox4 мы должны получить результат Иванов И.И.
2. Есть ячейка TextBox4 и кнопка CommandButton3, при нажатии на которую высвечивается форма календаря:
Private Sub calendar(a As Integer)
UserForm2.Show
End Sub
- - - - - - - -
Private Sub CommandButton3_Click()
calendar (1)
End Sub
При выборе даты встает грубо говоря произвольная дата, а не та которую я выбрал и в формате mm/dd/yyyy, а мне нужен формат dd.mm.yyyy. Я знаю что нужно прописать формат даты и прописать функцию чтобы она высвечивалась,но не знаю как!!
3. Есть раскрывающаяся ячейка ComboBox3 (предположим), список который должен раскрываться при нажатии на нее должен содержать значения от 1 до 373. Не знаю как это прописать!!!
4.Есть ячейка TextBox3 в которой должна высвечиваться информация ddmm (т.е. например 0708) в зависимости от выбранной даты в ячейке TextBox4 (которая выводится в формате dd.mm.yyyy)
5.Есть форма UserForm1, на которой существует кнопка CommandButton10, при нажатии на которую высвечивается форма UserForm3 (на которой существуют поля TextBox и CommandButton), так же есть кнопка "Принять" (CommandButton2) при нажатии которой все внесенные изменения на UserForm3 должны сохраниться и выйти опять на UserForm1. Как выйти на UserForm1 понятно:
Unload Me,
но как прописать чтобы изменения сохранялись???
6.Есть кнопка сохранения CommandButton9_Click(), при нажатии на которую выполняется функция
Private Sub CommandButton9_Click()
Dialogs(wdDialogFileSaveAs).Show
Хотелось бы,чтобы в Имя файла вставали данные предположим TextBox3-TextBox4 (ComboBox5) автоматически, т.е например Иванов А.А-Петров А.Б (333). Была возможность прописать:
ActiveDocument.SaveAs FileName:=TextBox3.Value + "-" + TextBox4.Value + "(" + ComboBox5.Value + ")",
но хотелось бы выбирать путь для сохранения файла!
7.И наконец самое главное!!!!
Программа строилась на основании вот этой статейки:
Автоматизировать работу по заполнению данных в представленном контракте о найме на работу.
КОНТРАКТ №__
г. Екатеринбург (дата подписания)
Предприятие – ООО «Информационные системы» в лице директора _____, действующего на основании Устава и именуемое в дальнейшем «Предприятие», с одной стороны и гражданин:
_________ именуемый в дальнейшем «Работник», с другой стороны, заключили настоящий контракт о нижеследующем:
1. ПРЕДМЕТ КОНТРАКТА
1.1. Работник работает в должности:
1.2. Работнику установлен оклад:
…
5.3. Срок действия договора:
Необходимо создать макрос, выполнение которого позволит автоматизировать работу по заполнению необходимых полей ввода (№ контракта, дата подписания, Ф.И.О. директора, Ф.И.О. работника, должность, размер оклада, срок действия договора).
Выполнение задания начинается с установки закладок в местах ввода данных. Установите курсор на позицию, с которой будет вводиться текст (первая позиция после слов КОНТРАКТ №). В меню Вставка выберите пункт Закладка. Появится диалоговое окно Закладка.
В поле Имя закладки наберите НомерКонтракта (название пишется без пробела) и нажмите кнопку Добавить. По такому же сценарию установите закладки в других полях ввода (назовите их Дата, ФИОДиректора, ФИОРаботника, Должность, Оклад, СрокДоговора).
Теперь необходимо записать макрос. В меню Сервис выберите пункт Макрос –> Начать запись. Макрос назовите КонтрактНаРаботу, установите способ его запуска.
В меню Правка выберите пункт Перейти… В появившемся окне Найти и заменить выберите вкладку Перейти и в качестве Объект перехода выбрать Закладка.
Переход к установленной в тексте закладке происходит после выбора её имени в выпадающем списке Введите имя закладки и нажатия кнопки Перейти. Не закрывая диалогового окна, пройдите по всем установленным вами закладкам. Закройте окно кнопкой Закрыть и остановите запись макроса.
Ну и т.д. т.е основной макрос имеет вид:
Selection.GoTo What:=wdGoToBookmark, Name:="...."
Selection.TypeText Text:=ComboBox3 и т.д.
После выполнения данной функции из меню Вставка-----Закладка исчезают несколько закладок и повторное выполнение данной функции (например если мы совершили ошибку или нужно что-то поправить) невозможно!!!!Как можно сделать так, чтобы этого не происходило??
Сразу хочу сказать, что в VB я дуб дубом

Есть форма UserForm1
1. Есть ячейки предположим TextBox1,2,3 в которые вписываются (Ф.И.О. клиента) и есть ячейка TextBox4 в которой должны высветиться фамилия и инициалы клиента, при нажатии кнопки CommandButton1.
Например в ячейки TextBox1,2,3 Иванов Иван Иванович при нажатии на кнопку CommandButton1 в ячейке TextBox4 мы должны получить результат Иванов И.И.
2. Есть ячейка TextBox4 и кнопка CommandButton3, при нажатии на которую высвечивается форма календаря:
Private Sub calendar(a As Integer)
UserForm2.Show
End Sub
- - - - - - - -
Private Sub CommandButton3_Click()
calendar (1)
End Sub
При выборе даты встает грубо говоря произвольная дата, а не та которую я выбрал и в формате mm/dd/yyyy, а мне нужен формат dd.mm.yyyy. Я знаю что нужно прописать формат даты и прописать функцию чтобы она высвечивалась,но не знаю как!!

3. Есть раскрывающаяся ячейка ComboBox3 (предположим), список который должен раскрываться при нажатии на нее должен содержать значения от 1 до 373. Не знаю как это прописать!!!
4.Есть ячейка TextBox3 в которой должна высвечиваться информация ddmm (т.е. например 0708) в зависимости от выбранной даты в ячейке TextBox4 (которая выводится в формате dd.mm.yyyy)
5.Есть форма UserForm1, на которой существует кнопка CommandButton10, при нажатии на которую высвечивается форма UserForm3 (на которой существуют поля TextBox и CommandButton), так же есть кнопка "Принять" (CommandButton2) при нажатии которой все внесенные изменения на UserForm3 должны сохраниться и выйти опять на UserForm1. Как выйти на UserForm1 понятно:
Unload Me,
но как прописать чтобы изменения сохранялись???

6.Есть кнопка сохранения CommandButton9_Click(), при нажатии на которую выполняется функция
Private Sub CommandButton9_Click()
Dialogs(wdDialogFileSaveAs).Show
Хотелось бы,чтобы в Имя файла вставали данные предположим TextBox3-TextBox4 (ComboBox5) автоматически, т.е например Иванов А.А-Петров А.Б (333). Была возможность прописать:
ActiveDocument.SaveAs FileName:=TextBox3.Value + "-" + TextBox4.Value + "(" + ComboBox5.Value + ")",
но хотелось бы выбирать путь для сохранения файла!
7.И наконец самое главное!!!!
Программа строилась на основании вот этой статейки:
Автоматизировать работу по заполнению данных в представленном контракте о найме на работу.
КОНТРАКТ №__
г. Екатеринбург (дата подписания)
Предприятие – ООО «Информационные системы» в лице директора _____, действующего на основании Устава и именуемое в дальнейшем «Предприятие», с одной стороны и гражданин:
_________ именуемый в дальнейшем «Работник», с другой стороны, заключили настоящий контракт о нижеследующем:
1. ПРЕДМЕТ КОНТРАКТА
1.1. Работник работает в должности:
1.2. Работнику установлен оклад:
…
5.3. Срок действия договора:
Необходимо создать макрос, выполнение которого позволит автоматизировать работу по заполнению необходимых полей ввода (№ контракта, дата подписания, Ф.И.О. директора, Ф.И.О. работника, должность, размер оклада, срок действия договора).
Выполнение задания начинается с установки закладок в местах ввода данных. Установите курсор на позицию, с которой будет вводиться текст (первая позиция после слов КОНТРАКТ №). В меню Вставка выберите пункт Закладка. Появится диалоговое окно Закладка.
В поле Имя закладки наберите НомерКонтракта (название пишется без пробела) и нажмите кнопку Добавить. По такому же сценарию установите закладки в других полях ввода (назовите их Дата, ФИОДиректора, ФИОРаботника, Должность, Оклад, СрокДоговора).
Теперь необходимо записать макрос. В меню Сервис выберите пункт Макрос –> Начать запись. Макрос назовите КонтрактНаРаботу, установите способ его запуска.
В меню Правка выберите пункт Перейти… В появившемся окне Найти и заменить выберите вкладку Перейти и в качестве Объект перехода выбрать Закладка.
Переход к установленной в тексте закладке происходит после выбора её имени в выпадающем списке Введите имя закладки и нажатия кнопки Перейти. Не закрывая диалогового окна, пройдите по всем установленным вами закладкам. Закройте окно кнопкой Закрыть и остановите запись макроса.
Ну и т.д. т.е основной макрос имеет вид:
Selection.GoTo What:=wdGoToBookmark, Name:="...."
Selection.TypeText Text:=ComboBox3 и т.д.
После выполнения данной функции из меню Вставка-----Закладка исчезают несколько закладок и повторное выполнение данной функции (например если мы совершили ошибку или нужно что-то поправить) невозможно!!!!Как можно сделать так, чтобы этого не происходило??