Modules & VBA :: Attaching Word Document To Attachment Field For Every New Record
Jan 12, 2015
I'm trying to work out how to attach a word doc to the attachment field of a table when I add a new Record. The following code work's fine if I add it to the On Load Event on the Form, but the doc is attach'd to the first record. When I add the code to the Add New Record button, I get the error msg: "File already part of the Multi-Valued Field" and nothing in the attachment field.
Code:
Private Sub Add_Record_Click()
DoCmd.GoToRecord , , acNewRec
Me.Description.SetFocus
On Error GoTo Err_AddImage
Dim db As DAO.Database
Dim rsParent As DAO.Recordset2
Dim rsChild As DAO.Recordset2
I am trying to export an attachment item (Picture .jpg) to a word document. I have been exporting text to a word document successfully with below syntax "
With rst strLandSalesID = Nz(.Fields("LandSalesID")) strPhotograph = Nz(.Fields("Attachments"))
OK - bit of a newbie here & maybe this question has been asked a thousand times but i can't find any answers that cover this question properly.
Basically i am writing an access database that stores contract information, contact details, orders etc etc. I want to take the Order Number field, along with the Client Name & Address etc and post it into a Word Mail Merge type document, then save that file as ordernumber.doc after checking to see whether it already exists.
I have successfully managed to send the information into word in a mail merge document & get it to save the file using the ordernumber.doc format, however it is saving it to mydocuments folder and i want it in a subfolder called orders (that does exist). It is also not checking to see if that file already exist and overwrites it if it does.
I want to change the path to where the file is being saved, check whether it exists already, then ask me whether i want to overwrite it or save as something else.
Any help would be most appreciated. BTW I am using Word & Access 2003.
*****THIS IS THE CODE I AM USING***** Private Sub NewEternit_Click() On Error GoTo NewEternit_Err
Dim objWord As Object
'Start Microsoft Word. Set objWord = CreateObject("Word.Application")
With objWord 'Make the application visible. .Visible = True
'Open the document. .Documents.Add ("\shentcDocuments and SettingsJohn.SHENTMy DocumentsTemplatesEternit Order Merge.dot")
'Move to each bookmark and insert text from the form. .ActiveDocument.Bookmarks("orderno").Select .Selection.Text = (CStr(Forms!frmOrderDetails!ContractNo) & "/" & (Forms!frmOrderDetails!OrderNo)) .ActiveDocument.Bookmarks("Date").Select .Selection.Text = (CStr(Forms!frmOrderDetails!Date))
'Print the document in the foreground so Microsoft Word will not close 'until the document finishes printing. 'objWord.ActiveDocument.PrintOut Background:=False
' Save the file using orderno field Dim FName As String FName = Forms!frmOrderDetails!OrderNo & ".doc"
'Quit Microsoft Word and release the object variable. 'objWord.Quit 'Set objWord = Nothing
a) Open a word document from MS access / VBA, b) Connect to data from a query c) mailmerge it d) Save it as a new document containing mailemerged letters.
The code does open the required document as I can see it open.
I put a message box to recheck that filename/path is what I mean, and to to know till which line the code runs. Code runs till that point and that word doc is seen open. I get the error message before
Then I get error message.
I was fooling around and was getting message " This command is not available because no document is open" I tried to remove few lines thinking redundancy. Before getting the message, I was also getting the error trapping message "No documents opened."
Now I am getting different message.
I am getting message " The remote Server Machine does not Exist or is unavailable"
Following is the code I have written.
Dim xlApp As Object Set xlApp = CreateObject("word.Application")
We need to replicate an Access report we have in Microsoft Word. The report has a fixed, small image in the header and so we embedded it in the report (it is not in an external file). To put this image in the Word document the only way we have come up with is shown in the code below.
Code: Dim apWord As Word.Application Dim doc As Word.Document Set apWord = CreateObject("Word.application") doc.Shapes.AddPicture "G:ImagesSinful Banner.bmp", False, True, 0, 0, 540, 42
Which requires an external image file. We really would like to avoid this. We could make a template Word document, but that too would be an external file. We know how to put this image in a table as an OLE object, but can't find any way to get it from the table into the Word document.
Not sure if this is possible but I am trying to extract data from a word document to set up a database.
Basically I am trying to capture data from completed forms, similar to the sample attached, the actual blank form is 20 pages long and once completed can be as many as 30 pages, or even more, although the format doesnt change (i.e. individidual cells will expand to fit the data in the cell).
I want to be able to scan through the completed forms and extract the data i.e. Full Study Title, Short Study Title, Study Type etc. into a database.
The issues: 1. Each document will have a different name but will be stored in the same location. 2. What is on page 8, for example, in one document is not necessarity going to be the same on every document (due to expanding cells) 3. Each sector is in a separate table but tables can spread across several pages. 4. Some data is stored in a checkbox format rather than text. 5. I dont want to extract all of the data, only certain sections (at least at this stage).
If I use the word template named "ABC.dot" as attached and write the following piece of code to print off the letters with different appropriate background , it works perfectly fine:
Code: Sub PrintLetters() Application.DisplayAlerts = False Dim cn As ADODB.Connection Dim rs As ADODB.Recordset Dim r As Long Set cn = New ADODB.Connection
[Code] ....
But if I combine two templates together in one template as attached "Capita.dot" then it doesn't display background picture at all in any of the cases. I am using the same piece of code but the background image is not displaying. The background image shows logos for each letter like For capita letters , the logo will be capita . For Friends Life letters the logo background will be different.
I'd like to export only email addresses separated by ";" to a word document based on a result of a query. Query gets build dynamically in VB behind the form as there are many search criterias. so user can eneter one field or many in the form to build the query. Queries work and i can extract and display the email in a report or another form, but now i'd like to export it to a word document or outlook (but i would prefer word).
Can anyone please give me advice how i should approch this issue.
I'm using ACCESS 2010. I have a form which is having a embedded word document. What I'm trying to do is i want to enable user to format a mail in the embedded word document which will contain rich text and screenshots then with a click of button an outlook mail should open and content of this document should be pasted there. Once user sends this email, I want to save content of embedded document in the database.
I was tasked to create an application where by the user enters keywords into an Access form, and when he clicks the button, it will run the keywords against the file names stored in the table and automatically open the Word document that is the best match.
I have created a table query called Directory, which contains FPath (Z:), FName (Document1.doc) and Directory (Z:Document1.doc).
Code: Private Sub Command2_Click() Dim wrdApp As Word.Application Dim wrdDoc As Word.Document Dim filepath As String Dim strSearch As String
If IsNull(Me.txtSearch) Or Me.txtSearch = "" Then MsgBox "Please type in your search keyword.", vbOKOnly, "Keyword Needed"
[Code] ....
This is the code that I am currently using to search and open the Word documents, however, this code only manages to open Microsoft Word program without loading any documents. Also, there are no error messages when I click the submit button.
There are two pages in a word document. All the pages have same headers as attached in word document "Capita.doc". I want to display that header on just first page and on second one page, I want to display watermark stored in "J:PAP107.jpg". The following code displays same watermark on all the pages i.e "J:PAP107.jpg" but I want to keep the header as in the attached word document on first page only and display watermark stored in "J:PAP107.jpg" on second page.
Code:
Private Sub CmdPrint_Click() Call WordSetupQA("C:CAPITA.dot", "J:PAP107.jpg", Format(DateSerial(ComboBox4, ComboBox3, ComboBox2), "mm/dd/yyyy"), pno) End Sub
Code: Sub WordSetupQA(fnTemplate As String, fnBackGroundPic As String, b As Date, a As String) On Error Resume Next 'MsgBox txtbox Application.DisplayAlerts = False Dim strworkbookname As String strworkbookname = "C:System1.mdb" Set WordApp = GetObject(, "Word.Application")
I have a control on a form which opens up Word and completes fields in the Word document with data on the form. It basically fills in an invoice form.
Everything works ok apart from when the invoice date and order date fields are passed. In the tables and in the forms, the dates are in Long Format ie '17 May 2005'. However, when they are apssed to the Word document, they are in a shortened format ie '17/05/05'. I am required to show the Long Format but am at a loss to find out how to achieve this.
I use bookmarks in the Word document and the code on my form relating to these fields are:
The Word document cannot be changed as far as I can see. I believe the answer could be to change the code above to change the format, but cannot get anything to work?
I am having the strangest results with my automated mailmerge. Basically it does work, but not all the time. The basic idea is to allow the user to dynamically create a query that produces a result list which fills a temporary table. The use then selects a prebuilt merge template and merge is executed against the temp table. The merge template are of the .doc type, but sme have been converted to .docx; the .doc files tend to work most often, but all of the will eventually get a Table is locked message... However if I run in test mode with code breaks and manually step through the process it always works... here is the heart of the code ...
Err_Pos = 10
Code: DoCmd.SetWarnings False ' if tmp tbl left over from last run kill it DoCmd.RunSQL "Drop table Word_Merge_Tmp_TBL" Err_Pos = 12
[Code].....
There are many error cases in the error catch routine. That I have managed to make Access stop hanging when word has a problem or the table is locked. But I can't get the table to be free consistantly and why does it always work when I manually step through the code.
copying all the contents/text from word document and pasted that in the Memo Field, I have a Recruitment database where I have 02 fields on is CV Path (Text Field) that stores the CV Path (Word Document Path) and another text box content (Memo Field) where I would like to copy all the data from the word document to the Content text box (Memo) field.
I have put a Command button on the form...the code to "Copy the content/text" from [CV Path] word document and add it to the "Memo" field.
I have a Word 2010 document linked to an Access 2010 data source. When a user clicks a button in Access, the Word document loads and performs a email merge using the below VBA code:
Private Sub Document_Open() With ActiveDocument.MailMerge .Destination = wdSendToEmail .SuppressBlankLines = True
[Code] ....
However, as the .mailsubject part is not in the loop it is only retrieving the first Return Code. I have tried to integrate in the loop to no avail. Also, how do I add static text to the Subject, I need something like "Your Return Code" + "Return Code"..
I am trying to open a word document with corresponding data filled from the text field of a form. I managed to get the word document but I don't know how to give a variable in word document.
I want to add a record with attachment to a table in an access (2013) database.
If I ignore the attachment error everything works as it should, but as soon as I add the code for the attachment I receive error code 3259.
Code:
Private Sub add_tune() Dim dbtune As DAO.Database Dim rst_tune As DAO.Recordset Dim rst_tune_in As DAO.Recordset Dim rs_child As DAO.Recordset Set dbtune = CurrentDb
[code]....
Since I have a dutch office version the error text (ongeldig veld gegevenstype) is in dutch, translated it means something like a data type mismatch.
t_first_bars is a field in the table tbl_tune . The field type is attachment.
What I'm try to do is attach any files from the attachment field from the current open record to email i have some code i have manage to get files from the open record to save to destination /temp folder to work so outlook can attach the files but outlook is not opening or putting them in to email also have problem's that i have highlighted in the code in red.
Code: Private Sub cmdEmail2_Click() Dim outlookApp As Outlook.Application Dim outlookNamespace As NameSpace Dim objMailItem As MailItem Dim objFolder As MAPIFolder Dim strAttachementPath As String
I'm looking to add a button to my Customers form which will mailmerge the current record to a Word template and then save the Word doc as a new file (Ideally the customer's name).
I've looked at the Super Easy Mailmerge but I can't work out how to implement it without all of the variables (selecting documents etc.).
The files will all be saved to one location (C:CustomersExports) and this won't change.
This is also the location of the mailmerge template (C:CustomersExportsTemplate.docx)
Hello all, In our company we send off a lot of reports for a given sample. Sometimes the office folks need to do a specialized report with tables and other formatting. They would like to be able to a: be able to have another report where they could just write stuff, comments, etc about the sample and b: be able to import these word documents that have the tables and other formatting. If we could not use word at all that would be great but I don't think there is a way to do the formatting necessary in access. So my question is: how do I import a word document and have it displayed in a form and then print on the report. I would like to store the whole document in one field in a table. (is this at all possible?) I have searched this forum and haven't found what I'm looking for. Thank you for any help.
Is there a way that I could put a command button on my form and on clicking it, it would generate a word document (I have a word document saved) but on the word document, it would populate the address field with the information on the form. I have about 5 fields on the form that will be used in the word document.
I thought about creating a report in access instead, but I might want to edit the word document manually, is there a way to do this?
When I press it a mail is being send with a snapshot attached to it
Instead of a snapshot I want it to attach it as a word document.
Here you see the code that is used. I noticed it says snapshot format on a line but I don't know what the name is for a word document.
Code:Private Sub cmdMail_Click()On Error GoTo Err_cmdMail_Click Dim stDocName As String Dim V_EmailAdres As String If Not (IsNull(Me.HauliersEMAIL.Value)) And Me.HauliersEMAIL.Value <> "" Then V_EmailAdres = Me.HauliersEMAIL.Value Else V_EmailAdres = "" End If stDocName = "TransportOrder" DoCmd.SendObject acReport, stDocName, "Snapshot Format", V_EmailAdres, , , "Transport Order BP", ""Exit_cmdMail_Click: Exit SubErr_cmdMail_Click: MsgBox Err.Description Resume Exit_cmdMail_Click End Sub