SQLにはEXCEPT演算子があるのですが、Accessでは使用できません。
その代わりに「LEFT JOIN」を使うと2つのテーブルの差を取得できます。
差を取り出す2つのテーブル例
[T_2007年顧客データ]
顧客ID 名前
1 大木
2 石塚
3 南
[T_2008年顧客データ]
顧客ID 名前
2 石塚
4 結城
5 岡村
Dim SQL As String
Dim rs As Recordset
SQL = "SELECT T_2008年顧客データ.名前,T_2008年顧客データ.顧客ID FROM T_2008年顧客データ Left JOIN T_2007年顧客データ ON (T_2008年顧客データ.名前=T_2007年顧客データ.名前) AND (T_2008年顧客データ.顧客ID=T_2007年顧客データ.顧客ID) WHERE (T_2007年顧客データ.名前 IS NULL) AND (T_2007年顧客データ.顧客ID IS NULL)"
Set rs = CurrentDb.OpenRecordset(SQL)
これを実行すると、下記のデータが返ります。
結城 4
岡村 5
T_2008年顧客データのみのデータが表示されました。