Запустіть запит SQL з параметром від Excel 2007


21

У мене є запит у таблиці Excel. Я стежив за цим, щоб це зробити.

Але як я можу додати параметр із комірки до запиту?

Я шукаю спосіб це зробити:

select *
from dbo.Customers
where CustomerID = Cell.A2

Cell.A2 не працює. Але як я можу додати щось подібне, щоб вміст комірки використовувався в моєму запиті?


Ви спробували просто назвати комірку - потім використовувати ім'я в запиті замість посилання на клітинку?

Відповіді:


17

Не знаю, чому MS зробила це настільки складним, Вам доведеться використовувати Microsoft Query.

Клацніть на Дані -> Від зовнішніх джерел -> Від Microsoft Query. Виходить джерело даних Chooose. Виберіть SQL Server, введіть деталі Auth та виберіть таблицю

введіть тут опис зображення

Клацніть Далі, не вибирайте жодних критеріїв фільтрації, виберіть сортування за критеріями, натисніть на Далі. Тепер натисніть на Переглянути / Редагувати в MS Query замість вибору Повернутися до Excel

введіть тут опис зображення

Клацніть на Готово. Тепер у MS Query натисніть Критерії -> Додати критерії, виберіть оператора і нехай це буде значення[]

введіть тут опис зображення

Клацніть на Файл -> повернути дані в Excel. Тепер Excel повинен запропонувати вам параметр, вибрати відповідну комірку

введіть тут опис зображення

Щоб відредагувати параметри, натисніть на Дані -> Властивості -> Значок пальця -> Визначення -> Параметри

введіть тут опис зображення


Ви також можете скористатись редактором запитів SQL та ввести запит із приєднаннями та поставити ?проти поле, у якому має бути отриманий параметр.

введіть тут опис зображення


На жаль, параметри вимкнено.
Ваккано

@ Вакано: Оновлено мою відповідь, подивіться, будь ласка,
Sathyajith Bhat

Дякую за зусилля на цій Саті. На жаль, я зрозумів, що оскільки мій запит в ньому є деяким об'єднанням, MS Query не може відображати його графічно. Це робить його таким чином, що ви не можете мати параметри. Я збираюся зробити це функцією VBA. Я даю вам кивок, хоча ваша відповідь була такою повною.
Ваккано

2
@Vaccano: Ви можете написати запит за допомогою редактора SQL і поставити ?проти поля, до якого повинен бути обраний параметр i.imgur.com/NgXxc.png
Sathyajith Bhat

2
Я виявив, що після того, як запит знаходиться в Excel, ви можете перейти на екран параметрів запиту і відредагувати його там, не заходячи знову в MS Query. Просто киньте? куди йдуть критерії. Потім поверніться на екран властивостей підключення та призначте цей параметр комірці електронної таблиці.
Трейсі Пробст

1

Ніколи не пізно для безсоромної пробки ...

Існує цей чудовий маленький плагін для Excel ... (відмова: я автор)

Це плагін Excel, який додає двигун бази даних та SQL IDE в Excel.

Він дозволяє виконувати операції SQL над усім, що позначено як таблиця всередині Excel. Ви можете здійснювати запит у робочих книгах, а також використовувати таблиці із зовнішньої бази даних (SQL Server / Sqlite / Postgres / Access / MySql) в одному запиті.

У ньому є підсвічування синтаксису SQL, завершення оператора та купа інших цікавих матеріалів. Він використовує SQLite під кришкою, але може використовувати зовнішні db-двигуни для обробки даних.

Я плачу за це, але є безкоштовна пробна версія, яку ви можете використовувати протягом 30 днів. Це називається ThingieQuery.

Вибачте за плагін, сподіваємось, це не надто недоречно.


-1

Поставте значення як

where employeecode = '?'

Це дозволить увімкнути кнопку вашого параметра, але коли ви натиснете кнопку OK, вона підкаже.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.