Bạn hiện đang ngoại tuyến, hãy chờ internet để kết nối lại

ExcelADO chứng tỏ làm thế nào để sử dụng ADO để đọc và ghi dữ liệu trong Excel Workbook

QUAN TRỌNG: Bài viết này được dịch bằng phần mềm dịch máy của Microsoft chứ không phải do con người dịch. Microsoft cung cấp các bài viết do con người dịch và cả các bài viết do máy dịch để bạn có thể truy cập vào tất cả các bài viết trong Cơ sở Kiến thức của chúng tôi bằng ngôn ngữ của bạn. Tuy nhiên, bài viết do máy dịch không phải lúc nào cũng hoàn hảo. Loại bài viết này có thể chứa các sai sót về từ vựng, cú pháp hoặc ngữ pháp, giống như một người nước ngoài có thể mắc sai sót khi nói ngôn ngữ của bạn. Microsoft không chịu trách nhiệm về bất kỳ sự thiếu chính xác, sai sót hoặc thiệt hại nào do việc dịch sai nội dung hoặc do hoạt động sử dụng của khách hàng gây ra. Microsoft cũng thường xuyên cập nhật phần mềm dịch máy này.

Nhấp chuột vào đây để xem bản tiếng Anh của bài viết này:278973
TÓM TẮT
ExcelADO.exe mẫu minh hoạ làm thế nào bạn có thể sử dụng ActiveX Data Objects (ADO) với các Microsoft Jet OLE DB 4,0 Provider để đọc và ghi dữ liệu trong Microsoft Excel Workbook.
THÔNG TIN THÊM
Các tập tin sau đây có sẵn để tải về từ Microsoft Download Center:
Ngày phát hành: 12 tháng mười hai năm 2000

Để có thêm thông tin về làm thế nào để tải các tập tin hỗ trợ của Microsoft, bấm số bài viết sau để xem bài viết trong cơ sở kiến thức Microsoft:
119591 Làm thế nào để có được Microsoft hỗ trợ tập tin từ các dịch vụ trực tuyến
Microsoft đã quét vi-rút cho tệp này. Microsoft đã sử dụng phần mềm dò tìm vi-rút mới nhất hiện có vào ngày tệp được đăng. Các tập tin được lưu trữ trên tăng cường bảo mật máy chủ có thể giúp phòng ngừa bất kỳ thay đổi không được phép để các tập tin.

Tại sao sử dụng ADO?

Sử dụng ADO để chuyển dữ liệu đến hoặc lấy dữ liệu từ một bảng tính Excel cung cấp cho bạn, các nhà phát triển, một số lợi thế trong tự động hóa để Excel:
  • Hiệu suất. Microsoft Excel là một máy chủ ActiveX ra của quá trình. ADO chạy trong quá trình, và tiết kiệm chi phí của các cuộc gọi ra quá trình tốn kém.
  • Khả năng mở rộng. Đối với các ứng dụng Web, nó không luôn luôn mong muốn để tự động hoá Microsoft Excel. ADO giới thiệu bạn với một giải pháp hơn scaleable xử lý dữ liệu trong một bảng tính.
ADO có thể được sử dụng nghiêm chỉnh để chuyển dữ liệu thô cho một bảng tính. Bạn không thể sử dụng ADO để áp dụng các định dạng hoặc công thức cho các tế bào. Tuy nhiên, bạn có thể chuyển dữ liệu vào một bảng tính pre-formatted và các định dạng được duy trì. Nếu bạn yêu cầu "có điều kiện" định dạng, sau khi dữ liệu được đưa vào, bạn có thể thực hiện việc định dạng này với tự động hóa hoặc với một vĩ mô trong bảng tính.

Máy bay phản lực OLE DB nhà cung cấp chi tiết cụ thể cho Excel Workbook

Cơ sở dữ liệu Microsoft phản lực có thể được sử dụng để truy cập dữ liệu ở định dạng tệp cơ sở dữ liệu khác, chẳng hạn như Excel Workbook, thông qua các cài đặt trình điều khiển lập chỉ mục Sequential Access Method (ISAM). Để mở bên ngoài các định dạng được hỗ trợ bởi các Microsoft Jet 4,0 OLE DB Provider, bạn chỉ định các loại hình cơ sở dữ liệu trong các thuộc tính mở rộng cho kết nối. Các máy bay phản lực OLE DB Provider hỗ trợ loại cơ sở dữ liệu sau cho Microsoft Excel Workbook:
  • Excel 3,0
  • Excel 4,0
  • Excel 5,0
  • Excel 8,0
LƯU Ý: Sử dụng Excel 5.0 nguồn cơ sở dữ liệu kiểu cho Microsoft Excel 5.0 và 7.0 (95) sách bài tập và sử dụng Excel 8,0 nguồn cơ sở dữ liệu kiểu cho Microsoft Excel 8,0 (97) và 9,0 sách bài tập (2000). ExcelADO.exe mẫu sử dụng Excel Workbook trong định dạng Excel 97 và Excel 2000.

Các mẫu sau đây chứng minh một bảng tính kết nối đến một Excel 97 (hay 2000) ADO:
Dim oConn As New ADODB.ConnectionWith oConn    .Provider = "Microsoft.Jet.OLEDB.4.0"    .Properties("Extended Properties").Value = "Excel 8.0"    .Open "C:\Book1.xls"    '....    .CloseEnd With				
- hay -
Dim oConn As New ADODB.ConnectionoConn.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _           "Data Source=C:\Book1.xls;" & _           "Extended Properties=""Excel 8.0;"""oConn.Close				
Quy ước đặt tên bảng

Có một số cách bạn có thể tham khảo một bảng (hay nhiều) trong một bảng tính Excel:
  • Sử dụng bảng tên theo sau là một dấu hiệu đồng đô la (cho ví dụ, [Sheet1$] hay [My Worksheet$]). Một bảng tính bảng tham chiếu theo cách này bao gồm phạm vi được sử dụng toàn bộ bảng tính.
    oRS.Open "Select * from [Sheet1$]", oConn, adOpenStatic					
  • Sử dụng một tầm hoạt động với một tên được xác định (ví dụ, [Table1]).
    oRS.Open "Select * from Table1", oConn, adOpenStatic					
  • Sử dụng một tầm hoạt động với một địa chỉ cụ thể (ví dụ, [Sheet1$ A1: B10]).
    oRS.Open "Select * from [Sheet1$A1:B10]", oConn, adOpenStatic					
Tiêu đề bảng

Với Excel Workbook, dòng đầu tiên trong một loạt được coi là hàng tiêu đề (hoặc lĩnh vực tên) theo mặc định. Nếu phạm vi đầu tiên không chứa thông tin thư, bạn có thể chỉ định HDR \U003D KHÔNG trong các thuộc tính mở rộng trong chuỗi kết nối của bạn. Nếu hàng đầu không chứa thông tin thư, các nhà cung cấp OLE DB tự động tên các trường cho bạn (trong trường hợp F1 sẽ đại diện cho lĩnh vực đầu tiên, F2 sẽ đại diện cho lĩnh vực thứ hai, và vv).

Loại dữ liệu

Không giống như một cơ sở dữ liệu truyền thống, there's no way trực tiếp để chỉ rõ loại dữ liệu cho cột trong Excel bảng. Thay vào đó, các nhà cung cấp OLE DB quét một số giới hạn các hàng trong cột "đoán" kiểu dữ liệu cho lĩnh vực. Số hàng để quét mặc định là tám (8) hàng; bạn có thể thay đổi số hàng để quét bằng cách xác định một giá trị giữa một (1) và mười sáu (16) cho các MAXSCANROWS thiết lập trong các thuộc tính mở rộng của chuỗi kết nối của bạn.

Tập tin có trong mẫu

Các tập tin ExcelADO.exe chứa một dự án Visual Basic tiêu chuẩn EXE, Active Server Pages (ASP), Excel 97 và Excel 2000 sách bài tập làm mẫu, và một cơ sở dữ liệu Microsoft Access 2000. Các tập tin bao gồm là như sau:

Visual Basic tiêu chuẩn dự án EXE Files
  • ExcelADO.vbp
  • Form1.frm
  • Form1.FRX
Active Server Pages
  • EmpData.asp
  • Orders.asp
Microsoft Excel Workbook
  • OrdersTemplate.xls
  • EmpDataTemplate.xls
  • ProductsTemplate.xls
  • SourceData.xls
Microsoft Access cơ sở dữ liệu
  • Data.mdb

Làm thế nào để sử dụng mẫu

Giải nén các nội dung của file exe cho một thư mục.

Để sử dụng dự án Visual Basic:
  1. Trong Visual Basic, mở ExcelADO.vbp file.
  2. Trên các Dự án trình đơn, chọn Tham khảo, và sau đó thiết lập tài liệu tham khảo để Microsoft ADO Ext. cho Optical Mouse và an ninhMicrosoft ActiveX Data Objects Library. Điều này mẫu mã công trình với cả ADO 2,5 và ADO 2.6, vì vậy chọn phiên bản thích hợp với máy tính của bạn.
  3. Phím F5 để chạy chương trình. Một hình thức cho các cuộc biểu tình sẽ xuất hiện.
  4. Nhấp vào Mẫu 1.Mẫu này tạo ra một bản sao của OrdersTemplate.xls. Nó sau đó sử dụng ADO để kết nối với bảng tính và mở ra một RecordSet trên bàn là một phạm vi được xác định trong bảng tính. Tên gọi của dãy núi là Orders_Table. Nó sử dụng ADO AddNew/Cập nhật phương pháp để thêm bản ghi (hoặc hàng) để phạm vi được xác định trong bảng tính. Khi hàng bổ sung là hoàn thành, ADO Kết nối đóng cửa và bảng tính được hiển thị trong Microsoft Excel. Làm theo các bước sau để làm điều này:
    1. Trên các Chèn Menu trong Excel, chọn Tên, và chọn Xác định.
    2. Trong danh sách được xác định tên, chọn Orders_Table. Lưu ý rằng tên được xác định đã phát triển để bao gồm các hồ sơ vừa được thêm vào. Được xác định tên được sử dụng, kết hợp với chức năng OFFSET của Excel, để tính toán tổng cộng trên dữ liệu bổ sung vào bảng tính.
    3. Thoát khỏi Microsoft Excel và trở về ứng dụng Visual Basic.
  5. Nhấp vào Mẫu 2.Mẫu này tạo ra một bản sao của EmpDataTemplate.xls. Nó sử dụng ADO để kết nối với bảng tính và sử dụng các Thực thi phương pháp kết nối ADO chèn dữ liệu (CHÈN vào trong SQL) vào bảng tính. Dữ liệu được thêm ở phạm vi được xác định (hoặc bàn) tại bảng tính. Khi dữ liệu được chuyển giao, kết nối đã đóng và bảng tính rằng kết quả sẽ được hiển thị trong Excel. Sau khi bạn xem xét bảng tính, bỏ Microsoft Excel, và sau đó trở về ứng dụng Visual Basic.

  6. Nhấp vào Mẫu 3.Mẫu này tạo ra một bản sao của ProductsTemplate.xls. Sử dụng Microsoft ADO Extensions 2.1 Optical Mouse và an ninh đối tượng thư viện (ADOX) để thêm một bảng mới (hoặc một bảng tính mới) để bảng tính. Một ADO RecordSet sau đó thu được cho bảng mới và dữ liệu được thêm bằng cách sử dụng các AddNew/Cập nhật phương pháp. Khi hàng bổ sung là hoàn thành, ADO Kết nối đóng cửa và bảng tính được hiển thị trong Excel. Bảng tính chứa Visual Basic for Applications (VBA) vĩ mô mã trong các Mở sự kiện cho bảng tính. Vĩ mô chạy khi mở ra bảng tính; nếu bảng tính mới "Sản phẩm" tồn tại trong bảng tính, mã vĩ mô định dạng bảng tính và sau đó xóa các mã vĩ mô. Kỹ thuật này trình bày một cách cho các nhà phát triển Web để di chuyển định dạng mã đi từ các máy chủ Web và vào các khách hàng. Một ứng dụng Web có thể dòng một bảng tính định dạng chứa dữ liệu cho khách hàng và cho phép mã vĩ mô mà sẽ thực hiện điều bất kỳ "kiện" định dạng mà có thể không có thể có trong một mẫu một mình để chạy với khách hàng.

    LƯU Ý: Để kiểm tra mã vĩ mô, xem các ThisWorkbook mô-đun trong VBAProject cho ProductsTemplate.xls.

  7. Nhấp vào Mẫu 4.Mẫu này tạo ra kết quả tương tự như mẫu 1, nhưng các kỹ thuật được sử dụng để chuyển dữ liệu là hơi khác nhau. Trong mẫu 1, hồ sơ (hoặc hàng) được bổ sung vào bảng tính một lúc một thời gian. Mẫu 4 cho biết thêm các hồ sơ với số lượng lớn bằng cách gắn Excel bảng vào một cơ sở dữ liệu truy cập và chạy một truy vấn phụ thêm (hoặc CHÈN vào..CHỌN từ) để phụ thêm bản ghi từ một bảng trong bảng truy cập vào bảng Excel. Khi việc chuyển giao hoàn tất, bảng Excel được tách ra từ cơ sở dữ liệu Access và bảng tính rằng kết quả sẽ được hiển thị trong Excel. Bỏ Excel, và trở về ứng dụng Visual Basic.

  8. Mẫu cuối cùng minh hoạ làm thế nào bạn có thể đọc dữ liệu từ một bảng tính Excel. Chọn một bảng trong danh sách thả-xuống, và sau đó bấm Mẫu 5. Cửa sổ ngay lập tức hiển thị các nội dung của bảng mà bạn đã chọn. Nếu bạn chọn một bảng tính toàn bộ ("sheet1 $" hoặc "sheet2 $") cho bảng, cửa sổ ngay lập tức hiển thị các nội dung của dãy được sử dụng cho rằng bảng tính. Lưu ý rằng phạm vi được sử dụng không bắt nhất thiết phải đầu trên hàng 1, cột 1 của bảng tính. Phạm vi sử dụng bắt đầu từ di động trái-hầu hết mid trong bảng tính có chứa dữ liệu.

    Nếu bạn chọn một phạm vi cụ thể địa chỉ hoặc một dải được xác định, cửa sổ ngay lập tức hiển thị các nội dung của chỉ mà phạm vi trên bảng tính.
Sử dụng tổ chức phần mềm Active Server Pages (ASP):
  1. Tạo một thư mục mới đặt tên ExcelADO trong thư mục chính của máy chủ Web của bạn. Lưu ý rằng đường dẫn mặc định cho mục C:\InetPut\WWWRoot.
  2. Sao chép các tập tin theo đây vào thư mục bạn đã tạo ở bước trước:
    • EmpData.asp
    • Orders.asp
    • Data.mdb
    • EmpDataTemplate.xls
    • OrdersTemplate.xls

  3. Script ASP trong mẫu này tạo ra bản sao của bảng tính mẫu với các Sao phương pháp của các FileSystemObject. Đối với các Sao phương pháp để thành công, khách hàng đó truy cập vào các tập lệnh phải có quyền truy cập ghi vào thư mục có chứa ASP.
  4. Điều hướng đến Orders.asp (tức là http://YourServer/ExcelADO/Orders.ASP), và lưu ý rằng trình duyệt sẽ hiển thị một bảng tính Excel tương tự như một trong Mẫu 1 ứng dụng Visual Basic.
  5. Điều hướng đến EmpData.asp (tức là http://YourServer/ExcelADO/EmpData.ASP), và lưu ý rằng trình duyệt sẽ hiển thị một bảng tính Excel tương tự như một trong Mẫu 2 ứng dụng Visual Basic.
(c) Microsoft Corporation 2000, tất cả các quyền. Những đóng góp của Lori B. Turner, Microsoft Corporation.

THAM KHẢO
Để biết thêm chi tiết, nhấp vào số bài viết sau để xem các bài viết trong cơ sở kiến thức Microsoft:
195951HOWTO: Truy vấn và cập nhật dữ liệu Excel sử dụng ADO từ ASP
194124 PRB: Excel giá trị trở lại ghế thủ NULL sử dụng DAO OpenRecordset
193998 HOWTO: Đọc và hiển thị Data nhị phân trong ASP
247412 Thông báo: Phương pháp để chuyển dữ liệu vào Excel từ Visual Basic
257819 HOWTO: Sử dụng ADO với dữ liệu Excel từ Visual Basic hoặc VBA
ExcelADO

Warning: This article has been translated automatically

Thuộc tính

ID Bài viết: 278973 - Xem lại Lần cuối: 08/22/2011 09:21:00 - Bản sửa đổi: 2.0

Microsoft Excel 2000 Standard Edition, Microsoft Visual Basic 6.0 Professional Edition, Microsoft Active Server Pages 4.0

  • kbdownload kbautomation kbfile kbprogramming kbmt KB278973 KbMtvi
Phản hồi