Access VBA

Access VBA

【VB開発】Active Recordパターンとは?DBとオブジェクトを直結する設計概念

はじめによくVB関係を触る機会があります。(Officeのシステムを昔から使用しているシステムの保守や修正依頼で)その際にOBDCを使用し、SQLserverやOracleなどと連携しデータを保管しているのですが、SQLはVB上で書きます。...
Access VBA

【VBA】実行時エラー 3146 [ODBC–呼び出しが失敗しました。]

はじめにVBAでODBCを使用していた場合、このようなエラーが出現することがよくあります。しかし何が原因で失敗しているのかよくわからないため、原因究明に時間がかかることがあります。本記事は原因究明を簡単にするコードを紹介します。本当のエラー...
Access VBA

【保存版】VBAの32bitから64bit対応方法まとめ|Declare文・API・エラー対策まで完全ガイド

近年、Officeのインストールが既定で64bit版になったことで、従来の32bit向けに書かれたVBAコードで次のような問題が頻発しています。**「PtrSafe属性が必要です」**というコンパイルエラー。API関数が呼び出せない、クラッシュする、古いシステムやアドインが64bitで動かない本記事では、32bit VBAから64bit Office環境への移行で必要なすべての対応手順を解説します。
Access VBA

【OO4O to ADO】 Freeze even though SQL is not changed.

✅ IntroductionWhen migrating from OO4O (Oracle Objects for OLE) to ADO (ActiveX Data Objects) in Access VBA, you may enc...
Access VBA

【VBA活用】モジュール・フォーム・レポートを一括エクスポート!変更差分の管理にも便利

Access VBAで開発をしていると、よくこんな悩みを抱えます。GitやWinmargeのように比較がしたい。それだけで今の作業の数倍効率があがるのにと。
Access VBA

【VBA×Oracle】DB接続数に上限はある?ADO経由での接続制限とその回避策を解説!

VBA(ADO)からのDB接続数の上限や原因、各DBの制約と安定運用のための対処法を解説
Access VBA

【VBA + ADO】SQL文は正しいのにエラー「GoToErrに飛ぶ原因」とその確認ポイント解説

Access VBA + ADOでSQL文を実行していると、SQL文や引数は正しいはずなのに、GoTo ErrH: に飛んでしまう現象に遭遇することがあります。本記事では、その原因とチェックポイントを解説
Access VBA

[Definitive Guide] What Is Oracle OO4O (Oracle Objects for OLE)? End of Support and Migration to ADO

■ What Is OO4O (Oracle Objects for OLE)?Oracle Objects for OLE (OO4O) is a COM-based (Component Object Model) API built ...
Access VBA

【OO4O→ADO】SQLは変えてないのにフリーズ

Access VBAでOO4O(Oracle Objects for OLE)からADO(ActiveX Data Objects)へ移行作業をしていると、「SQL文はまったく同じなのに、なぜかフリーズする」という不思議な現象に出くわすことがあります。しかも、原因はSQLでも接続でもなく、たった1行の“設定漏れ”。この記事では、実際に起きたフリーズの原因と、その回避方法について解説します。
Access VBA

【Access VBA】OO4OからADOに移行後、SQLは同じなのにフリーズ?原因はカーソル設定

SQLはそのまま使っているのに、ADOに変えたら処理がフリーズする。Recordset.Open のあとの If rs.EOF Then に進まない、ループや再帰があるわけでもないのに無限待機状態になる。このような場合、ADO特有の初期設定の違いが原因となっているケースがあります。今回は、実際に発生した事例とその解決方法をご紹介します。