Entering dates in Contacts and Calendar

Status
Not open for further replies.

Lizzie Bennet

New Member
Outlook version
Outlook 2007
Email Account
POP3
I have made a customized contact form, using various fields (User Fields 1-4 were used up very fast) for data- I'm on Outlook 2007. I can then have a number of customized views. So, for instance, I wanted a field for the date that I first met with the contact. I randomly used, "ACCOUNT" as the field. When I then do a customized view for "aging"-- listing contacts in the order that I first met with them, I just use "ACCOUNT" as the field in the customized view, and of course, then name and other basic fields.

Here is my question: is there any way that I can enter the date for the meeting on the Calendar and it will then ALSO automatically populate in the "ACCOUNT" field? Or vice versa? Or enter it in another place and it will populate in both calendar and contacts?
 

Diane Poremsky

Senior Member
Outlook version
Outlook 2016 32 bit
Email Account
Office 365 Exchange
Do you create appointments from the contact or create the appointment and link it to the contact (either using contact linking or by inviting them)?

If you normally go into contacts and select the contact then choose create new appointment, we can update the contact field fairly easily using a macro... but as long as you are on 2007, you can use Activities. You'll need to either invite the contact or add them to the Contact field for this to work.
To Link an Outlook Item to a Contact

To show the activities, click on the Activities button on the Contact tab. The first screenshot on Outlook 2010 & Contact Activities shows what it looks like.

ETA: I have a macro that i use to update the notes field when i send an invoice - that should work for this too.
 

Diane Poremsky

Senior Member
Outlook version
Outlook 2016 32 bit
Email Account
Office 365 Exchange
i use this to look up a contact and create one if one is not found. it gets the email address from the selected email message and this line looks up the contact:
Set oContact = colItems.Find("[email1address] = '" & strTo & "'")

once you find the contact, you can update any field.


Code:
'-- Create Contact ---
Dim oNS As Outlook.NameSpace
Dim folContacts As Outlook.MAPIFolder
Dim colItems As Outlook.Items

Set oNS = Application.GetNamespace("MAPI")
Set folContacts = oNS.GetDefaultFolder(olFolderContacts)
Set colItems = folContacts.Items
Set oContact = colItems.Find("[email1address] = '" & strTo & "'")

If Not (oContact Is Nothing) Then

oContact.Body = StrSubject & vbCrLf & strNote & vbCrLf & _
         "Client time: " & strTime & "My time: " & strMyTime & _
         vbCrLf & "------------------------------------------------" & vbCrLf & oContact.Body
         oContact.Save
         oContact.Display
Else

Set oContact = Application.CreateItem(olContactItem)

With oContact
.Body = StrSubject & vbCrLf & _
         strNote & vbCrLf & _
         "Client time: " & strTime & "My time: " & strMyTime

.Email1Address = strTo
.Email1DisplayName = strName
.FullName = strName
.Categories = "ScheduleOnce"
.Save
.Display
End With

End If

'---------------------
 

Lizzie Bennet

New Member
Outlook version
Outlook 2007
Email Account
POP3
Thank you. I was also pondering a way to do several other things and if I understand this correctly, this WILL do the several other, also, with some modifications. Thank you! Thank you! I'll advise once I try it a bit more. Right now I'm backing up my data, just in case...

We set up appointments for our contacts by adding it to the calendar, only, and do not create a contact until the time of the appointment, for a variety of rational reasons. Despite how it sounds, we have been doing this with a keyboard and not a chisel and hammer for, gee, at least 2 months now.
 

Diane Poremsky

Senior Member
Outlook version
Outlook 2016 32 bit
Email Account
Office 365 Exchange
remove the code that creates the contact and do something else (exit sub or something to avoid errors)
 
Status
Not open for further replies.
Top