Выполнить SQL-запрос с параметром из Excel 2007

140064
Vaccano

У меня есть запрос в таблице Excel. Я следовал за этим, чтобы сделать это.

Но как я могу добавить параметр из ячейки в мой запрос?

Я ищу способ сделать это:

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

Cell.A2 не работает. Но как я могу добавить что-то подобное, чтобы содержимое ячейки использовалось в моем запросе?

18
Вы пытались просто назвать ячейку, а затем использовать имя в запросе вместо ссылки на ячейку? 8 лет назад 0

3 ответа на вопрос

14
Sathya

Не знаю, почему MS сделал это настолько сложным, вам придется использовать Microsoft Query.

Нажмите Данные -> Из внешних источников -> Из запроса Microsoft. Подходит источник данных Choose. Выберите SQL Server, введите данные аутентификации и выберите таблицу

Нажмите «Далее», не выбирайте никаких критериев фильтрации, выберите сортировку по критериям, нажмите «Далее». Теперь нажмите View / Edit в MS Query вместо того, чтобы выбрать Return to Excel

Нажмите на Готово. Теперь в MS Query, нажмите на Criteria -> Add Criteria, выберите оператор, и пусть значение будет[]

Нажмите Файл -> Вернуть данные в Excel. Теперь Excel должен запросить у вас параметр, выбрать соответствующую ячейку

Чтобы изменить параметры, нажмите Данные -> Свойства -> Значок пальца -> Определение -> Параметры


Вы также можете использовать редактор SQL-запросов, ввести запрос с объединениями и поставить ?поле напротив поля, из которого должен быть выбран параметр.

Увы, параметры отключены. Vaccano 13 лет назад 0
@Vaccano: обновил мой ответ, пожалуйста, посмотрите Sathya 13 лет назад 0
Спасибо за усилия по этому Сатья. Увы, я понял, что, поскольку в моем запросе есть несколько объединений, MS Query не может отобразить его графически. Это позволяет вам не иметь параметров. Я собираюсь сделать это как функцию VBA. Я даю вам кивок, потому что ваш ответ был таким полным. Vaccano 13 лет назад 0
@Vaccano: Вы можете написать запрос с помощью редактора SQL и поставить `?` Напротив поля, в котором должен быть выбран параметр http://i.imgur.com/NgXxc.png Sathya 13 лет назад 2
Я обнаружил, что, как только запрос в Excel, вы можете перейти на экран параметров запроса и редактировать его там, не заходя в MS Query снова. Просто брось? куда идут критерии Затем вернитесь на экран свойств подключения и присвойте этот параметр ячейке в электронной таблице. Tracy Probst 13 лет назад 2
@ Трейси, да, это тоже работает! Sathya 13 лет назад 0
Куда идут все изображения? slotishtype 12 лет назад 0
@slotishtype исправлен. Побочный эффект [этого] (http://meta.stackexchange.com/questions/95732/images-manually-uploaded-to-imgur-are-not-displaying/95734#comment-240583) Sathya 12 лет назад 0
0
Antonio Nakic Alfirevic

Никогда не поздно для бесстыдной вилки ...

Есть отличный плагин для Excel ... (отказ от ответственности: я автор)

Это плагин Excel, который добавляет ядро ​​базы данных и SQL IDE в Excel.

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

Он имеет подсветку синтаксиса SQL, завершение операторов и кучу других интересных вещей. Он использует SQLite под капотом, но может также использовать внешние механизмы БД для обработки данных.

Я взимаю плату за это, но есть бесплатная пробная версия, которую вы можете использовать в течение 30 дней. Это называется ThingieQuery.

Извините за штекер, надеюсь, это не слишком неуместно.

-1
Slow Learner

Поместите значение как

where employeecode = '?' 

Это активирует кнопку параметров, но когда вы нажмете «ОК», появится запрос.