Ms access 访问电子表格-替换数据
我正在将查询从Access导出到名为tempIcIn的Excel工作表。当该工作表已存在于文件中时,TransferSpreadsheet将仅创建另一个名称相同的工作表,后跟1Ms access 访问电子表格-替换数据,ms-access,vba,ms-access-2010,Ms Access,Vba,Ms Access 2010,我正在将查询从Access导出到名为tempIcIn的Excel工作表。当该工作表已存在于文件中时,TransferSpreadsheet将仅创建另一个名称相同的工作表,后跟1 DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel12, "tempIcIn", outputPath, True 我想覆盖已创建工作表中的数据 公共函数SendTQ2XLWbSheetstrTQName作为字符串,strSheetName作为字符串,s
DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel12, "tempIcIn", outputPath, True
我想覆盖已创建工作表中的数据
公共函数SendTQ2XLWbSheetstrTQName作为字符串,strSheetName作为字符串,strFilePath作为字符串
'strTQName是要发送到Excel的表或查询的名称
'strSheetName是要将其发送到的工作表的名称
'strFilePath是要将此数据发送到的文件的名称和路径。
将rst设置为DAO.Recordset
作为对象的Dim ApXL
作为对象的Dim xlWBk
作为对象的Dim xlWSh
模糊fld为刀场
将strPath设置为字符串
常量xlCenter长度=-4108
常量xlBottom As Long=-4107
关于错误转到错误处理程序
strPath=strFilePath
设置rst=CurrentDb.OpenRecordsetstrTQName
设置ApXL=CreateObjectExcel.Application
设置xlWBk=ApXL.Workbooks.OpenstrPath
ApXL.Visible=True
设置xlWSh=xlWBk.WorksheetsstrSheetName
xlWsh.Activate
xlWSh.RangeA1.Select
对于rst.字段中的每个fld
ApXL.ActiveCell=fld.Name
ApXL.ActiveCell.Offset0,1.选择
下一个
rst.MoveFirst
xlWSh.RangeA2.CopyFromRecordset rst
xlWSh.范围1:1.选择
'这是为了显示您可以对格式设置所做的一些操作。您可以注释掉或删除
“您不想在自己的导出中使用的任何内容。
使用ApXL.Selection.Font
.Name=Arial
.尺寸=12
.Strikethrough=False
.Superscript=False
.Subscript=False
.OutlineFont=False
.Shadow=False
以
ApXL.Selection.Font.Bold=True
使用ApXL.Selection
.HorizontalAlignment=xlCenter
.垂直对齐=xl底部
.WrapText=False
.方向=0
.AddIndent=False
.1级别=0
.ShrinkToFit=False
.MergeCells=False
以
'选择所有单元格
ApXL.ActiveSheet.Cells.Select
'自动适配是否适用于所有列
ApXL.ActiveSheet.Cells.entireclumn.AutoFit
'选择要取消选择所有单元格的第一个单元格
xlWSh.RangeA1.Select
rst.关闭
设置rst=无
退出\u SendTQ2XLWbSheet:
退出功能
错误处理程序:
DoCmd.SetWarnings True
MsgBox错误描述、VBEQUOTION、错误编号
继续退出\u发送TQ2xLWBSheet
端函数
链接只是应该起作用的代码。如果此代码有帮助,请给出答案,否则告诉我什么不起作用,我会尽力帮助。