気が付いたら1月もも終わり・・・

正月に記事上げてから今日まで仕事が忙しくてここは手付かずに・・・^^;

やっと落ち着いて来ました。

 

作成中のACCESSEXCEL連携システムは結局、最初から作り直す事にしました。

テーブル構成から見直し、今の所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