MS Access

Accessで DoCmd.RunSQL を CurrentDb.Executeにしたら、1秒高速化した

投稿日:

処理が遅いので速くして欲しいとの要望があったので、コードを調査。
DoCmd.RunSQL を CurrentDb.Execute に置き換えると非同期で実行されるとの情報を得たので、試す。
結果、60件の処理で1秒速くなった。
しかし、せいぜいこれくらいしかできなかった。。。

けども、副次的な効果として、処理実行中に「応答なし」となるシーンがほとんどなくなったし、画面右下のステータスバーに「クエリが実行中」がちらちら見え隠れすることがなくなったことは、良かった。
あと、DoCmd.RunSQLを使わなくなったためにDoCmd.SetWarningsが不要になった箇所が出てきたので削除でき、コードの見通しが良くなったことか。

-MS Access

執筆者:

関連記事

no image

AccessのDoCmd.OpenForm acPreviewでデータが表示されない

なぜか、フォームに新規データを入力し、印刷プレビュー(DoCmd.OpenForm “見積請求書F”, acPreview)した際に、それまで入力したデータが消えたようになる。 …

no image

VBAで英字混じりの引数から数字のみを取り出す関数

たとえば、abcABC123456XYGという引数から、123456のみを取り出したい。 VBAの組み込み関数で、適当なのがありそうだけど、無いみたい。 カスタム関数を作るにも、これはという情報がググ …

no image

Excelで使える祝日判定のWebAPIを見つけた

Excelの関数には、曜日を判定できる関数(WEEKDAY)が用意されている。また、表示だけなら書式設定でもできる。しかし祝日となると、関数も何も、用意されていない。 祝日は年により、突然増えたり、「 …

no image

AccessからExcelフォーマットでファイルに出力するサンプルコード

Excelから外部データの接続の際に,ユーザー定義関数を含んだクエリを指定するとエラーになったので、こんなやり方で対処。 Private Sub btnB2_Click() DoCmd.OutputT …

no image

Accessの再クエリーでデータが移動してしまうのを解消

仕事メモ。 メイン・明細フォームのときは、 http://www.sanryu.net/acc/tips/tips323.htm を参考に、 Dim m_offset As Long ‘レ …