Take the 2-minute tour ×
SharePoint Stack Exchange is a question and answer site for SharePoint enthusiasts. It's 100% free, no registration required.

I have a SharePoint that has list and I need to be able to update this list with new values from an Excel sheet (using VBA).

This can be done from Access not a problem however I need it to be Excel only.

Is what I am asking possible and if some could point me in the direction of a solution.

share|improve this question
add comment

6 Answers 6

up vote 1 down vote accepted

Please check last section of below page:

http://flylib.com/books/en/3.464.1.67/1/

To import list from SharePoint:

Sub ImportListFromSP()

    Dim ws As Worksheet

    Set ws = ThisWorkbook.Worksheets(2)
    Dim src(1) As Variant
    src(0) = "http://SharePointSiteAddress/_vti_bin"
    src(1) = "89F90972-FD90-4B04-BCEB-81840A82DA5E"

    ws.ListObjects.Add xlSrcExternal, src, True, xlYes, ws.Range("A1")

End Sub

To update modifications in SharePoint list:

Sub UpdateSPList()

   Dim ws As Worksheet
   Dim objListObj As ListObject

   Set ws = ActiveWorkbook.Worksheets(2)
   Set objListObj = ws.ListObjects("Table1")

   objListObj.UpdateChanges xlListConflictDialog

End Sub
share|improve this answer
add comment

You can synchronize Excel 2007/2010 and SharePoint 2007/2010 with a download and install of a Microsoft Excel Addin.

Here are some articles that has detailed description on how this is done - Excel to SharePoint and SharePoint to Excel

share|improve this answer
    
This is one the that worked however few minute after finding solution it wasn't needed due to SQL server that no one knew about can be used. –  Sleepy Rhino Apr 23 '12 at 10:53
    
Link Excel to SharePoint now redirects to a generic page. Thanks, Microsoft. That really helps. –  teylyn Jan 10 at 9:32
    
I believe the Excel to SharePoint link originally pointed to what is now this page: msdn.microsoft.com/en-us/library/bb462636%28v=office.11%29.aspx In case that link goes down, perhaps it might be Googlable via "Publishing and Synchronizing Excel 2007 Tables to SharePoint Lists" –  variant Jun 4 at 19:28
    
Thanks @variant. Edited the answer. –  Deepu Nair Jun 5 at 8:33
add comment

It is only possible to create a new list based on an Excel-Sheet, but you cannot update an existing list with Excel.

To save an Excel sheet to a list, click Site Actions->More options->Import Spreadsheet Import Spreadsheet

share|improve this answer
    
I am aware of this option, creating the list is not the problem it is having the ability to update/change it –  Sleepy Rhino Apr 20 '12 at 10:54
add comment

Or you can use Sharepoint list synchronizer that will do that for you in a single click: http://www.softfluent.com/products/sharepoint-list-synchronizer I think there is a free version that you can try out.

share|improve this answer
add comment

You have multiple ways:

  1. Excel Services - direclty on site - requires Enterprise license
  2. Excel PowerPivot (FREE AddOn) supports REST which would enable connection to data and edit data directly see here http://www.microsoft.com/en-us/bi/powerpivot.aspx
  3. Business Connectivity Services - connect to a lot of types of data (SQL Databases, Excel & CSV files, etc.) and provide real-time data access
share|improve this answer
add comment

This has to be done by code if update/add the list items using the excel. I use the custom workflow action to update the list items from excel file, the excel file which store the list info and all items. So first upload the excel file to the document library then run the workflow to update/Add the item in excel to list. The workflow action will read the data from the excel then copy to the list items. You could write Convert class to convert the data to corresponding SharePoint field data. Then make the copy. The happiest thing that it could also run in sandbox solution. :)

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

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