Excel2007用アドインを使って
Excel2010からSharePoint2007へ双方向同期のテーブル(リスト)を発行する

■.概要: Excel2010とMOSS(SharePoint)2007間でデータを共有し、双方向同期(相互にデータ更新)できますので、この場をかりて紹介させていただきます。(図はExcel2010)

Microsoftのサイトには 「この双方向同期の機能はMicrosoft Excel 2003 に用意されていた機能で、(Excel2007以降では廃止された機能ではありますが)、Excel 2003 ブックまたは Visual Basic for Applications (VBA) を利用する事で引き続き使用できます。」と記されております。  また「Microsoft Office Groove 2007」や、後継の「Microsoft SharePoint Workspace 2010」や、その後継の「Office 2013 に付属する Windows 用 SkyDrive Pro クライアント」を利用する事でオフラインでも作業を継続でき、オンラインに戻った時にファイルとリストに加えられた変更が自動的に同期できる みたいです。

 図の部分のみリンク

 参考:SharePointリストとExcelの双方向リンクを設定する ←ハンドルネーム(わっきー)さんより、元のExcel97-2003形式ファイルを紛失した時にExcelテーブルを新規に再現・生成してくれるツールが提示されています(作者に感謝!)

■.手順
1.Excel2007用アドインの入手・展開:
 米国MSサイト より Excel2007用アドイン(Excel 2007 Add-in: Synchronizing Tables with SharePoint Lists.:自己解凍書庫ファイル) を入手し、自分PCにて実行・解凍してください。
 
 するとハードディスク直下に次の様なファイルが生成されます。

  C:\2007 Office System Developer Resources\Code Semples\XL2007SynchronizeWSSandExcel\SynchronizeWSSandExcel.xlm
  zip

2.Excel2007用アドインをExcel2010のメニューに表示させる為の設定:
 @Excel2010にて、メニュー[ファイル] →A[オプション] →B[アドイン]→C[設定] →D[参照] →EExcel2007用アドイン(SynchronizeWSSandExcel.xlm)を指定して →F[OK] →(有効なオプション)枠内に追加表示されるので それに チェックが付けている事を確認して →G[OK]の順にクリック!
 

3.Excel97-2003形式ファイル(*.xls)の生成:
 Excel2010にてワークシートを作成して、Excel97-2003形式にて保存し、(一旦)Excel2010を終了してから、先ほど保存したExcel97-2003形式の(*.xls)を開くと、(互換モード)で開くハズです。
 

4.テーブルの設定:
 Excel2010のワークシートのセルに何かしらのデータを入力し、それを範囲指定して、メニュー[挿入] →[テーブル] →テーブルの作成(小画面)にて[OK]をクリック! これで指定範囲がテーブルに設定されます。
 

5.テーブル(リスト)の発行:
 @テーブル内の任意のセルをクリック!し、 →Aメニュー[デザイン] →B[Publish and allow Sync]をクリック!し、 →C開いたウィンドウにて「SahrePointサーバーのURL]、及び適切な「名前」を入力し、 →D[Publish]をクリック!
 
 (Export Table to R/W Sharepoint List)画面は、VisualBasic エディタで編集する事で表示の日本語化も可です。
 これで Excel2007、Excel2010からSharePointリストへ双方向同期(相互更新)のテーブル(リスト)が発行されます。
⇒同期をとるには
 @Excel2010テーブルの任意のセルにて(右クリック!)し、 →A[テーブル] →B[SharePoint と同期]の順にクリック!
 
 これで双方向同期ができます。Excel ⇔ SharePoint(MOSS)間でデータ共有
⇒発行先のURLを表示する方法は、Excel2010テーブルの任意のセルにて(右クリック!)し、 →[テーブル] →[SharePoint リストの表示/編集]の順にクリック!(すると下図の様な画面が表示されます)
 
⇒SharePointリストの編集:  下図@[操作] →A[データシートで編集]の順にクリック!
 

 B:すると画面が推移し、MOSSサイト画面のリスト(表)が編集できる様になります。
 
 MOSSサイトの画面にてデータを編集し(そのセル)を抜けると、MOSSサイトへ即反映されます。(ユーザ側は保存操作を意識する必要はありません自動的にMOSSサイトへ反映されます)

以上.
結果として、Excel 2003 のリストか、Excel 2007、Excel 2010 のテーブルから SharePoint(MOSS)リストへ双方向(相互方向)同期のリスト(テーブル)を発行できます。
⇒警告画面(下図)が出ない様にする:
 

 メニュー[開発]([開発]が表示されていない場合は[ファイル]→[オプション]→[リボンのユーザー設定]→[開発]にチェックを付けて→[OK]にて表示されます)→[マクロのセキュリティ]→以下(下図@→A...)
 
⇒リストの削除:
 
⇒参考: http://office.microsoft.com/ja-jp/HA010342994.aspx#BM5b より抜粋↓
(朱記は筆者追記)
以上、初版:2014-2-24(jr6rmq)/更新:2017-3-23  Excel2013でも同テクニックが使えるかと思われる。