問題タブ [ms-access-2016]
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 VBAで「値を入力する必要があります」というエラーメッセージを回避する方法
Access 2016 で「__ フィールドに値を入力する必要があります」というエラー メッセージが表示されないように問題が発生しています。Tasks、Users、および TaskAssignments の 3 つのテーブルと、次のような分割フォームがあります。
各タスクには複数のユーザーを割り当てることができ、各ユーザーは複数のタスクに割り当てられます。フォームに可能なすべての値を表示し、チェックボックスを使用して、クリックしてそのタスクにユーザーを追加できるようにします。TaskAssignments テーブルには、主キーと、TaskID と UserID の両方に対する一意の制約があります。
私のフォームのレコードソースはクエリです:
TaskAssignments にレコードが存在するかどうかを確認し、TaskAssignments に更新または挿入するオンクリック イベントがあります。debug.print してクエリを手動で実行すると、どちらも期待どおりの動作をします。TaskAssignments テーブルにレコードを手動で挿入すると、フォームが期待どおりに動作します。しかし、新しいレコードを挿入する必要がある場合、TaskAssignments に TaskID を入力する必要があるというメッセージが表示されます。
フォームの再クエリを試みましたが、それでもエラー メッセージが表示されます。挿入したばかりのレコードが見つからないのはなぜですか?
助けてください?!?ここで私のアプローチを大幅に再考する必要がありますか?
VBA は次のとおりです。
編集- 生成されたクエリは次のとおりです。
入れる
アップデート
そして、私の TaskAssignments テーブルに対する制約。TaskID と UserID の両方が、テーブルの設計で必要に応じて設定されます (これが私の全体的な目標でした。ユーザーが実際にタスクに割り当てられるまで、TaskAssignments にレコードを追加しないようにしたいと考えていました)。
ms-access - Microsoft Office 2016 で開くものすべてにプロジェクト参照をグローバルに追加することはできますか?
古い専用の Microsoft Access アプリケーション ( .mdb
) があり、Microsoft Office 2016 の Windows 10 で実行する必要があります。
そのためのフロントエンド ( .mde
) にはいくつかの古いコントロールが必要であり、ライブラリ ( link1、link2.ocx
)を必要とするものに絞り込みましたが、何かを追加するために使用することはできません。Tools->References
データベースの管理者パスワードは、私が持っているものではありません。したがって、ocx コントロールを MS Access にグローバルに追加して、すべての製品に追加する方法があるかどうか疑問に思っていました。
開こうとすると、次のエラーが表示されます。
イベント プロパティの設定として入力した式 On Open により、次のエラーが発生しました: フォームを開く操作がキャンセルされました。
※式がマクロ名、ユーザー定義関数名、[イベントプロシージャ]にならない場合があります。*関数、イベント、またはマクロの評価でエラーが発生した可能性があります。
このエラーは、イベントのロジックの場所を評価できないためにイベントの実行に失敗した場合に発生します。たとえば、フォームの OnOpen プロパティが に設定されている
=[Field]
場合、このエラーは、イベントの発生時にマクロまたはイベント名が実行されることが予想されるために発生します。
ms-access - Access for Runtime で組み込みの CommandBarPopup を再作成する方法
現在、Access 2013/2016 でアプリケーションを開発しています。このソフトウェアは、Access RUNTIME エンジンのみを搭載したクライアント マシンで実行できる必要があります。ランタイム モードでは、すべてのリボン/コンテキスト メニューが非アクティブになっていることに気付きました。
現在、必要なコンテキスト メニューを自分で作成しようとしています。この記事は大いに役立ちましたが、CommandBarPopups に問題があります。
フォームの表のセル/入力フィールドに表示されるのと同じコンテキスト メニューを作成しようとしています。その中には、クリックされたセルの基になるデータ型を考慮する非常に優れたフィルター ボタン/ポップアップがあります。日付タイプの場合は「日付フィルター」、テキスト タイプの場合は「テキスト フィルター」などが表示されます...
このメニュー項目 (31581) の内部コントロール ID を見つけましたが、関連する CommandBarPop のすべてのサブメニュー項目が表示されません。次に、このサブアイテムを手動で含めようとしましたが、すべてのサブアイテムが常に表示されます。標準のコンテキスト メニューは、関連のないすべてのサブ項目を非表示にするのに十分な機能を備えています (たとえば、テキスト タイプの場合、すべての日付メニュー (来月など) など...)。
これは今までの私のコードです。コメント行は私の問題です。
すべてのサブアイテムがコントロール ID 31581 で自動的に表示されるようにするには、どうすればよいですか?
よろしく、ダニエル
vba - MS-Access: リンクされた CSV ファイルのクエリが遅い
私の Access 2016 db にはいくつかの CSV ファイルへのリンクがあり、そのうちのいくつかは非常に大きい (>120MB) ものです。これらの CSV ファイルに対して複雑なクエリを実行すると、速度が遅すぎて実用的ではありません。これらのリンクされた CSV ファイルのローカル テーブルを作成できません。これは、クエリを実行するたびに、これらの CSV ファイルが外部サーバーによって更新されたデータで更新されるためです。
物事を大幅にスピードアップするにはどうすればよいですか?