質問: accessワークシートの変換における条件の付け方 よろしくお願いします。 ■前提条件 os:xp access version: 不明(2003以降だと) 技術力:accessの初歩段階です。提供されているマクロを いじっている程度。プログラミングをaccessに書いたことなし。 ■サマリー access-マクロ-ワークシートの変換(エクスポート)でクエリにあるデータの有無を判定し、データがあるクエリのみexcelに出力したいです。 ■詳細 accessで複数のクエリ(1~10クエリ)があるとします。 そのクエリには、各クエリが参照している大元データによって、 データあるクエリ、ないクエリがあります。 たとえば、クエリの1~5までデータがあり、残りはデータがない とし、データがある1~5まで同一ファイルのexcel出力したいと します。1ファイルの中に5シート(クエリ1~5)ある状態です。 accessのマクロ-ワークシートの変換で、指定したクエリは同一ファイルに複数シートとして出力できることまではできています。 ※この場合、ワークシートの変換には、すべてのクエリを指定し、 すべて出力することにしています。 ただ、データがないシートを出力したくないのですが、どのように データある、なしを判断し、出力すれば良いのでしょうか? 補足 もしくは、一旦データの有無は関係なく、全てのデータは出力し、 excelのマクロにて制限するなどが考えれますが・・・
回答: クエリにデータがあるかどうかを調べる関数 function データ有無(byval クエリ名 as string) as boolean dim s as string dim r as dao.recordset s = currentdb.querydefs(クエリ名).sql set r = currentdb.openrecordset(s) データ有無 = not r.eof r.close end function ワークシートに変換する docmd.transferspreadsheet acexport, , クエリ名, excelファイル名 出力先(excelファイル名)は同じものにしておきます。