• Export dữ liệu ra excel
  • Export dữ liệu ra excel

    Noname > 09-08-10, 01:34 AM

    Không phải mọi thứ Access đều có thể giúp được bạn, đôi khi phải vận dụng linh hoạt với Excel.
    Câu lệnh Export một đối tượng Access ra Excel

    Mã:
    DoCmd.OutputTo Kiểu đối tượng, "tên đối tượng", "MicrosoftExcelBiff8(*.xls)", "", True, "", 0

    Ví dụ bạn đẩy một query tên là DThutheothang ra excel:

    DoCmd.OutputTo acQuery, "DThutheothang", "MicrosoftExcelBiff8(*.xls)", "", True, "", 0

    Hoặc là:
    Mã:
    DoCmd.TransferSpreadsheet acExport, 8, "qryA", "c:\A.xls", False, ""

    Trong trường hợp Export ra excel bị lỗi font Unicode. Bạn có thể tạo 1 macro với Action OutputTo
  • RE: Export dữ liệu ra excel

    ngocham2001 > 08-09-10, 01:41 AM

    Mình có 1 chút thắc mắc, rất mong được giải đáp. Mình có 1 Cơ sở dữ liệu, sử dụng 1 query tổng hợp nhiều trường từ các bảng khác nhau, mình dùng query đó để tạo 1 subform.
    Main form của mình chứa các combobox, textbox để nhập điều kiện (Tìm kiếm theo nhiều đkiện), mình dùng kết nối ADO để tạo kết nối tìm kiếm từ form chính để xem kết quả trên form phụ, sau đó mình dùng câu lệnh:
    DoCmd.OutputTo acOutputForm, "frm_sub_tim_nhieudk", acFormatXLS, "" ', AutoStart:=-1
    xuất dữ liệu từ subform sang excel, nhưng nó lại xuất tất cả dữ liệu chứ không chỉ là những cái mình đã tìm được trong subform sau khi nhấn nút Tìm kiếm
    Mình phải làm sao bây giờ? Các bạn giúp mình với.
    Cám ơn các bạn rất nhiều
  • RE: Export dữ liệu ra excel

    Noname > 08-09-10, 01:53 AM

    Để đơn giản, bạn lập 1 query với các điều kiện lọc (where) tương tự điều kiện lọc cho form phụ và xuất query này ra excel!
    Vì khi bạn xuất form, nó sẽ out tất cả những gì có trên form.
  • RE: Export dữ liệu ra excel

    ngocham2001 > 08-09-10, 02:00 AM

    Cám ơn bạn rất nhiều, nhưng mà không phải lúc nào mình cũng lọc tất cả các điều kiện.
    Có những lúc mình lọc 1 điều kiện, cũng có những khi mình lọc 2,3 điều kiện, như vậy nó không hiện lên bản ghi nào cả, mình phải làm sao bây giờ???
  • RE: Export dữ liệu ra excel

    Noname > 08-09-10, 02:20 AM

    Mã:
    like * & điều kiện & *
  • RE: Export dữ liệu ra excel

    ngocham2001 > 08-09-10, 02:40 AM

    Mình làm được rồi, cám ơn bạn rất nhiều, có vậy mà nghĩ mấy ngày trời không ra. Hic...
    Bạn ở đâu vậy? nếu ở HN, khi nào rảnh mình mời bạn đi cafe nhé? Thanks, thanks, thanks...
  • RE: Export dữ liệu ra excel

    Noname > 08-09-10, 09:18 AM

    (08-09-10, 02:40 AM)ngocham2001 Đã viết: Mình làm được rồi, cám ơn bạn rất nhiều, có vậy mà nghĩ mấy ngày trời không ra. Hic...
    Bạn ở đâu vậy? nếu ở HN, khi nào rảnh mình mời bạn đi cafe nhé? Thanks, thanks, thanks...

    Rất vui vì giúp được chi bạn! Mình hy vọng nơi này sẽ quy tụ được nhiều nhân tài cùng làm việc trên Access để trao đổi kỹ năng cùng nhau!
    Mình ở TP.HCM nên thôi, có gì uống cafe online cho vui! big green
  • RE: Export dữ liệu ra excel

    dung > 02-10-10, 04:36 PM

    chao ban minh dang thiet ke Main-Sub Form va 1 Combox minh muon xuat du lieu o SubForm sang Excel nho ban viet cho minh cau lenh
  • RE: Export dữ liệu ra excel

    Noname > 03-10-10, 06:07 AM

    (02-10-10, 04:36 PM)dung Đã viết: chao ban minh dang thiet ke Main-Sub Form va 1 Combox minh muon xuat du lieu o SubForm sang Excel nho ban viet cho minh cau lenh

    Bạn nên lập topic khác trong box Form để hỏi, nhớ gõ tiếng Việt có dấu và tiêu đề rõ ràng!
  • RE: Export dữ liệu ra excel

    The Wind > 04-10-10, 11:44 AM

    Có một cách để bạn không cần phải sử dụng điều kiện đặt lọc ở query mà vẫn xuất ra được excel với các record bạn tìm được trong formsub bằng bắt cứ thao tác nào ( hộp search, lọc...) với đoạn mã
    Mã:
    FileCopy "D:\NS\Now\Temps4Export\temps.xls", "C:\output.xls" 'Su dung temps.xls nhu 1 mau excel co san
    Me.fr_sub.SetFocus ' fr_sub: name cua form sub
    DoCmd.GoToControl "ID" 'ID: Khoa cua formsub
    DoCmd.RunCommand acCmdSelectAllRecords
    DoCmd.RunCommand acCmdCopy
    'Dim xlapp As Excel.Application ' ap dung cho ecxel 2003
    Set xlapp = CreateObject("Excel.Application")
    With xlapp
    .Workbooks.Open ("C:\output.xls")
    '.Workbooks.Add 'Neukhong su dung may temps xls
    '.Range("a4").Select
    .Range("a4").PasteSpecial Paste:=xlPasteValues
    '_Link:=False, DisplayAsIcon:=False
    .Cells.Select
    '.Cells.EntireColumn.AutoFit
    .Visible = True
    .Range("a5").Select
    End With

    Mình hay dùng phương pháp này hơn vì rất thoải máy trong việc xuất ra xls, có thể sử dụng mẫu temp xls và không bị ràng buộc vào truy vấn query như các của noname!