ms-access - 在文件名中使用用户定义的参数

标签 ms-access vba

我有一个 Access 数据库,可以输出 Excel 格式的报告。

该报告取决于用户选择的日期参数。该参数是通过具有弹出日历的文本框(text100)选择的。

我想在文件名中使用文本框 (text100) 中的日期。

最佳答案

您必须负责询问参数。我喜欢使用可以通过全局函数获取/设置的全局参数 - 这样它们可以在任何地方设置,并且查询也可以 Access 它们。

模块中只需要几个子/函数:

Some Module

Dim vParam1 as variant
Dim vParam1 as variant

Public Sub ParameterSet(byval pParamName as String, byval pParamValue as variant)

Select Case pParamName 
  Case "Param1": vParam1 = pParamValue 
  Case "Param2": vParam2 = pParamValue 
  Case Else
    msgbox pParamName & " parameter not defined"
End Select

End Sub

Public Function ParameterGet(byval pParamName as String) as variant

Select Case pParamName 
  Case "Param1": ParamGet = vParam1 
  Case "Param2": ParamGet = vParam2 
  Case Else
    msgbox pParamName & " parameter not defined"
End Select

End Sub

然后在您的查询中(删除日期参数)

WHERE Field1 = ParameterGet("Param1")

然后在运行导出的代码中

Private Sub Export_Click()

  dim vParam1 as variant

  vParam1 = inputbox("Enter the parameter:")

  ParameterSet "param1", vParam1

  Transferspreadsheet blah, blah, FileName:= vParam1 & ".xls"

End Sub

显然这段代码需要一些调整才能编译...:-)

关于ms-access - 在文件名中使用用户定义的参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/356980/

相关文章:

vba - 如果一个单元格等于另一个单元格,则复制并粘贴另一个单元格

vba - 在用户桌面上创建当前文件夹的快捷方式

sql - sql函数调用中的VBA错误转义错误陷阱

mysql - 将 Mysql 数据库导出到 Access?

sql - SQL 语句中的全局变量

如果在三个不同范围内有交集,则调用 Sub 过程时 Excel VBA 错误 "subscript out of range"

c++ - 无法将 ByRef VARIANT 数组转换为 SAFEARRAY

ms-access - 删除 Access 中数字后面的空格

sql - 将 Microsoft Access 连接到 Delphi 7 时尝试执行 SQL 查询时提示用户名和密码

regex - VBScript Regex 奇怪的输出