PARAMETERS 组 Long, items_lng Short;
SELECT TOP [items_lng] 交易基本数据.物理单号ID, 交易基本数据.组号ID, 交易基本数据.序列号ID, 交易基本数据.人员号ID, 交易基本数据.加盟店编号ID, 交易基本数据.获赠次数, 交易基本数据.推荐人增援物理单号ID, 交易基本数据.是否结算, 交易基本数据.自定义次数
FROM 交易基本数据
WHERE (((交易基本数据.组号ID)=[组]) AND ((交易基本数据.是否结算)=False))
ORDER BY 交易基本数据.序列号ID;
Private Sub Command0_Click()
Dim Sql As String
Dim AQueryDef As QueryDef
Dim Message, Title, Default, MyValue
Title = "请输入Top Number" ' 设置标题。
Default = 20 ' 设置缺省值。
MyValue = InputBox(Message, Title, Default)
CurrentDb.QueryDefs.Refresh
Set AQueryDef = CurrentDb.QueryDefs("查询1")
AQueryDef.Sql = "SELECT TOP " & MyValue & " * FROM 教师"
If (Err) Then
Exit Sub
End If
AQueryDef.Close
CurrentDb.QueryDefs.Refresh
DoCmd.OpenQuery "查询1"
End Sub
这是用 DAO 的方式,需要查询中必需含有“查询1”的查询,如果ADO来编写,可以直接VBA 书写 sql 语句。这样不是不需要在查询中创建“查询1”了吗?这两种方式那个更好呢?