代码中的Me!optExport是什么意思啊?--100分

时间:2022-05-29 23:17:02
在一个Access 窗口中存在如下代码,其中的Me!optExport是什么意思啊?
我知道Me是对当前窗口的引用,optExport是一个内部对象,但具体是什么含义就搞不懂了?
整段代码是将一个Access数据库中的一个表导出到一个excel文件中。

Private Sub Command86_Click()
    Dim fReturn As Boolean
    Dim strAction As String
    Dim strObject As String
    Dim intType As Integer
    Dim strMsg As String

On Error GoTo HandleErr
    strAction = Choose(Me!optExport, "Excel", "RTF", "Text")
    strObject = "测试字符串"
    fReturn = ImportExportData(strAction, strObject, intType)

ExitHere:
    Exit Sub

HandleErr:
    Select Case Err
        Case Else
            MsgBox Err & ": " & Err.Description, vbCritical, _
            "错误发生在 Form_导入导出.cmdGo_Click"
            Resume ExitHere
    End Select
End Sub

6 个解决方案

#1


Me!optExport 是窗体上的一个控件,名字叫 optExport

#2


关于此主题请参考:
    access 导出到 Excel 提速之法《OA》
    http://access911.net/index.asp?u1=a&u2=74FAB41E1ADC
关于此主题请参考:
    如何用 Docmd.OutputTo 将查询导出为 Excel 97-2003 ...
    http://access911.net/index.asp?u1=a&u2=72FAB11E12DCE8F3

#3


方法太多了,这里还有一个

全部显示

TransferSpreadsheet 方法
参阅应用于示例特性在 Visual Basic 中,TransferSpreadsheet 方法执行 TransferSpreadsheet 操作。

expression.TransferSpreadsheet(TransferType, SpreadsheetType, TableName, FileName, HasFieldNames, Range, UseOA)
expression      必需。返回“应用于”列表中的一个对象的表达式。

TransferType   可选 AcDataTransferType。

AcDataTransferType 可以是下列 AcDataTransferType 常量之一: 
acExport 
acImport 默认 
acLink 
如果将该参数留空,将采用默认常量 (acImport)。
 

SpreadsheetType   可选 AcSpreadSheetType。

AcSpreadSheetType 可以是这些 AcSpreadSheetType 常量之一: 
acSpreadsheetTypeExcel3 
acSpreadsheetTypeExcel4 
acSpreadsheetTypeExcel5 
acSpreadsheetTypeExcel7 
acSpreadsheetTypeExcel8 默认 
acSpreadsheetTypeExcel9 默认 
acSpreadsheetTypeLotusWJ2 - 仅适用于日文版 
acSpreadsheetTypeLotusWK1 
acSpreadsheetTypeLotusWK3 
acSpreadsheetTypeLotusWK4 
注释  可以链接 Lotus 1-2-3 电子表文件中的数据,但是这些数据在 Microsoft Access 中是只读的。可以导入和链接 Lotus .WK4 文件,但是不能将 Microsoft Access 数据导出到此电子表格式中。而且,Microsoft Access 不再支持使用此方法导入、导出或链接 Lotus .WKS 或 Microsoft Excel 2.0 电子表中的数据。

如果将该参数留空,将采用默认常量 (acSpreadsheetTypeExcel8)。
 

TableName     可选 Variant 型。字符串表达式,表示要向其中导入电子表格数据、从中导出电子表格数据或链接电子表格数据的 Microsoft Access 表的名称,或要将其结果导出到电子表格的 Microsoft Access 选择查询的名称。

FileName     可选 Variant 型。字符串表达式,表示要从其中导入、导出到或链接到的电子表格的名称与路径。

HasFieldNames     可选 Variant 型。使用 True (-1) 可以在导入或链接时,将电子表格中的第一行用作字段名。使用 False (0) 可以将数据表第一行看成普通数据。如果将该参数留空,则采用默认值 (False)。在将 Microsoft Access 表或选择查询数据导出到电子表格中时,无论为该参数输入了何值,字段名称都将插入到电子表格的第一行中。

Range     可选 Variant 型。字符串表达式,表示电子表格中单元格的有效范围或范围名称。该参数仅可用于导入。若要导入整个电子表格,请将该参数留空。导出到电子表格时,必须将该参数留空。如果输入了一个范围,导出将失败。

UseOA     可选 Variant 型。

说明
有关该操作及其参数如何使用的详细信息,请参阅该操作的主题。

语法中的可选参数允许留空,但是必须包含参数的逗号。如果将位于末端的参数留空,则在指定的最后一个参数后面不需使用逗号。


注释  还可以通过使用 Recordset 对象的 ActiveConnection 属性,来使用 ActiveX 数据对象 (ADO) 创建链接。


示例
下面的示例在 Lotus 电子表格 Newemps.wk3 的指定范围内将表导入到 Microsoft Access 的“Employees”表,并用电子表格中的第一行作为字段名。

DoCmd.TransferSpreadsheet acImport, 3, _
    "Employees","C:\Lotus\Newemps.wk3", True, "A1:G12"

#4


谢谢,牛人啊!明天试试,成功了就结帐!

#5


Me!optExport是当前窗体的一个控件,其名字是optExport,
可以用宏进行转换,另存为模块即可看到代码。

#6


我知道optExport是当前窗体的一个控件,而且我还知道这个控件是系统内置的控件,不是人为添加到窗口上的(通过在代码窗口查看定义可以得知),但是我不知道这个控件具体是指窗口上哪个控件!
我用鼠标找完了可见的控件,都不是它!

另外,To:changechange(http://access911.net 是我的个人网站,欢迎光临)
Excel的导出方法好使,谢谢了!
稍候结帐给分!

#1


Me!optExport 是窗体上的一个控件,名字叫 optExport

#2


关于此主题请参考:
    access 导出到 Excel 提速之法《OA》
    http://access911.net/index.asp?u1=a&u2=74FAB41E1ADC
关于此主题请参考:
    如何用 Docmd.OutputTo 将查询导出为 Excel 97-2003 ...
    http://access911.net/index.asp?u1=a&u2=72FAB11E12DCE8F3

#3


方法太多了,这里还有一个

全部显示

TransferSpreadsheet 方法
参阅应用于示例特性在 Visual Basic 中,TransferSpreadsheet 方法执行 TransferSpreadsheet 操作。

expression.TransferSpreadsheet(TransferType, SpreadsheetType, TableName, FileName, HasFieldNames, Range, UseOA)
expression      必需。返回“应用于”列表中的一个对象的表达式。

TransferType   可选 AcDataTransferType。

AcDataTransferType 可以是下列 AcDataTransferType 常量之一: 
acExport 
acImport 默认 
acLink 
如果将该参数留空,将采用默认常量 (acImport)。
 

SpreadsheetType   可选 AcSpreadSheetType。

AcSpreadSheetType 可以是这些 AcSpreadSheetType 常量之一: 
acSpreadsheetTypeExcel3 
acSpreadsheetTypeExcel4 
acSpreadsheetTypeExcel5 
acSpreadsheetTypeExcel7 
acSpreadsheetTypeExcel8 默认 
acSpreadsheetTypeExcel9 默认 
acSpreadsheetTypeLotusWJ2 - 仅适用于日文版 
acSpreadsheetTypeLotusWK1 
acSpreadsheetTypeLotusWK3 
acSpreadsheetTypeLotusWK4 
注释  可以链接 Lotus 1-2-3 电子表文件中的数据,但是这些数据在 Microsoft Access 中是只读的。可以导入和链接 Lotus .WK4 文件,但是不能将 Microsoft Access 数据导出到此电子表格式中。而且,Microsoft Access 不再支持使用此方法导入、导出或链接 Lotus .WKS 或 Microsoft Excel 2.0 电子表中的数据。

如果将该参数留空,将采用默认常量 (acSpreadsheetTypeExcel8)。
 

TableName     可选 Variant 型。字符串表达式,表示要向其中导入电子表格数据、从中导出电子表格数据或链接电子表格数据的 Microsoft Access 表的名称,或要将其结果导出到电子表格的 Microsoft Access 选择查询的名称。

FileName     可选 Variant 型。字符串表达式,表示要从其中导入、导出到或链接到的电子表格的名称与路径。

HasFieldNames     可选 Variant 型。使用 True (-1) 可以在导入或链接时,将电子表格中的第一行用作字段名。使用 False (0) 可以将数据表第一行看成普通数据。如果将该参数留空,则采用默认值 (False)。在将 Microsoft Access 表或选择查询数据导出到电子表格中时,无论为该参数输入了何值,字段名称都将插入到电子表格的第一行中。

Range     可选 Variant 型。字符串表达式,表示电子表格中单元格的有效范围或范围名称。该参数仅可用于导入。若要导入整个电子表格,请将该参数留空。导出到电子表格时,必须将该参数留空。如果输入了一个范围,导出将失败。

UseOA     可选 Variant 型。

说明
有关该操作及其参数如何使用的详细信息,请参阅该操作的主题。

语法中的可选参数允许留空,但是必须包含参数的逗号。如果将位于末端的参数留空,则在指定的最后一个参数后面不需使用逗号。


注释  还可以通过使用 Recordset 对象的 ActiveConnection 属性,来使用 ActiveX 数据对象 (ADO) 创建链接。


示例
下面的示例在 Lotus 电子表格 Newemps.wk3 的指定范围内将表导入到 Microsoft Access 的“Employees”表,并用电子表格中的第一行作为字段名。

DoCmd.TransferSpreadsheet acImport, 3, _
    "Employees","C:\Lotus\Newemps.wk3", True, "A1:G12"

#4


谢谢,牛人啊!明天试试,成功了就结帐!

#5


Me!optExport是当前窗体的一个控件,其名字是optExport,
可以用宏进行转换,另存为模块即可看到代码。

#6


我知道optExport是当前窗体的一个控件,而且我还知道这个控件是系统内置的控件,不是人为添加到窗口上的(通过在代码窗口查看定义可以得知),但是我不知道这个控件具体是指窗口上哪个控件!
我用鼠标找完了可见的控件,都不是它!

另外,To:changechange(http://access911.net 是我的个人网站,欢迎光临)
Excel的导出方法好使,谢谢了!
稍候结帐给分!