简单的点击、查询和导出——没那么简单
Simple Click, Query, and Export - not so simple
任何人都可以帮助我设置一个 Access 2007 VBA 查询,让视障人士可以在表单上输入日期 (Pdate) 并导致查询我的 table [Donation_Data] 查找所有 [Pickup Date] = Pdate 的记录,然后自动将记录导出为 EXCEL 文件。
这是我目前所拥有的,但停在
qd.SQL = "SELECT * FROM " & [Donation_Data] & " WHERE [Pickup Date] = Pdate"
Option Compare Database
Option Explicit
Private Sub Command1_Click()
Dim db As DAO.Database
Set db = CurrentDb ' use current database
'On Error GoTo Pickup_OnClick_Err
Dim Pdate As Date
Pdate = InputBox("Please Enter the Desired Pickup Date", "")
'develop a query of all Donation_Data records where Pickup Date in Donation_Data table = Pdate
Dim qd As DAO.QueryDef
Set qd = CurrentDb.CreateQueryDef("DonationDataQuery")
qd.SQL = "SELECT * FROM " & [Donation_Data] & " WHERE [Pickup Date] = Pdate"
DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel9, "DonationDataQuery", "C:\Users\dads\Downloads\Donation Data.xlsx", True
Debug.Print qd.SQL
MsgBox "transfered"
End Sub
根据下面的评论建议,代码现在如下所示。查询开发很漂亮,但是没有数据传输
Dim db As DAO.Database
Set db = CurrentDb ' use current database
'On Error GoTo Pickup_OnClick_Err
Dim Pdate As Date
'Pdate = InputBox("Please Enter the Desired Pickup Date", "")
'develop a query of all Donation_Data records where Pickup Date in Donation_Data table = Pdate
Dim qd As DAO.QueryDef
Set qd = CurrentDb.CreateQueryDef("DonationDataQuery")
qd.SQL = "SELECT * FROM [Donation_Data] WHERE [Donation_Data].[Pickup Date] = Pdate"
DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel12Xml, "DonationDataQuery", "C:\Users\dads\Downloads\Donation Data.xlsm", True
Debug.Print qd.SQL
MsgBox "transfered"
End Sub
试试这个,将有问题的行替换为 (UNTESTED):
qd.SQL = "SELECT * FROM [Donation_Data] WHERE [Donation_Data].[Pickup Date] = Pdate"
任何人都可以帮助我设置一个 Access 2007 VBA 查询,让视障人士可以在表单上输入日期 (Pdate) 并导致查询我的 table [Donation_Data] 查找所有 [Pickup Date] = Pdate 的记录,然后自动将记录导出为 EXCEL 文件。
这是我目前所拥有的,但停在
qd.SQL = "SELECT * FROM " & [Donation_Data] & " WHERE [Pickup Date] = Pdate"
Option Compare Database
Option Explicit
Private Sub Command1_Click()
Dim db As DAO.Database
Set db = CurrentDb ' use current database
'On Error GoTo Pickup_OnClick_Err
Dim Pdate As Date
Pdate = InputBox("Please Enter the Desired Pickup Date", "")
'develop a query of all Donation_Data records where Pickup Date in Donation_Data table = Pdate
Dim qd As DAO.QueryDef
Set qd = CurrentDb.CreateQueryDef("DonationDataQuery")
qd.SQL = "SELECT * FROM " & [Donation_Data] & " WHERE [Pickup Date] = Pdate"
DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel9, "DonationDataQuery", "C:\Users\dads\Downloads\Donation Data.xlsx", True
Debug.Print qd.SQL
MsgBox "transfered"
End Sub
根据下面的评论建议,代码现在如下所示。查询开发很漂亮,但是没有数据传输
Dim db As DAO.Database
Set db = CurrentDb ' use current database
'On Error GoTo Pickup_OnClick_Err
Dim Pdate As Date
'Pdate = InputBox("Please Enter the Desired Pickup Date", "")
'develop a query of all Donation_Data records where Pickup Date in Donation_Data table = Pdate
Dim qd As DAO.QueryDef
Set qd = CurrentDb.CreateQueryDef("DonationDataQuery")
qd.SQL = "SELECT * FROM [Donation_Data] WHERE [Donation_Data].[Pickup Date] = Pdate"
DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel12Xml, "DonationDataQuery", "C:\Users\dads\Downloads\Donation Data.xlsm", True
Debug.Print qd.SQL
MsgBox "transfered"
End Sub
试试这个,将有问题的行替换为 (UNTESTED):
qd.SQL = "SELECT * FROM [Donation_Data] WHERE [Donation_Data].[Pickup Date] = Pdate"