Làm thế nào để tạo một hộp tổ hợp từ có hơn 25 mục từ cơ sở dữ liệu Microsoft Access

Đối với phiên bản Microsoft Word 97 của bài viết này, hãy xem 253552.

Tóm tắt

Bài viết này mô tả cách tạo và sử dụng hộp tổ hợp UserForm một mục macro cho trường biểu mẫu văn bản để hiển thị thông tin từ cơ sở dữ liệu Microsoft Access. Macro này có thể sử dụng như một giải pháp để hạn chế 25 mục trong biểu mẫu thả xuống.

Để biết thêm thông tin về cách thực hiện việc này khi bạn không sử dụng cơ sở dữ liệu Microsoft Access, hãy bấm vào số bài viết sau để xem bài viết trong cơ sở kiến thức Microsoft:

198561 làm thế nào để tạo một hộp tổ hợp có mục 25

306258 làm thế nào để tạo một hộp tổ hợp bao gồm 25 mục trong Word 2002

Thông tin

Microsoft cung cấp mô hình lập trình để minh hoạ, không bảo hành hoặc rõ ràng hay ngụ ý. Điều này bao gồm, nhưng không giới hạn ở các bảo đảm cho một mục đích cụ thể hoặc sự. Bài viết này giả định rằng bạn đã quen với ngôn ngữ lập trình đang được giải thích và các công cụ được sử dụng để tạo và quy trình gỡ lỗi. Các kỹ sư hỗ trợ Microsoft có thể giúp giải thích các chức năng của một quy trình cụ thể, nhưng chúng sẽ không sửa đổi các ví dụ để cung cấp thêm chức năng hoặc xây dựng quy trình nhằm đáp ứng các yêu cầu cụ thể của bạn.
Để biết thêm thông tin, hãy bấm vào số bài viết sau để xem bài viết trong Cơ sở Kiến thức Microsoft:

212536 làm thế nào để chạy mã mẫu từ bài viết cơ sở kiến thức trong Office 2000

Trong mẫu của bạn, sử dụng các bước sau.

Chú ý: để đóng cửa sổ (ví dụ: một cửa sổ mã hoặc cửa sổ thuộc tính ), bấm vào dấu X ở góc trên bên phải của cửa sổ.

Tạo hộp tổ hợp UserForm

  1. Trong Microsoft Office Word 2003 và trước verions, trỏ tới Macro trên menu công cụ , và sau đó bấm Visual Basic Editor.

    Trong Word 2007, bấm vào tab nhà phát triển , và sau đó bấm Visual Basic Editor

  2. Trong cửa sổ Project , chọn TemplateProject của bạn.

    Chú ý: nếu cửa sổ dự án xuất hiện, nhấp vào Dự án Explorer menu xem .

  3. Trên menu chèn , nhấp vào UserForm. UserForm mới và Điều khiển công cụ sẽ xuất hiện. Bấm chuột phải vào UserFormrồi sau đó bấm Xem mã trên menu lối tắt. Thêm mã sau vào sự kiện khởi tạo :

    Option Explicit
    'Define Variables

    Private Sub UserForm_Initialize()

    Dim dbDatabase As Database
    Dim rsNorthwind As Recordset
    Dim i As Integer
    Dim aResults()

    ' This code activates the Database connection. Change
    ' the path to reflect your database.
    Set dbDatabase = OpenDatabase("C:\My Documents\NorthWind.mdb")

    ' This code opens the Customers table. Change the Table
    ' to reflect the desired table.
    Set rsNorthwind = dbDatabase.OpenRecordset("Customers", dbOpenSnapshot)

    i = 0

    With rsNorthwind
    ' This code populates the combo box with the values
    ' in the CompanyName field.

    Do Until .EOF
    ComboBox1.AddItem (i)
    ComboBox1.Column(0, i) = .Fields("CompanyName")
    .MoveNext
    i = i + 1
    Loop

    End With
    End Sub
  4. Trên menu Công cụ, bấm vào Tham chiếu.

  5. Nhấp vào Microsoft DAO 3.6 đối tượng thư viện.

  6. Bấm OK để đóng hộp thoại Tài liệu tham khảo.

  7. Đóng cửa sổ mã.

  8. Bấm chuột phải vào UserForm, và sau đó bấm thuộc tính lối tắt menu. Trên tab chữ , đổi tên (Name) thành frmcombo, và sau đó đổi tên tiêu đề cho Microsoft Word. Đóng cửa sổ Thuộc tính UserForm .

  9. Trên tab điều khiển công cụ, chọn ComboBox và đặt nó vào UserForm của bạn. Bấm chuột phải vào ComboBox điều khiển rồi sau đó bấm Xem mã trên menu lối tắt. Thay đổi mã ComboBox:

    Private Sub ComboBox1_Change()
    ActiveDocument.FormFields("Text1").Result = ComboBox1.Value
    End Sub

    Chú ý: Text1 là đánh dấu tên trường mẫu văn bản mà bạn nhập vào mẫu của bạn trong bước 2 của "Tạo các trường văn bản biểu mẫu" quy trình trong bài viết này.

  10. Đóng cửa sổ mã.

  11. Trên tab điều khiển công cụ, chọn CommandButton và đặt nó trên biểu mẫu sử dụng như một nút đóng . Bấm chuột phải vào CommandButtonrồi sau đó bấm Xem mã trên menu lối tắt. Thay đổi mã CommandButton:

    Private Sub Cmdclose_Click()
    End
    End Sub
  12. Đóng cửa sổ mã.

  13. Bấm chuột phải vào CommandButton, và sau đó bấm thuộc tính lối tắt menu. Trên tab chữ đổi (tên) để Cmdclose, và sau đó đổi tên tiêu đề để đóng. Đóng cửa sổ Thuộc tính CommandButton .

Hộp tổ hợp UserForm đang hoàn tất. Tiếp tục quy trình "Tạo thư mục Macro".

Tạo mục Macro

  1. Trong cửa sổ Project, chọn TemplateProject của bạn.

  2. Trên menu Chèn, bấm vào Mô đun. Một trang mã mô-đun trống xuất hiện.

  3. Nhập mã sau đây:

    Sub gocombobox()
    frmcombo.Show
    End Sub

Macro mục đang hoàn tất. Trên menu tệp , bấm đóng và quay lại Microsoft Word.

Tạo trường biểu mẫu văn bản

  1. Trong mẫu của bạn, trên menu xem , trỏ chuột vào thanh công cụ, và sau đó bấm vào biểu mẫu.

  2. Vị trí của điểm chèn nơi bạn muốn kết quả danh sách thả xuống cho. Trên thanh công cụ mẫu , bấm Trường biểu mẫu văn bản (nút đầu tiên bên trái). Trường biểu mẫu văn bản được chèn vào mẫu của bạn là màu xám bóng.

    Chú ý: nếu bạn thấy trường {}FORMTEXT} , nhấn ALT + F9 để tắt mã trường.

  3. Bấm chuột phải vào Trường biểu mẫu văn bảnvà sau đó bấm thuộc tính lối tắt menu.

  4. Trong hộp thoại Tuỳ chọn trường biểu mẫu văn bản , trong phần chạy macro , chọn macro gocombobox từ các nhập: tên hộp tổ hợp.


    Lưu ý: đảm bảo rằng tên trường mẫu văn bản của bạn là giống như bạn đã chỉ định trong bước 9 quy "Tạo các UserForm hộp tổ hợp" trước đó trong bài viết này.

  5. Trên thanh công cụ mẫu , bấm vào Hình thức bảo vệ.

  6. Lưu và đóng mẫu của bạn.

Sử dụng các mẫu trong Word 2003 và verions trước, bấm vào mới trên menu tệp . Chọn mẫu của bạn và sau đó bấm OK.

Sử dụng các mẫu trong Word 2007, bấm vào Nút Microsoft Office, bấm mới, chọn mẫu của bạn và sau đó nhấp vào tạo.

Tài liệu mới dựa trên khuôn mẫu của bạn xuất hiện. UserForm chứa ComboBox với mục xuất hiện khi bạn sử dụng phím TAB để chuyển vào trường văn bản biểu mẫu.

Bạn cần thêm trợ giúp?

Phát triển các kỹ năng của bạn
Khám phá nội dung đào tạo
Sở hữu tính năng mới đầu tiên
Tham gia Microsoft dùng nội bộ

Thông tin này có hữu ích không?

Cảm ơn phản hồi của bạn!

Cảm ơn bạn đã phản hồi! Để trợ giúp tốt hơn, có lẽ chúng tôi sẽ kết nối bạn với một trong những nhân viên hỗ trợ Office của chúng tôi.

×