Uruchom zapytanie SQL z parametrem z Excel 2007


21

Mam zapytanie w tabeli programu Excel. Wykonałem to, aby to zrobić.

Ale jak mogę dodać parametr z komórki do mojego zapytania?

Szukam sposobu, aby to zrobić:

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

Cell.A2 nie działa. Ale jak mogę dodać coś takiego, aby zawartość komórki była używana w moim zapytaniu?


Czy próbowałeś właśnie nazwać komórkę - a następnie użyć nazwy w zapytaniu zamiast odwołania do komórki?

Odpowiedzi:


17

Nie wiem, dlaczego MS uczyniło to tak skomplikowanym, będziesz musiał użyć Microsoft Query.

Kliknij Dane -> Ze źródeł zewnętrznych -> Z zapytania Microsoft. WYBIERZ Źródło danych. Wybierz SQL Server, wprowadź dane uwierzytelniające i wybierz tabelę

wprowadź opis zdjęcia tutaj

Kliknij Dalej, nie wybieraj żadnych kryteriów filtrowania, wybierz sortuj według kryteriów, kliknij Dalej. Teraz kliknij Wyświetl / Edytuj w MS Query zamiast wybrać Wróć do Excela

wprowadź opis zdjęcia tutaj

Kliknij przycisk Zakończ. Teraz w MS Query, kliknij Kryteria -> Dodaj kryteria, wybierz operator i niech wartość będzie[]

wprowadź opis zdjęcia tutaj

Kliknij Plik -> zwróć dane do Excela. Teraz Excel powinien monitować o parametr, wybierz odpowiednią komórkę

wprowadź opis zdjęcia tutaj

Aby edytować parametry, kliknij Dane -> Właściwości -> Ikona palca -> Definicja -> parametry

wprowadź opis zdjęcia tutaj


Możesz także użyć edytora zapytań SQL i wpisać zapytanie za pomocą sprzężeń i umieścić ?w polu, w którym należy pobrać parametr.

wprowadź opis zdjęcia tutaj


Niestety parametry są wyłączone.
— Vaccano

@Vaccano: Zmieniono moją odpowiedź, proszę spojrzeć
— Sathyajith Bhat

Dzięki za wysiłek na tej satji. Niestety zdałem sobie sprawę, że ponieważ moje zapytanie zawiera pewne sprzężenia, MS Query nie może wyświetlić go graficznie. To sprawia, że ​​nie możesz mieć parametrów. Zamierzam zrobić to jako funkcję VBA. Kiwam głową, ponieważ twoja odpowiedź była tak kompletna.
— Vaccano,

2
@Vaccano: Możesz napisać zapytanie za pomocą edytora SQL i postawić ?przed polem, do którego należy wybrać parametr i.imgur.com/NgXxc.png
— Sathyajith Bhat

2
Zauważyłem, że gdy zapytanie jest w Excelu, możesz przejść do ekranu parametrów zapytania i edytować go tam bez wchodzenia ponownie do MS Query. Po prostu upuść? gdzie spełniają kryteria. Następnie wróć do ekranu właściwości połączenia i przypisz ten parametr do komórki w arkuszu kalkulacyjnym.
— Tracy Probst

1

Na bezwstydną wtyczkę nigdy nie jest za późno ...

Jest taka świetna mała wtyczka do Excela ... (zastrzeżenie: jestem autorem)

Jest to wtyczka programu Excel, która dodaje silnik bazy danych i SQL IDE do programu Excel.

Pozwala wykonywać operacje SQL na wszystkim, co jest oznaczone jako tabela w programie Excel. Można wyszukiwać w różnych skoroszytach, a także korzystać z tabel z zewnętrznej bazy danych (SQL Server / Sqlite / Postgres / Access / MySql) w tym samym zapytaniu.

Ma podświetlanie składni SQL, uzupełnianie instrukcji i kilka innych fajnych rzeczy. Używa SQLite pod maską, ale może również wykorzystywać zewnętrzne silniki db do przetwarzania danych.

Pobieram za to opłatę, ale istnieje bezpłatny okres próbny, z którego można korzystać przez 30 dni. Nazywa się ThingieQuery.

Przepraszamy za wtyczkę, mam nadzieję, że nie jest to zbyt nieodpowiednie.


-1

Podaj wartość jako

where employeecode = '?'

Umożliwi to przycisk parametru, ale po naciśnięciu ok wyświetli się monit.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.