vba - 保存具有不同名称的访问报告
问题描述
我正在尝试使用 Access Reports 保存每个员工的声明。但是,我在将Employee Name
字段附加到MyFileName
变量时遇到问题。
我可以将个人员工报告导出为具有以下格式的 PDF:
Statement_[EENo].pdf
但是,我希望它包含以下格式的员工姓名:
Statement_[Employee Name]_[EENo].pdf
Private Sub Command2_Click()
Dim db As DAO.Database
Dim rs As DAO.Recordset
Dim MyFileName As String
Dim mypath As String
Dim temp As String
mypath = "FILE LOCATION"
Set db = CurrentDb()
Set rs = db.OpenRecordset("SELECT distinct [EENo] & [Employee Name] FROM [Query]", dbOpenSnapshot)
rs.MoveFirst
Do While Not rs.EOF
temp = rs("EENo" & "Employee Name")
MyFileName = "Statement" & "_" & [Employee Name] & "_" & Format(rs("EENo"), "000000") & ".PDF"
DoCmd.OpenQuery "1 - Query: Firm Admin_EE"
DoCmd.Close acQuery, "1 - Query: Firm Admin_EE", acSaveYes
DoCmd.OpenReport "REPORT", acViewReport, , "[EENo]=" & temp
DoCmd.OutputTo acOutputReport, "", acFormatPDF, mypath & MyFileName
DoCmd.Close acReport, "REPORT"
DoEvents
rs.MoveNext
Loop
rs.Close
Set rs = Nothing
Set db = Nothing
End Sub
解决方案
这应该有效:
temp = rs("EENo").Value & rs("Employee Name").Value
MyFileName = "Statement_" & rs("Employee Name").Value & "_" & _
Format(rs("EENo").Value, "000000") & ".PDF"
编辑:我并没有真正看过你的 SQL,并且错过了你在查询中组合了两列。我不使用访问,但尝试:
Set rs = db.OpenRecordset("SELECT distinct [EENo] , [Employee Name] FROM [Query]", _
dbOpenSnapshot)
推荐阅读
- r - 匹配行和列,然后减去一个值
- angular - 如何在 Angular 8 中将两个模态绑定为 1 个 ViewModel
- php - 创建可恢复文件将会话上传到谷歌驱动器无法通过 php
- kotlin - Kotlin - 未解决的参考
- ruby - 通用元素的 Cheezy Page-Object Gem 动态定位器?
- mysql - MySQL基于标准的重叠时间段
- python - 防止 pip 缓存包
- powershell - 如何终止不是通过“启动”活动启动的 Chrome 应用程序,而是从另一个应用程序(如 Powershell)启动的?
- javascript - 如何跟踪表单中的焦点元素
- amazon-web-services - 在 AWS 控制台中查看 Kinesis Stream 的所有使用者的方法