?
Solved

How to export Access contact record to vCard?

Posted on 2004-09-24
13
Medium Priority
?
3,496 Views
Last Modified: 2016-11-19
Hello - how would one go about exporting a typical contact record from an Access (XP) table to a vCard?

Thanks

Mark
0
Comment
Question by:mlagrange
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 5
  • 4
  • 3
  • +1
13 Comments
 
LVL 41

Expert Comment

by:shanesuebsahakarn
ID: 12144337
Can you export it as a CSV file (File->Export) and import it into your target application?
0
 

Author Comment

by:mlagrange
ID: 12144737
Well, my impression of the whole vCard thing was that all the recepient had to do was click on the vCard icon, and it would automatically import the contact info into Outlook.

After looking at the contents of a .vcf file, I can imagine that there must be some rules about field names, multiple values for a given field, etc.

Not to mention how to attach it to an e-mail so it would get processed like a vCard...

That's what I'm really looking for

Thanks

Mark
0
 
LVL 41

Expert Comment

by:shanesuebsahakarn
ID: 12144760
Sorry, I'm not really familiar with vcf files. You'd have to write some kind of VBA function to export the record in the format desired, but I don't know of any pre-written code offhand. How familiar are you with VBA coding?
0
Concerto's Cloud Advisory Services

Want to avoid the missteps to gaining all the benefits of the cloud? Learn more about the different assessment options from our Cloud Advisory team.

 

Author Comment

by:mlagrange
ID: 12144868
familiar with VBA coding: yes... oh, yes...
familiar with vcf files: no
0
 
LVL 15

Expert Comment

by:will_scarlet7
ID: 12145041
Here are the official specs for vCards:

http://www.imc.org/pdi/
0
 
LVL 41

Expert Comment

by:shanesuebsahakarn
ID: 12145940
Hmm, it seems that Access 2003 can export directly to a .vcf file, but Access 2002 (XP) can't. Briefly scanning the spec, it seems reasonably straightforwards to create one programmatically but I don't really have time to investigate the full spec document.

In brief though, you'd open a file programmatically, open a recordset with the record you want to export and then write out each field in the format required - placing the header and footer information as required.
0
 
LVL 15

Accepted Solution

by:
will_scarlet7 earned 1000 total points
ID: 12146206
I would reccomend you either create a VCard file from Outllook or just view one that you have and copy the template in your code to determine to properties that you need to export. I took one (it had bare minimum data) and copied it to create the following:

Sub CreateVCard()

    Dim c As ADODB.Connection
    Dim rs As New ADODB.Recordset
    Dim vcInfo As String
   
    'Set the provider name
    Set c = CurrentProject.Connection
    'Open a recordset with a keyset cursor
    rs.Open "Select Top 3 * From [CompiledInfo]", c, adOpenKeyset, adLockPessimistic

    If Not rs.EOF And Not rs.BOF Then
        rs.MoveFirst
        Do Until rs.EOF
            vcInfo = "BEGIN:VCARD" & vbCrLf
            vcInfo = vcInfo & "VERSION:2.1" & vbCrLf
            vcInfo = vcInfo & "N:" & rs!LastName & ";" & rs!Title & rs!FirstName & rs!MiddleName & ";" & rs!FullName & vbCrLf
            vcInfo = vcInfo & "FN:" & rs!FullName & vbCrLf
            vcInfo = vcInfo & "EMAIL;PREF;INTERNET:" & rs!Email1Address & vbCrLf
            vcInfo = vcInfo & "END:VCARD"
            Call PrintVCard(vcInfo, rs!FullName)
            rs.MoveNext
        Loop
    End If

    rs.Close
    Set rs = Nothing
    Set c = Nothing
   
End Sub

Function PrintVCard(vcInfo As String, flName As String)
    Open "C:\Temp\" & flName & ".vcf" For Output As #1    ' Open file for output.
    Print #1, vcInfo
    Close #1
End Function
0
 

Author Comment

by:mlagrange
ID: 12147415
Great, and thank you.

Now, is there a trick to get this attached to a mail message, so that it functions like a vCard for the recipient?

Thanks

Mark
0
 
LVL 15

Expert Comment

by:will_scarlet7
ID: 12147997
The  code above creates a VCard, so all you'd need to do is write the code for creating youremail object then add the attachment sort of like this:

myMailObject.Attachments.add "C:\Temp\ & flName & ".vcf"
0
 
LVL 15

Expert Comment

by:will_scarlet7
ID: 12149579
ThanX for the points! Glad I could help.

God bless!

Sam
0
 

Author Comment

by:mlagrange
ID: 12150352
Hey, Thank You!

I'm glad you could help, too!  :-D

Mark
0
 
LVL 15

Expert Comment

by:will_scarlet7
ID: 12150416
I realised I was a little short on help about creating the e-mail. I appologise for that. I was on my way to bed (it was midnight). If you need help creating an e-mail in code let me know and I can post some more details.
0
 

Expert Comment

by:Charles Pendrigh
ID: 41894245
Don't you just love it when a 'Best Solution' award is given to a post which doesn't answer the question.
0

Featured Post

What does it mean to be "Always On"?

Is your cloud always on? With an Always On cloud you won't have to worry about downtime for maintenance or software application code updates, ensuring that your bottom line isn't affected.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

This article describes two methods for creating a combo box that can be used to add new items to the row source -- one for simple lookup tables, and one for a more complex row source where the new item needs data for several fields.
Did you know that more than 4 billion data records have been recorded as lost or stolen since 2013? It was a staggering number brought to our attention during last week’s ManageEngine webinar, where attendees received a comprehensive look at the ma…
Using Microsoft Access, learn some simple rules for how to construct tables in a relational database. Split up all multi-value fields into single values: Split up fields that belong to other things into separate tables: Make sure that all record…
Have you created a query with information for a calendar? ... and then, abra-cadabra, the calendar is done?! I am going to show you how to make that happen. Visualize your data!  ... really see it To use the code to create a calendar from a q…

649 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question