私は本質的にユーザー入力に基づいて値を選択するExcelアプリケーションを作成しています。ユーザはプロジェクト番号を選択し、次に両方ともアクセスデータベースに予め存在するツールタイプのリストから選択することができる。しかし、プロジェクトにそのツールが関連付けられていない場合、そのツールがリストボックスに表示されないようにします。たとえば、ユーザーがプロジェクト番号15を選択したとします。このプロジェクトには、ツールA、C、Dの3つのツールがあります。つまり、ツールBはこのプロジェクトとは何の関係もありません。アクセスデータベースから読み込み、異なるテーブルの2つのフィールドに基づいて配列を設定する
私は、私が見ている2つの異なるデータベーステーブルを持っています。 1つのテーブルはすべてのツール名を持ち、ToolNamesという名前です。もう1つのテーブルには、プロジェクト関連付けをリストするすべてのツールファイルがあります。これはToolFilesです。そのため、データベースには、データ量に応じて変化するツール 'C'のコピーが複数存在することがあります。
ToolFilesテーブルでチェックできるユーザーの入力に基づいて、実際にToolNamesテーブルを照会する必要があります。プロジェクト番号を取得し、ToolFilesデータベースからツールを探して、ツールのレコード名にそのプロジェクト番号を入力してから、ToolNamesデータベースを照会し、ToolFilesデータベースに表示されたToolNamesのみを選択します。 ToolFilesデータベースで複数のツール名を重複させることができます。
これは私がこれまで持って結合文です:
strSQL = "SELECT * " _
& "FROM ToolNames t " _
& "INNER JOIN ToolFiles f " _
& "ON t.ToolName = f.Tool_Name " _
& "WHERE f.Tool_Name = '" & theSelectedProjName & "' "
rs.Open strSQL ' , cn, 3, 3
ToolNamesは私がから値をする表であり、ToolFilesは私が2ツール名のフィールドを比較する表です。
私はこれが複雑な質問であり、説明するのは難しいことを知っています。私が明確にできるものがあれば教えてください。前もって感謝します!
msqueryを使用して接続しているか、データテーブルを照会するにはどうすればいいですか?あなたが試したものの一例が助けになります – datatoo