-
Xuất từ Access ra excel mà không cần phải có file định sẵn
trungminh > 17-09-16, 07:55 PM
Mọi người giúp hộ xem có cách nào xuất từ Access ra excel mà không cần có file định sẵn bằng lệnh không
Ví dụ: có table access là "hochanh" mình muốn xuất ra excel có tên là HOCHANH_date()
Như Ongke0711 làm cho mình về report
Private Sub In_Click()
Dim myPath As String
Dim strReportName As String
DoCmd.OpenReport "Baocaonam", acViewPreview
myPath = "C:\Documents and Settings\"
strReportName = "Baocaonam_" & Format(Date(),"ddmmyyyy") & ".pdf"
DoCmd.OutputTo acOutputReport, "", acFormatPDF, myPath & strReportName, True
DoCmd.Close acReport, "Baocaonam"
End Sub -
RE: Xuất từ Access ra excel mà không cần phải có file định sẵn
maidinhdan > 17-09-16, 08:45 PM
(17-09-16, 07:55 PM)trungminh Đã viết: Mọi người giúp hộ xem có cách nào xuất từ Access ra excel mà không cần có file định sẵn bằng lệnh không
Ví dụ: có table access là "hochanh" mình muốn xuất ra excel có tên là HOCHANH_date()
Có nhiều cách:
Từ cửa sổ Database, chọn table hoặc query. Vào menu Tools - Office Links - chọn Analyze It With MS Excel.
Từ Code VBA: dùng docmd.TransferSpreadsheet acExport,acSpreadsheetTypeExcel9,"tablename","Excelfilename",True/False
Trong đó nếu True thì khi export ra, nó cho dòng đầu là tên của các field.
Rồi lưu lại bằng tên nào bạn muốn Ctrl+S
Thân mến! -
RE: Xuất từ Access ra excel mà không cần phải có file định sẵn
trungminh > 17-09-16, 10:00 PM
(17-09-16, 08:45 PM)maidinhdan Đã viết:
(17-09-16, 07:55 PM)trungminh Đã viết: Mọi người giúp hộ xem có cách nào xuất từ Access ra excel mà không cần có file định sẵn bằng lệnh không
Ví dụ: có table access là "hochanh" mình muốn xuất ra excel có tên là HOCHANH_date()
Có nhiều cách:
Từ cửa sổ Database, chọn table hoặc query. Vào menu Tools - Office Links - chọn Analyze It With MS Excel.
Từ Code VBA: dùng docmd.TransferSpreadsheet acExport,acSpreadsheetTypeExcel9,"tablename","Excelfilename",True/False
Trong đó nếu True thì khi export ra, nó cho dòng đầu là tên của các field.
Rồi lưu lại bằng tên nào bạn muốn Ctrl+S
Thân mến!
Private Sub XUAT_Click()
Dim db As DAO.Database, rs As DAO.Recordset, mySQL As String
Dim oApp As New Excel.Application, oBook As Excel.Workbook, oSheet As Excel.Worksheet
Set oBook = oApp.Workbooks.Open(CurrentProject.Path & "\TUVONG.xlt")
mySQL = "select * from TUVONG"
Set oSheet = oBook.Sheets("TUVONG")
Set db = CurrentDb
Set rs = db.OpenRecordset(mySQL, dbOpenSnapshot)
oSheet.Range("A2").CopyFromRecordset rs
With oBook.Sheets("TUVONG")
With .Range("A2:A" & .Range("B65000").End(xlUp).Row)
.FormulaR1C1 = "=ROW()-1"
.Value = .Value
'Dinh dang File Ex
n = .Range("A65000").End(xlUp).Row
.Range("A" & k + 1 & ":B" & n).HorizontalAlignment = xlCenter
With .Range("A" & k + 1 & ":L" & n)
.Borders(xlEdgeLeft).LineStyle = xlContinuous
.Borders(xlEdgeRight).LineStyle = xlContinuous
.Borders(xlEdgeTop).LineStyle = xlContinuous
.Borders(xlEdgeBottom).LineStyle = xlContinuous
.Borders(xlInsideVertical).LineStyle = xlContinuous
If n > k + 1 Then .Borders(xlInsideHorizontal).LineStyle = xlDot
End With
End With
End With
rs.Close
oApp.Visible = True
oApp.UserControl = True
db.Close
End Sub
Đoạn code này đã chạy tốt nhưng phải có file mặc định
Bạn có thể sửa đoạn code này để khi xuất nó tự đông ghi thành file luôn và mở ra không phải ghi lại nữa
cảm ơn nhiều -
RE: Xuất từ Access ra excel mà không cần phải có file định sẵn
maidinhdan > 18-09-16, 02:33 AM
(17-09-16, 10:00 PM)trungminh Đã viết: .................
Đoạn code này đã chạy tốt nhưng phải có file mặc định
Bạn có thể sửa đoạn code này để khi xuất nó tự đông ghi thành file luôn và mở ra không phải ghi lại nữa
cảm ơn nhiều
Chưa hiểu ý bạn nói: "nó tự đông ghi thành file luôn và mở ra "
Lý do: Ở đoạn code thứ 2 tôi hướng dẫn bạn đã đáp ứng đều bạn muốn:
Từ Code VBA dùng:
Mã PHP:Docmd.TransferSpreadsheet acExport,acSpreadsheetTypeExcel9,"tablename","Excelfilename",True/False
Trong đó:
+ tablename: là tên table cần xuất
+ Excelfilename: là tên file Excel bạn muốn đặt
Bạn làm việc gì cũng nên hỏi một cách chi tiết và tốt nhất là minh họa kết quả của bạn muốn.
Vui lòng lên trên xem lại.