本主题中的部分内容可能不适用于某些语言。
要点 SQL.REQUEST 函数在 Microsoft Office Excel 2007 中不受支持,因为 Excel 2002 加载项开放式数据库连接 (XLODBC.XLA) 是 Excel 2002 唯一支持的。
本文介绍 Microsoft Excel 中 SQL.REQUEST 函数 (函数:函数是预先编写的公式,可以对一个或多个值执行运算,并返回一个或多个值。函数可以简化和缩短工作表中的公式,尤其在用公式执行很长或复杂的计算时。)的公式语法和用法。
与外部数据源连接,从工作表运行查询,然后 SQL.REQUEST 将查询结果以数组的形式返回,而无需进行宏编程。如果没有此函数,则必须安装 Microsoft Excel ODBC 加载项程序 (加载项:为 Microsoft Office 提供自定义命令或自定义功能的补充程序。) (XLODBC.XLA)。您可从 Microsoft Office 网站安装加载项。
SQL.REQUEST(connection_string,[output_ref],[driver_prompt],[query_text],[col_names_logical])
SQL.REQUEST 函数语法具有下列参数 (参数:为操作、事件、方法、属性、函数或过程提供信息的值。):
驱动程序 | Connection_string |
---|---|
dBASE | DSN=NWind;PWD=test |
SQL Server | DSN=MyServer;UID=dbayer; PWD=123;Database=Pubs |
ORACLE | DNS=My Oracle Data Source;DBQ=MYSER VER;UID=JohnS;PWD=Sesame |
Driver_prompt | 说明 |
---|---|
1 | 一直显示驱动程序对话框。 |
2 | 只有在连接字符串和数据源说明所提供的信息不足以完成连接时,才显示驱动程序对话框。所有对话框选项都可用。 |
3 | 只有在连接字符串和数据源说明所提供的信息不足以完成连接时,才显示驱动程序对话框。如果未指明对话框选项是必需的,这些选项变灰,不能使用。 |
4 | 不显示对话框。如果连接不成功,则返回错误值。 |
"SELECT Name FROM Customers WHERE Balance > "&$A$3&"".
Microsoft Excel 将字符串长度限制在 255 个字符内。如果 query_text 超过此长度,请在垂直单元格区域中输入查询并将整个区域作为 query_text。所有单元格的值连接在一起形成完整的 SQL 语句。
假设需要对名为 DBASE4 的 dBASE 数据库进行查询。在单元格中输入下列公式时,将会返回查询结果数组,其中第一行为列名:
SQL.REQUEST("DSN=NWind;DBQ=c:\msquery;FIL=dBASE4", c15, 2,
"Select Custmr_ID, Due_Date from Orders WHERE order_Amt>100", TRUE)