从访问表中复制表并粘贴到空白的 Excel 文件中
Posted
技术标签:
【中文标题】从访问表中复制表并粘贴到空白的 Excel 文件中【英文标题】:Copy table from access table and paste into blank excel file 【发布时间】:2019-11-06 14:18:28 【问题描述】:我正在尝试将结果从访问表传输到不会保存的空白 Excel 文件中。基本上,我在访问表单上有一个按钮,当按下它时,它的动作将只是预览 excel 中访问表中的所有记录。这是用户希望它设置的方式。
现在我的代码可以打开一个空白的 excel 文件,但我在编写代码时遇到了麻烦,该代码将从 access 中复制表格并将其粘贴到 excel 中,例如单元格“A1”
Private Sub Command27_Click()
Dim dbs As DAO.Database
Dim Response As Integer
Dim strSQL As String
Dim Query1 As String
Dim LTotal As String
Dim Excel_App As Excel.Application 'Creates Blank Excel File
Dim strTable As String ' Table in access
strTable = "tbPrintCenter05Que" 'Access table I am trying to copy
Set Excel_App = CreateObject("Excel.Application")
Set dbs = CurrentDb
Excel_App.Visible = True
Excel_App.Workbooks.Add
With Excel_App
.Columns("A:ZZ").ColumnWidth = 25
.Copy ' Getting error on this line
.Range ("A")
.Paste
【问题讨论】:
需要有一个范围对象才能使用复制。您的代码正在尝试复制 Excel_App,这不起作用... @GWD 我对 VBA 真的不熟悉,你能推荐一些可能有用的代码 【参考方案1】:这可能是一种方式
Private Sub Command27_Click()
Dim dbs As dao.Database
Dim Response As Integer
Dim strSQL As String
Dim Query1 As String
Dim LTotal As String
Dim Excel_App As Excel.Application 'Creates Blank Excel File
Dim strTable As String ' Table in access
strTable = "tbPrintCenter05Que" 'Access Query I am trying to copy
Set Excel_App = CreateObject("Excel.Application")
Set dbs = CurrentDb
Dim rs As dao.Recordset
Set rs = dbs.OpenRecordset(strTable)
Excel_App.Visible = True
Dim wkb As Excel.Workbook
Set wkb = Excel_App.Workbooks.Add
Dim rg As Excel.Range
Dim i As Long
' Add the headings
For i = 0 To rs.Fields.Count - 1
wkb.Sheets(1).Cells(1, i + 1).Value = rs.Fields(i).Name
Next i
Set rg = wkb.Sheets(1).Cells(2, 1)
rg.CopyFromRecordset rs
' make pretty
rg.CurrentRegion.EntireColumn.AutoFit
End Sub
【讨论】:
伙计,如果只调整列并且访问表中的标题也没有转移,这很完美 这也是可能的。我更新了代码,它将转移标题。 列已调整是什么意思? 谢谢,我的意思是让所有内容都适合显示在单元格中 我将代码添加到 autofit 列中。这就是你所追求的吗? 绝对!伙计,我试着给你的评论投赞成票,但因为我的代表我也不能。安装足够高,但再次感谢所有帮助和快速响应!以上是关于从访问表中复制表并粘贴到空白的 Excel 文件中的主要内容,如果未能解决你的问题,请参考以下文章
如何从我的 phpmyadmin 表中复制一列并将其粘贴到我的 Excel 工作表中?
将一张excel表中的数据全部粘贴到txt文本文件中,如何做