How can I, directly from a Word 2010 document, get items from a SharePoint 2010 list? I am interested in a one step approach, not two steps involving Access or Excel for example.

If possible I'd like a "user" solution, not a method that involves developer tools like VSTO.

One objective is to do mail merge: get a list of contacts from SharePoint and generate labels or greeting cards.

[Edit] To clarify, the objective is to automate the mail merge process, not for a one time use. The idea is that once the Word document is configured, it can be given to a user, who will just have to open it and select a template every time a mail merge is needed.

link|improve this question

53% accept rate
What do you mean connect Word 2010 to a list? You mean editing a word document directly from a SharePoint document library? Can you give an example of what you're trying to do? – Kit Menke Jan 19 at 16:57
I have rephrased my question, I hope it is clear now. Thisd is about SharePoint lists, not SharePoint libraries. – Christophe Jan 19 at 17:03
Great thanks for editing! Are you limited to using Word? Seems like you want to display list items using some sort of template.. – Kit Menke Jan 19 at 17:07
This question is specifically about Word. I am fine with other options, but Word looks like the best one especially as printing is involved: stackoverflow.com/questions/8899513/… – Christophe Jan 19 at 17:12
What do you mean "user solution"? You cannot use VSTO, what can you use? – Robert Kaucher Mar 20 at 19:20
show 1 more comment
feedback

3 Answers

Could the users connect the contact list to their Outlook then pull that in the mail merge in Word? The list will then appear in the mail merge wizard when Select from Outlook Contacts is selected.

link|improve this answer
They could, but I am looking for a direct way (cf. my question). In my case the data is not necessarily in a Contacts list. Also, I've seen cases where the Outlook connection breaks the list (if the list has fields other than the default ones). – Christophe Jan 19 at 19:08
In the case of a mail merge, you have to point it to data somewhere so there's always going to be a step in there to tell it where to get the data. – PirateEric Jan 19 at 19:52
Yes, but once it's done, it's a single step/single button. As opposed to using Access or Excel, where you need to refresh the data in a different application. – Christophe Jan 19 at 20:08
I have edited my question to try and clarify the context. – Christophe Jan 19 at 20:14
Looks like this might be something similar to what you want? (3rd party though), sharepoint.linkconcepts.co.uk/default.aspx – PirateEric Jan 19 at 20:45
feedback

In a previous role I did some work to bring SharePoint 2007 list data into Word as a VB macro calling the SharePoint web service. I'd imagine a similar approach would work here. With 2010, you could possibly make it a bit more elegant with REST, but I'd imagine the fundamental principle would work.

link|improve this answer
Well, things have changed in the way you reference Web services. I think the new approach relies on a VSTO package, which for me is not an option. – Christophe Mar 20 at 16:20
You can't make a simple web service call from VB anymore? – webdes03 Mar 20 at 21:02
I'm not sure what you mean by "simple call". AFAIK it's never been simple, you always need to create a reference to the Web services before you start consuming them. – Christophe Mar 20 at 21:15
feedback

InfoPath? It should be able to perform what you're attempting.

link|improve this answer
While this may theoretically be a valid answer to the question, we prefer inclusion of the essential parts of the answer here. See answer for general guidelines. – SPDoctor Mar 21 at 10:40
feedback

Your Answer

 
or
required, but never shown

Not the answer you're looking for? Browse other questions tagged or ask your own question.