我是第一次在MS Access中使用VBA而无法获得以下权限: 启动Excel文件(不实际打开文件),然后写入Excel文件中的最后一行,然后保存文件(使用与以前相同的路径和名称,基本上替换上一个文件),然后关闭 excel文件。
请协助!到目前为止,我可以写入excel文件,但无法保存和关闭而不关闭整个MS Access应用程序。 如果你能提供一份工作代码样本来完成上述工作,我会根据我的要求定制它。
谢谢! 恭
答案 0 :(得分:2)
首先,为了更新和保存您想要的文件,您必须先打开它 - 所以当您说您不想“实际打开”时,它会有点混乱/矛盾excel文件...我认为你只是不希望excel应用程序显示 - 你会想要这样的东西:
Public Sub demoCode()
Dim excelApp As Excel.Application
Dim targetWB As Workbook
Dim targetRange As Range
'Create new Excel Application
Set excelApp = New Excel.Application
'Keep hidden
excelApp.Visible = False
'Have new Excel App open workbook
Set targetWB = excelApp.Workbooks.Open("C:\Filename.xlsm")
'Set targetRange to 1 row past the first sheet's usedrange
Set targetRange = targetWB.Sheets(1).Range(targetWB.Sheets(1).UsedRange.address)(targetWB.Sheets(1).UsedRange.Rows.Count + 1, 1)
'Paste @ targetRange
'Close and save workbook
targetWB.Close (True)
'Close Excel App
excelApp.Quit
End Sub
希望这有帮助, TheSilkCode