気が付いたら1月もも終わり・・・
正月に記事上げてから今日まで仕事が忙しくてここは手付かずに・・・^^;
やっと落ち着いて来ました。
作成中のACCESS・EXCEL連携システムは結局、最初から作り直す事にしました。
テーブル構成から見直し、今の所ACCESSのクエリは使用していません。
ADOを使用して全てEXCEL側からVBAで操作しています。
ACCESSはデータ保持にのみ使用している感じ。
そうする事によってACCESS側もEXCEL側もすっきりした感じがしてます。
Collectionを作成しSQLを複数収め、テーブル操作を関数化し、それに引数として渡す事によって更新や削除等で1つ、テーブルからデータを配列に入れて持って来るのに1つ、接続1つ、切断1つの計4つのプロシージャでACCESSとのやり取りしてます。
まだ3分の1程ですが、これからガンガン作り込んで行きますよ♪
(会社でACCESS、未だ入れさせてくれないので自宅でですが ^^;)
下記コードがテーブル操作を関数化したもの。
Function GoExecute(ByVal sqlList As Collection) As Boolean
Dim sList As Variant
DataBaseConnect
On Error GoTo errorHandler
adoCn.BeginTrans
For Each sList In sqlList
adoCn.Execute sList
Next sList
adoCn.CommitTrans
GoExecute = True
DataBaseOut
Exit Function
errorHandler:
adoCn.RollbackTrans
DataBaseOut
GoExecute = False
ErrorDisplay
End Function