0
액세스 쿼리에서 Excel 통합 문서로 레코드 집합을 내보내는 중입니다. 내보내기가 잘되고, 필자의 구문은 사용자에게 필 요한 파일 이름/위치를 묻는 메시지를 표시합니다. 그러나 파일은 실제로 저장되지 않습니다. 이 기능을 사용하기 위해 프로세스에서 단계가 없거나 코드 변경이 필요합니까?Access VBA에서 Excel 통합 문서 저장
Sub ETE()
Dim ExcelApp As Object, wbOutput As Object, wsOutput As Object, bExcelOpened As Boolean
Dim db As DAO.Database, rs As DAO.Recordset, targetRow As Long
Dim targetPath As String, fd As FileDialog, Title As String, saveInfo As Variant
DoCmd.Hourglass True
Set ExcelApp = GetObject(, "Excel.Application")
If Err.Number <> 0 Then
Err.Clear
On Error GoTo Error_Handler
Set ExcelApp = CreateObject("Excel.Application")
bExcelOpened = False
Else
bExcelOpened = True
End If
On Error GoTo Error_Handler
ExcelApp.ScreenUpdating = False
ExcelApp.Visible = False
Set wbOutput = ExcelApp.Workbooks.Add()
Set wsOutput = wbOutput.Sheets(1)
Set db = CurrentDb
Set rs = db.OpenRecordset("qryTakeDataToExcel", dbOpenSnapshot)
With rs
If .RecordCount <> 0 Then
'Write the data to Excel
End If
End With
Set fd = Application.FileDialog(msoFileDialogSaveAs)
With fd
.AllowMultiSelect = False
.Title = "Select Save Location And File Name"
.InitialFileName = "File_" & Format(Now(), "mmddyyyy") & ".xlsx"
If .Show = True Then
wbOutput.SaveAs FileName:=fd.InitialFileName, FileFormat:=50
wbOutput.Close
End If
End With
End Sub
여전히 파일을 저장하지 않습니다. fd가 이름과 위치를 묻는 메시지를 표시하고 확인을 클릭하면 책 1의 변경 사항을 저장할지 묻는 Excel 메시지가 나타납니다.이 프롬프트에서 저장을 수동으로 클릭하면 통합 문서가 저장됩니다. –
'.close' 메쏘드의 파일 위치,'wbOutput.Close True, .SelectedItems (1)' –
그것은 저장되지만 엑셀의 빈 인스턴스는 열어 둡니다. 통합 문서가 없습니다. 저장 후 Excel을 완전히 닫는 명령은 무엇입니까? –