AddContactFromOutlook command problem

cewolf

Registered User.
Local time
Today, 11:59
Joined
Oct 8, 2011
Messages
10
Greetings

i am trying to use
RunMenuCommand
command : AddContactFromOutlook
but i get this error message

"The command or action AddFromOutlook inn't available now "

on a demo access "project manager" it works but in my data base does not

do you know how to solve this issue

thanks
 
I was having the same exact problem with my 2013 Access once I split the database. However, I found a posting on another forum and with one edit it worked perfectly for me. I cannot explain how everything works, but I wanted to share this solution with others on this forum.

This is a link to the posting on the Microsoft forum:
http://answers.microsoft.com/en-us/...m/8824f531-c475-e011-8dfc-68b599b31bf5?auth=1

His instructions are edited below:
The way the “Add from Outlook” button works is it relies upon certain field mappings (between Access and Outlook) and when you split the database, these mappings are thrown off.

This code allows you to remap the fields in your Customer’s table. Basically, after you paste this code into a module in your frontend database, you will need to make the edits to the MakeContacts() function. You then will go to the immediate window and run the MakeContacts function by typing in MakeContacts and pressing enter. If you didn’t edit the Customer’s table in the Customer Service template, the VBA code should look similar to the following:

'////// Copy the script below into a new module //////////

' CI is for ContactInfo
Enum CI
First
Last
Email
Company
JobTitle
WorkPhone
HomePhone
CellPhone
WorkFax
WorkAddress
WorkCity
WorkState
WorkZip
WorkCountry
WebPage
Comments

End Enum

' Each field map item maps between a field
' name in the Access table and a property
' name Access maps to Outlook and SharePoint
' contact field info.
Type FieldMap
prop As String
Field As String
End Type

' This Varible lists all the proeprties that
' can be mapped to Contact info. You fill
' it with the corresponding field names from
' your table.
Dim Map(CI.Comments) As FieldMap
Public Sub MakeContacts()

Dim strTable As String
Dim fm As FieldMap
Dim td As dao.TableDef
Dim db As dao.Database
Dim I As Integer
' -----------------------------------------------
' UPDATE THESE STRINGS
' to match the table and field names in
' your app. It is okay not to set some if you
' don't have an equivalent.

' Set this to your table name
strTable = "Customers"

' Set these to your field names
Map(CI.First).Field = "First Name"
Map(CI.Last).Field = "Last Name"
Map(CI.Email).Field = "E-mail Address"
Map(CI.Company).Field = "Company"
Map(CI.JobTitle).Field = "Job Title"
Map(CI.WorkPhone).Field = "Business Phone"
Map(CI.HomePhone).Field = "Home Phone"
Map(CI.CellPhone).Field = "Mobile Phone"
Map(CI.WorkFax).Field = "Fax Number"
Map(CI.WorkAddress).Field = "Address"
Map(CI.WorkCity).Field = "City"
Map(CI.WorkState).Field = "State/Province"
Map(CI.WorkZip).Field = "Zip/Postal Code"
Map(CI.WorkCountry).Field = "Country/Region"
Map(CI.WebPage).Field = "Web Page"
Map(CI.Comments).Field = "Notes"
' END OF STRINGS TO UPDATE
' -----------------------------------------------
' This the code to mark fields in
' your local table with the correct
' Outlook and SharePoint field names.
'
' You shouldn't need to change this.
SetupContactProps
Set db = CurrentDb
Set td = db.TableDefs(strTable)

' Set the table level property that tells Access
' this is a Contact table.
SetProp td, "WSSTemplateID", dbInteger, 105
' For each mapped field, set the correct
' contacts property.
For I = 0 To CI.Comments
fm = Map(I)
If Len(fm.Field) > 0 Then
SetProp td.Fields(fm.Field), "WSSFieldID", dbText, fm.prop
End If
Next

End Sub
' This code initializes the contact property
' names that Access uses to map contact info
' to SharePoint or Outlook.
'
' You shouldn't need to change this.
Sub SetupContactProps()

Map(CI.First).prop = "FirstName"
Map(CI.Last).prop = "Title"
Map(CI.Email).prop = "Email"
Map(CI.Company).prop = "Company"
Map(CI.JobTitle).prop = "JobTitle"
Map(CI.WorkPhone).prop = "WorkPhone"
Map(CI.HomePhone).prop = "HomePhone"
Map(CI.CellPhone).prop = "CellPhone"
Map(CI.WorkFax).prop = "WorkFax"
Map(CI.WorkAddress).prop = "WorkAddress"
Map(CI.WorkCity).prop = "WorkCity"
Map(CI.WorkState).prop = "WorkState"
Map(CI.WorkZip).prop = "WorkZip"
Map(CI.WorkCountry).prop = "WorkCountry"
Map(CI.WebPage).prop = "WebPage"
Map(CI.Comments).prop = "Comments"

End Sub

' This is a helper routine which sets a property
' value first checking to see whether one already
' exists.
Sub SetProp(o As Object, strProp As String, dbType As DataTypeEnum, oValue As Variant)
Dim p As dao.Property
On Error GoTo NotFound
Set p = o.Properties(strProp)
GoTo Found
NotFound:

Set p = CurrentDb.CreateProperty(strProp, dbType, oValue)
o.Properties.Append p
Found:
If p.Type = dbType Then
p.Value = oValue
Else
o.Properties.Delete (strProp)
Set p = CurrentDb.CreateProperty(strProp, dbType, oValue)
End If

End Sub

'//// End of Script //////
 
Last edited:

Users who are viewing this thread

Back
Top Bottom