เรียกใช้แบบสอบถาม SQL ด้วยพารามิเตอร์จาก Excel 2007


21

ฉันมีแบบสอบถามในตาราง Excel ฉันทำตามนี้เพื่อทำมัน

แต่ฉันจะเพิ่มพารามิเตอร์จากเซลล์ในแบบสอบถามได้อย่างไร

ฉันกำลังมองหาวิธีการทำสิ่งนี้:

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

Cell.A2ไม่ทำงาน แต่ฉันจะเพิ่มบางอย่างเช่นมันได้อย่างไรเพื่อที่เนื้อหาของเซลล์จะถูกใช้ในการสืบค้นของฉัน


คุณลองตั้งชื่อเซลล์แล้วใช้ชื่อในแบบสอบถามแทนการอ้างอิงเซลล์หรือไม่

คำตอบ:


17

Dunno ทำไม MS ถึงทำให้เรื่องนี้ซับซ้อนมากคุณจะต้องใช้ Microsoft Query

คลิกที่ข้อมูล -> จากแหล่งภายนอก -> จาก Microsoft Query เลือกแหล่งข้อมูลขึ้นมา เลือก SQL Server ป้อนรายละเอียดรับรองความถูกต้องและเลือกตาราง

ป้อนคำอธิบายรูปภาพที่นี่

คลิกที่ถัดไปอย่าเลือกเกณฑ์การกรองใด ๆ เลือกเรียงลำดับตามเกณฑ์คลิกที่ถัดไป ตอนนี้คลิกที่ดู / แก้ไขใน MS Query แทนที่จะเลือก Return to Excel

ป้อนคำอธิบายรูปภาพที่นี่

คลิกที่เสร็จสิ้น ตอนนี้ใน MS Query คลิกที่ Criteria -> Add Criteria เลือกโอเปอเรเตอร์แล้วปล่อยให้ค่านั้นเป็น[]

ป้อนคำอธิบายรูปภาพที่นี่

คลิกที่ไฟล์ -> ส่งคืนข้อมูลไปยัง Excel ตอนนี้ Excel ควรพร้อมท์ให้คุณใส่พารามิเตอร์เลือกเซลล์ที่เกี่ยวข้อง

ป้อนคำอธิบายรูปภาพที่นี่

หากต้องการแก้ไขพารามิเตอร์คลิกที่ Data -> Properties -> Icon Finger -> Definition -> พารามิเตอร์

ป้อนคำอธิบายรูปภาพที่นี่


คุณยังสามารถใช้ตัวแก้ไขคิวรี SQL และพิมพ์ในคิวรีที่มีการรวมและใส่?กับฟิลด์ที่จะต้องดึงพารามิเตอร์

ป้อนคำอธิบายรูปภาพที่นี่


อนิจจาพารามิเตอร์ถูกปิดใช้งาน
Vaccano

@Vaccano: ปรับปรุงคำตอบของฉันโปรดดู
Sathyajith Bhat

ขอบคุณสำหรับความพยายามใน Sathya นี้ อนิจจาฉันรู้ว่าเพราะแบบสอบถามของฉันมีการรวมอยู่ในแบบสอบถาม MS ไม่สามารถแสดงกราฟิก นั่นทำให้คุณไม่สามารถมีพารามิเตอร์ได้ ฉันจะทำให้มันเป็นฟังก์ชั่น VBA ฉันให้คุณพยักหน้าเพราะคำตอบของคุณเสร็จสมบูรณ์
Vaccano

2
@Vaccano: คุณสามารถเขียนแบบสอบถามโดยใช้ตัวแก้ไข SQL และใส่?เขตข้อมูลที่ต้องเลือกพารามิเตอร์ i.imgur.com/NgXxc.png
Sathyajith Bhat

2
ฉันพบว่าเมื่อแบบสอบถามอยู่ใน Excel คุณสามารถเข้าไปที่หน้าจอพารามิเตอร์การสืบค้นและแก้ไขได้โดยไม่ต้องไปที่ MS Query อีกครั้ง เพียงแค่ปล่อย เกณฑ์ที่จะไป จากนั้นกลับไปที่หน้าจอคุณสมบัติการเชื่อมต่อและกำหนดพารามิเตอร์นั้นให้กับเซลล์ในสเปรดชีต
Tracy Probst

1

มันไม่สายเกินไปสำหรับปลั๊กที่ไร้ยางอาย ...

มีปลั๊กอินเล็ก ๆ ที่ยอดเยี่ยมสำหรับ Excel ... (ข้อจำกัดความรับผิดชอบ: ฉันเป็นผู้เขียน)

มันเป็นปลั๊กอินของ Excel ที่เพิ่มเอ็นจิ้นฐานข้อมูลและ SQL IDE ไปยัง Excel

มันช่วยให้คุณสามารถดำเนินงาน SQL กับสิ่งใดก็ตามที่ทำเครื่องหมายเป็นตารางภายใน Excel คุณสามารถสืบค้นข้ามสมุดงานและใช้ตารางจากฐานข้อมูลภายนอก (SQL Server / Sqlite / Postgres / Access / MySql) ในแบบสอบถามเดียวกัน

มันมีการเน้นไวยากรณ์ของ SQL, การเติมคำสั่งและสิ่งดีๆอีกมากมาย มันใช้ SQLite ภายใต้ประทุน แต่สามารถใช้เอ็นจิน db ภายนอกเพื่อประมวลผลข้อมูลได้เช่นกัน

ฉันคิดค่าใช้จ่ายเป็นโท แต่มีการทดลองใช้ฟรีซึ่งคุณสามารถใช้ได้เป็นเวลา 30 วัน มันเรียกว่า ThingieQuery

ขออภัยเกี่ยวกับปลั๊กหวังว่ามันจะไม่เหมาะสมเกินไป


-1

ใส่ค่าเป็น

where employeecode = '?'

สิ่งนี้จะเปิดใช้งานปุ่มพารามิเตอร์ของคุณ แต่เมื่อคุณกดตกลงจะเป็นการแจ้งให้คุณทราบ

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.