Rambler's Top100
Форум: MS ACCESSVBVBA MS OfficeMS SQL server
Новые сообщения: 0000

Форум: MS ACCESS

Вопросы связанные с MS ACCESS

Обновить визитку
Участники «Online»
Все участники

 
 

Доброго времени суток, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Помогите! Проблемы с шаблоном и его привязкой к полю формы.
 
 автор: DarkRose   (04.03.2007 в 23:47)   личное сообщение
 
 

Помогите, пожалуйста! Очень уж нужно...
Есть форма "Исходящие письма" (для регистрации документов). На ней поля "Дата исходящего", "№ исходящего", "Дата входящего" и т.п. И в том числе поле "Ссылка на документ". Рядом с этим полем кнопка, которая запускает Word и заполняет шаблон письма данными из нужных полей. Процедура такая:

Dim wordApplication As Object
Dim wordDocument As Object
Dim str_Path As String

str_Path = "c:\Секретарь_исходящие\Shablon.dot"

Set wordApplication = CreateObject("Word.Application")
wordApplication.Visible = True
Set wordDocument = CreateObject("Word.Document")
Set wordDocument = wordApplication.Documents.Add(str_Path)

wordDocument.Bookmarks("Дата_исходящего").Select
wordApplication.Selection.Text = Me!Дата_исходящего
wordApplication.Selection.Collapse

wordDocument.Bookmarks("Номер_исходящего").Select
wordApplication.Selection.Text = Me!Номер_исходящего
wordApplication.Selection.Collapse

wordDocument.Bookmarks("Номер_входящего").Select
wordApplication.Selection.Text = Me!Номер_входящего
wordApplication.Selection.Collapse

wordDocument.Bookmarks("Дата_входящего").Select
wordApplication.Selection.Text = Me!Дата_входящего
wordApplication.Selection.Collapse

str_Path = "c:\Секретарь_исходящие\Письмо.doc"
wordApplication.ActiveDocument.SaveAs FileName:=str_Path

Set wordDocument = Nothing
Set wordApplication = Nothing

Шаблон заполняется, но проблема в том, что "Дата входящего" пишется без точек (т.е. вот так: 02032007). Замечу, что поле "Дата входящего" со списком. Может из-за этого? Как же быть? (Без поля со списком не обойтись.)
И еще большая проблема! В поле "Ссылка на документ" содержится ссылка на документ в виде: "/Секретарь_исходящие/Письмо1.doc". Мне нужно, чтобы при нажатии на кнопку открывался шаблон, соответственно заполнялся данными и сохранялся под именем "Письмо1.doc", а следующее - уже под "Письмо2.doc" и так далее, и путь к doc-файлу прописывался в поле "Ссылка на документ". Двойное нажатие по полю должно открывать этот doc-файл. Как это сделать?
Ломаем голову над этим уже который день... Была бы очень благодарна за помощь!

  Ответить  
 
 автор: Explorer   (05.03.2007 в 00:11)   личное сообщение
 
 

format(Me!UpcomeDate,"dd"."mm"."yyyy") поможет?

  Ответить  
 
 автор: DarkRose   (05.03.2007 в 00:16)   личное сообщение
 
 

А куда именно это вставлять?

  Ответить  
 
 автор: Explorer   (05.03.2007 в 08:53)   личное сообщение
 
 

везде где есть обращение к полям с форматом даты

  Ответить  
 
 автор: DarkRose   (05.03.2007 в 23:47)   личное сообщение
 
 

спасибо, проблема решилась.
но появились еще другие вопросы...

  Ответить  
 
 автор: DarkRose   (05.03.2007 в 00:27)   личное сообщение
 
 

>И еще большая проблема! В поле "Ссылка на документ"
>содержится ссылка на документ в виде:
>"/Секретарь_исходящие/Письмо1.doc". Мне нужно, чтобы при
>нажатии на кнопку открывался шаблон, соответственно
>заполнялся данными и сохранялся под именем "Письмо1.doc", а
>следующее - уже под "Письмо2.doc" и так далее, и путь к
>doc-файлу прописывался в поле "Ссылка на документ". Двойное
>нажатие по полю должно открывать этот doc-файл. Как это
>сделать?

Пока писала, ошиблась. В том поле еще ничего не содержиться. А должно вписываться автоматически ссылка на документ в виде: "/Секретарь_исходящие/Письмо1.doc".

  Ответить  
 
 автор: DarkRose   (05.03.2007 в 20:13)   личное сообщение
 
 

С датой все получилось!
Но тут же возникла еще одна маленькая деталь. Поля "Дата_входящего", "Номер_входящего" не являются обязательными к заполнению. И при заполнении шаблона программа на этих полях спотыкается и выдает ошибку. Как обойти? Просто чтобы эти поля, если они не заполнены, и в документе оставались пустыми.

  Ответить  
 
 автор: osmor   (05.03.2007 в 22:11)   личное сообщение
 
 

wordApplication.Selection.Text = nz(Me!Номер_входящего,"")

  Ответить  
 
 автор: DarkRose   (05.03.2007 в 23:46)   личное сообщение
 
 

Проблема решилась, спасибо)

А что скажите насчет этого. В поле "Ссылка_на_документ" будет соотвественно хранится ссылки на разные документы. Нужно, чтобы по двойному щелчку открывался документ в Ворде. Я так понимаю, что прописывать надо что-то вроде:

Private Sub Поле36_DblClick(Cancel As Integer)
Dim wordApplication As Object

Set wordApplication = CreateObject("Word.Application")
With wordApplication
.Visible = True
.Documents.Open "А здесь путь к файлу, который написан в поле. Как это сделать, не знаю."
End With
End Sub

Вот. Подскажите, пожалуйста..

  Ответить  
 
 автор: Explorer   (06.03.2007 в 00:00)   личное сообщение
 
 

в сети есть примеры как из VBA открыть файл в родном для него приложении - поищите внимательнее

  Ответить  
 
 автор: Explorer   (05.03.2007 в 23:58)   личное сообщение
 
 

я бы сделал что-то вроде

wordApplication.Selection.Text = Format(nz([UpcomeDate];"__/__/__");"dd/mm/yy")

чтобы не оставлять непонятное пустое место

  Ответить  
HiProg.com - Технологии программирования
Rambler's Top100 TopList