Excelテーブルにクエリがあります。これそれをするために。
しかし、セルのパラメータをクエリに追加するにはどうすればよいでしょうか?
これを実行する方法を探しています:
select *
from dbo.Customers
where CustomerID = Cell.A2
のセルA2動作しません。しかし、セルの内容をクエリで使用するために、このようなものを追加するにはどうすればよいでしょうか?
答え1
MS がなぜこれをこんなに複雑にしたのか分かりませんが、Microsoft Query を使用する必要があります。
データ -> 外部ソースから -> Microsoft Query からをクリックします。データソースの選択が表示されます。SQL Server を選択し、認証の詳細を入力して、テーブルを選択します。
「次へ」をクリックし、フィルタリング基準を選択せず、「基準による並べ替え」を選択して「次へ」をクリックします。次に、「Excelに戻る」ではなく「MS Queryで表示/編集」をクリックします。
「完了」をクリックします。MSクエリで「条件」->「条件の追加」をクリックし、演算子を選択して値を[]
ファイル -> データをExcelに返すをクリックします。Excelはパラメータの入力を促しますので、関連するセルを選択します。
パラメータを編集するには、データ -> プロパティ -> 指アイコン -> 定義 -> パラメータをクリックします。
SQL クエリ エディターを使用して、結合を含むクエリを入力し、?
パラメータを取得する必要があるフィールドに を配置することもできます。
答え2
恥知らずな宣伝をするのに遅すぎるということはありません...
これがある素晴らしい小さなプラグインExcel 用...(免責事項: 私は著者です)
これは、Excel にデータベース エンジンと SQL IDE を追加する Excel プラグインです。
Excel 内でテーブルとしてマークされているものに対して SQL 操作を実行できます。ブック間でクエリを実行できるほか、同じクエリで外部データベース (SQL Server/Sqlite/Postgres/Access/MySql) のテーブルを使用することもできます。
SQL 構文の強調表示、ステートメントの補完、その他多くの便利な機能があります。内部では SQLite を使用していますが、外部の DB エンジンを使用してデータを処理することもできます。
有料ではありますが、30 日間無料で試用できます。ThingieQuery という名前です。
宣伝になってしまい申し訳ありません。あまり不適切ではないことを願います。
答え3
値として
where employeecode = '?'
これにより、パラメータ ボタンが有効になりますが、[OK] を押すとプロンプトが表示されます。