問題タブ [ms-access-2003]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ms-access - Access 2003: データベースを閉じるときにコードを実行する
Access 2003 では、フォームまたはデータベースが開かれているときにコードを実行する方法がありますが、データベースが閉じられている場合はどうでしょうか。
私の動機は、ややバグのあるサードパーティ製の COM ライブラリの使用を避けられないことです。COM 参照を (変数を Nothing に設定して) 解放すると、(正しく) サーバーから切断されます。問題は、プロセスを終了して新しいプロセスを開始しないと再接続できないことです (これは既知のバグです)。この場合、プロセスはAccess IDE全体です:(
理想的には、グローバル変数をクリアするVBAの「リセット」アクションから保護される場所にCOM参照を保存したいと思います(デバッグ中に一般的で、コード編集によって強制されることもあります)。しかし、データベースが閉じられる前にクリーンアップする機会が欲しいです。
ms-access - アクセス: プログラム リセット後も COM 参照を保持しますか?
Access VBA (2003) で COM 参照を整数にキャストし、AddRef/Release を呼び出す方法はありますか? (「関数またはインターフェイスが制限付きとしてマークされているか、関数が Visual Basic でサポートされていないオートメーション タイプを使用しています」というエラーが表示されます)
1 つのプロセスで 2 回インスタンス化されることを処理しないサードパーティの COM オブジェクトを使用しています (これは既知のバグです)。したがって、すべての VB 変数をクリアするプログラム リセットから保護するために、非表示フォームのコントロールのキャプションとして参照を保存することを考えました。
編集: int へのキャストは、文書化されていない ObjPtr を使用して行うことができ、CopyMemory API を使用して再度行うことができ、AddRef/Release を暗黙的に呼び出すことができると思います。しかし、より良い方法はありますか?アドインはプログラム リセットから保護されていますか?
charts - MS Access チャートの可変数のプロット
MS Access で次の問題があります。
毎月のパフォーマンス値を持つ企業のリストがあるとします。Month 列と Performance 列を含むクエリにグラフをフックすることで、1 つの会社のパフォーマンスをグラフで表示できます。
ここで、N 社のグラフを表示したいとします。Month 列と N Performance 列 (会社ごとに 1 つ) を持つクエリを生成する場合、理論的にはこれを行うことができます。このような可変列数でクエリを作成する方法はありますか? 必要に応じて使用できる SQL バックエンドがあり、それをサポートするために必要な VBA コードをまとめても問題ありません。私が見ている唯一の障害は、あまり慣れていない MS Access を使用していることです。
だからここに私の主な質問があります:
- これは可能ですか?
- この問題に取り組むにはどうすればよいですか?私は研究時間を最小限に抑えようとしているので、正しい方向に向けることができれば素晴らしいと思います.
ありがとう!
ms-access - VBA MS アクセス関数
次の関数は、プロシージャ CheckEventDataIntegrity によって呼び出される日付を評価するためのものです。これはイベントに対してのみ行われますが、イベント タイプとともにパーツ番号を追加したいと考えています。イベントと部品番号で日付を評価する必要があることを意味します.どうすればこれを行うことができますか??
次のように、CheckEventDataIntegrity プロシージャによって呼び出されます。
'--------------------------------- '------------------- ---------- ' 手順 : CheckEventDataIntegrity ' 目的 : プロセス ロジックに従っていることを確認します。これは順序付けをチェックします '--------------------- -------- Function CheckEventDataIntegrity(fl1 As Boolean) On Error GoTo CheckEventDataIntegrity_Error
'イベント タイプ #1a If Me!EventTypeSelected = "1a Assign - To Checker Queue" Then If EvaluateDates("1 Receive NEW from Detailer") = False Then ' ラッパーは Checker に割り当てられていません CheckEventDataIntegrity = False Exit Function Else ' CheckEventDataIntegrity = True Exit Do End If End If 'イベント タイプ #2 If Me!EventTypeSelected = "2 ReV - Assignment" Then If EvaluateDates("1 Receive NEW from Detailer") = False Then ' ラッパーはレビュアーに割り当てられていません CheckEventDataIntegrity = False Exit関数 Else 終了 Do 終了 If 終了 If
----
------
-----
fl1 = False Loop '何もテストに失敗しません CheckEventDataIntegrity = True
On Error GoTo 0 Exit Function CheckEventDataIntegrity_Error: MsgBox "Error " & Err.Number & " (" & Err.Description & ") in procedure CheckEventDataIntegrity of VBA Document Form_frmEventLog_Input" End Function
評価された関数で次のように部品番号を追加できます。
しかし、CheckEventDataIntegrity プロシージャでどのように実装できますか??
forms - ああ!サブフォームはどこに行きましたか?
MSAccessADPにGroupというフォームがあります。その上にタブコントロールがあり、各タブにはサブフォームがあります。最初のタブにはサブフォームUsersが含まれており、フォームビューには表示されません。サブフォームユーザーがデザインビューに表示されます。
なぜこれが起こっているのかについての手がかりはありますか?
forms - サブフォームのテキスト ボックスに入力された内容に基づいてサブフォームをフィルター処理する
サブフォームのテキスト ボックスに入力された内容に基づいて、サブフォームに表示されるレコードをフィルター処理しようとしています。サブフォームはユーザーと呼ばれ、グループ フォームにあります。ユーザー サブフォームには、txtFilter というテキスト ボックスがあります。txtFilter に「W」と入力すると、ユーザーの lastName または userName が「W」で始まるレコードのみが表示されます。W...A...LI と入力し続けると、lastName または UserName が「Wal」で始まるユーザーのみが表示されます。
これを行うには、レコードセット プロパティまたはサブフォームの serverFilter のいずれかを使用する必要があるという漠然とした考えがありますが、どうすればよいか本当に迷っています。私を助けてください!
ms-access - フォームにアクセスし、別のテーブルからレコードを検索して、現在のフォームのフィールドに挿入します
請求書を保存するテーブルと、そのテーブルに基づいた請求書のようなフォームがあり、以前の請求書を検索できます。現在、Excelで請求書を作成してから、データを新しいレコードとして請求書テーブルにエクスポートしています。請求書フォームから請求書を作成する方法があるかどうか疑問に思いました。請求書に使用されるすべての製品と価格の表があります。請求書フォームに検索ボタンを配置して、製品テーブルのレコードまたは「製品」を検索し、それを新しい請求書のフィールドに挿入する方法はありますか?製品テーブルに接続して請求書フォームのフィールドに挿入するためのコードをいくつか調べましたが、どのように検索すればよいですか?何か考えやアイデアはありますか?どんな助けでも大歓迎です!!
ms-access - MS Access 2003/2007-VBAで使用されるcsvファイルからのデータインポートのインポート仕様.....フィールド名を検証しますか?
ウィザードで作成したインポートがあります。少なくとも、仕様を保存するのに十分な距離です。ヘッダー、引用テキスト修飾子、およびコンマ区切りのCSVファイルをインポートします。次に、ボタンクリックイベントから発生するいくつかのvbaでインポート仕様を使用します。
これが私が疑問に思っているいくつかのことです:
では、データのフィールドの順序が正しくない場合、インポートは失敗しますか?データにすべてのフィールドが含まれていない場合、インポートは失敗しますか?データに余分なフィールドがある場合、インポートは失敗しますか?
したがって、インポートされるデータに対して実行できる検証はありますか。フィールドが仕様と同じであること、正しい順序になっていること(必要な場合)などを確認します。
これはかなりうまく機能しますが、データ内の何かが正常でない場合は、とにかくインポートされ、すべての時間が失われることがわかります。
また....これは一般的なアクセス設定ではありません...これは主にデータアナリストのチームがファイルをmdbにインポートするためのものです...これにはフロントエンドがありません。
ありがとうジャスティン
ms-access - このAccessのバグは何ですか?現時点では、データベースへの排他的アクセス権はありません
Access 2003 Pro(ビルド11.8321.8324)SP3でテスト済み。
再現する手順:
- 新しいデータベースを作成します。
- 新しいフォームを作成します。
- フォームにボタンを置きます。
- ボタンのClickイベントプロシージャに次のコードを貼り付けます。
Debug.Print Workspaces.Count
Debug.Print CurrentDb.Name
- コードエディタとフォームを閉じて、変更を保存します。
- この手順をスキップしないでください:Accessを閉じます。
- Accessとデータベースを再度開きます。
- フォームを開く
- ボタンをクリックします
- ツールバーボタンをクリックして、フォームをデザインモードに切り替えます。
次のエラーダイアログが表示されます。
現時点では、データベースへの排他的アクセス権はありません。変更を進めると、後で保存できない場合があります。
ここで何が起こっているのか誰か知っていますか?
database - MicrosoftAccessフォームからレポートに単一のレコードを印刷する方法
私はAccessとVBに非常に慣れていないので、特定のレコードを印刷しようとしています。しかし、このコードでエラーが発生します。
私のレポート名はAVREksternで、プライムキーはRapport nrで、ボタンをクリックしてレコードを表示するフォームはAVRです。
私は途中で何かを誤解したと思うので、誰かがここで私を助けてくれることを本当に望んでいますか?