Note: The other languages of the website are Google-translated. Back to English

Làm thế nào để chèn danh sách thả xuống được mã hóa màu trong bảng Word?

Giả sử, tôi có một bảng trong tài liệu Word của mình và bây giờ, tôi muốn chèn danh sách thả xuống được mã hóa màu vào một cột của bảng. Điều đó có nghĩa là khi tôi chọn một tùy chọn từ menu thả xuống, màu ô sẽ trở thành màu đỏ và khi tôi chọn một tùy chọn khác trong menu thả xuống, màu ô sẽ trở thành màu xanh lục như hình minh họa sau. Làm thế nào bạn có thể giải quyết công việc này trong tài liệu Word?

màu doc ​​được mã hóa thả xuống

Chèn danh sách thả xuống được mã hóa màu trong tài liệu Word với mã VBA


Chèn danh sách thả xuống được mã hóa màu trong tài liệu Word với mã VBA

Các bước sau có thể giúp bạn hoàn thành tác vụ này khi cần, trước tiên, hãy chèn danh sách thả xuống, sau đó áp dụng màu cho danh sách thả xuống. Vui lòng làm như sau:

1. Chọn một ô trong bảng mà bạn muốn chèn trình đơn thả xuống, sau đó bấm Nhà phát triển > Kiểm soát nội dung danh sách thả xuống biểu tượng, xem ảnh chụp màn hình:

màu doc ​​được mã hóa thả xuống 1

2. Trình đơn thả xuống được chèn vào ô cụ thể, sau đó nhấp vào Nhà phát triển > Bất động sản, xem ảnh chụp màn hình:

màu doc ​​được mã hóa thả xuống 2

3. Trong Thuộc tính kiểm soát nội dung hộp thoại, vui lòng thực hiện các thao tác sau:

(1.) Nhập tên tiêu đề vào Yêu sách hộp văn bản;

(2.) Nhấp vào Thêm nút đi đến Thêm lựa chọn hộp thoại;

(3.) Trong Thêm lựa chọn , nhập mục danh sách thả xuống vào Tên hiển thị hộp văn bản.

màu doc ​​được mã hóa thả xuống 3

4. Lặp lại Bước 3 để chèn các mục danh sách thả xuống khác khi bạn cần.

5. Sau khi tạo danh sách thả xuống đầu tiên, bạn có thể sao chép và dán nó vào các ô khác khi cần. Xem ảnh chụp màn hình:

màu doc ​​được mã hóa thả xuống 4

6. Sau đó, bạn nên áp dụng mã VBA, vui lòng giữ ALT + F11 phím để mở Microsoft Visual Basic cho các ứng dụng cửa sổ.

7. Trong Microsoft Visual Basic cho các ứng dụng cửa sổ, nhấp đúp Tài liệu này từ Dự án-Dự án để mở chế độ, sau đó sao chép và dán mã sau vào mô-đun trống.

Mã VBA: Chèn danh sách thả xuống được mã hóa màu vào bảng của tài liệu Word:

Private Sub Document_ContentControlOnExit(ByVal ContentControl As ContentControl, Cancel As Boolean)
With ContentControl.Range
    If ContentControl.Title = "Status" Then
        Select Case .Text
            Case "Complete"
                .Cells(1).Shading.BackgroundPatternColor = wdColorRed
            Case "In Progress"
                .Cells(1).Shading.BackgroundPatternColor = wdColorGreen
            Case "Not Start"
                .Cells(1).Shading.BackgroundPatternColor = wdColorBlue
            Case Else
                .Cells(1).Shading.BackgroundPatternColor = wdColorAutomatic
        End Select
    End If
End With
End Sub

màu doc ​​được mã hóa thả xuống 5

Chú thích: Trong đoạn mã trên, Trạng thái là tên tiêu đề khi bạn tạo danh sách thả xuống và Hoàn thành, Đang diễn ra, Không bắt đầu là các mục của danh sách thả xuống, bạn có thể thay đổi chúng thành của riêng bạn. Và bạn cũng có thể thay đổi màu sắc theo nhu cầu của bạn.

8. Sau đó, lưu và đóng cửa sổ mã, bây giờ, khi bạn chọn một mục từ danh sách thả xuống, màu tương đối của nó sẽ được tô đầy ô, xem ảnh chụp màn hình:

màu doc ​​được mã hóa thả xuống


 


Công cụ năng suất Word được đề xuất

 

Kutools cho Word - Hơn 100 tính năng nâng cao cho Word, tiết kiệm 50% thời gian của bạn

  • Các hoạt động phức tạp và lặp đi lặp lại có thể được thực hiện xử lý một lần trong vài giây.
  • Chèn nhiều hình ảnh trên các thư mục vào tài liệu Word cùng một lúc.
  • Hợp nhất và kết hợp nhiều tệp Word trên các thư mục thành một với thứ tự mong muốn của bạn.
  • Chia tài liệu hiện tại thành các tài liệu riêng biệt theo tiêu đề, ngắt phần hoặc các tiêu chí khác.
  • Chuyển đổi tệp giữa Doc và Docx, Docx và PDF, bộ sưu tập các công cụ để chuyển đổi và lựa chọn phổ biến, v.v.

 

Nhận xét (47)
Xếp hạng 5 trong 5 · xếp hạng 1
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Khi tôi thoát và mở lại chương trình, tôi phải nhập lại mã VBA. Làm thế nào để tôi làm cho nó để nó tiết kiệm?
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Chào bạn,
Để lưu mã vba khi mở tệp lần sau, bạn nên lưu tệp word dưới định dạng Word Macro-Enabled Document. Hãy thử nó, hy vọng nó có thể giúp bạn!
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Xin chào, tôi vừa tạo thành công danh sách thả xuống và các màu theo lời khuyên. Tôi đã cố gắng thêm một hàng khác để tôi có lệnh thả xuống 4 so với 3. Tôi đã cắt và dán và thay đổi nhưng không có màu nào hiển thị khi tôi chọn tùy chọn này, bất kỳ ý tưởng làm thế nào để khắc phục?
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Chào Peter,
Trước tiên, bạn nên tạo danh sách thả xuống vào bảng, sau đó *** văn bản thả xuống thứ tư của bạn vào mã như bên dưới:

Private Sub Document_ContentControlOnExit(ByVal ContentControl As ContentControl, Cancel As Boolean)
With ContentControl.Range
If ContentControl.Title = "Status" Then
Select Case .Text
Case "Complete" 'First drop down item
.Cells(1).Shading.BackgroundPatternColor = wdColorRed
Case "In Progress" 'Second drop down item
.Cells(1).Shading.BackgroundPatternColor = wdColorGreen
Case "Not Start" 'Third drop down item
.Cells(1).Shading.BackgroundPatternColor = wdColorBlue
Case "New Task" 'Fourth drop down item
.Cells(1).Shading.BackgroundPatternColor = wdColorYellow
Case Else
.Cells(1).Shading.BackgroundPatternColor = wdColorAutomatic
End Select
End If
End With
End Sub


Hãy cố gắng, hy vọng nó có thể giúp bạn!
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
cái này đã làm việc ghi ơn! Thanks. Tôi đã cố gắng áp dụng cùng một mã cho một hộp nội dung thả xuống khác trong cùng một tài liệu và tôi đang gặp sự cố. Không biết cách lấy tweo trong cửa sổ VBA. Tôi nhận được 'lỗi biên dịch, phát hiện tên không rõ ràng: Document_ContentControlOnExit'
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Tôi có thể nhập màu tùy chỉnh không? (rgb)
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Xin chào, Cảm ơn vì điều này. Có cách nào để chỉ thay đổi màu văn bản chứ không phải toàn bộ ô không?
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Xin chào, Shannon,
Để thay đổi màu chữ thay cho màu nền, đoạn mã VBA dưới đây có thể giúp ích được gì cho bạn, hãy thử áp dụng nhé, hy vọng có thể giúp ích được cho bạn!

Private Sub Document_ContentControlOnExit (ByVal ContentControl As ContentControl, Cancel As Boolean)
Với ContentControl.Range
If ContentControl.Title = "Status" Thì
Chọn trường hợp. Văn bản
Trường hợp "Hoàn thành"
.Cells (1) .Range.Font.Color = wdColorRed
Yêu cầu "Đang xử lý"
.Cells (1) .Range.Font.Color = wdColorGreen
Trường hợp "Không bắt đầu"
.Cells (1) .Range.Font.Color = wdColorBlue
Trường hợp khác
.Cells (1) .Range.Font.Color = wdColorAutomatic
Kết thúc Chọn
Cuối Nếu
Kết thúc với
End Sub
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Đấu tranh ở đây để áp dụng điều này như một phong cách hơn là một màu sắc hoặc bóng râm.
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Tôi có thể sửa đổi mã này để làm nổi bật bất kỳ lựa chọn thả xuống nào mà không liệt kê tất cả chúng ra ngoài không?
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Thay vì màu sắc, chúng ta có thể sử dụng các biểu tượng? như nếu ký hiệu hiển thị 'hoàn thành' với mã ký tự 252, nếu không bắt đầu thì ký hiệu với mã ký tự 88, v.v. bạn có thể chia sẻ mã vba bằng cách sử dụng ký hiệu làm hiển thị plz không?
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Xin chào, điều này thật tuyệt vời! Có cách nào để chọn trong số rất nhiều màu sắc không?
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Chào, Sam,
Để áp dụng nhiều màu hơn bạn thích, bạn nên sử dụng mã dưới đây và thay đổi màu RGB theo nhu cầu của bạn:

Private Sub Document_ContentControlOnExit(ByVal ContentControl As ContentControl, Cancel As Boolean)
With ContentControl.Range
    If ContentControl.Title = "Status" Then
        Select Case .Text
            Case "Complete"
                .Cells(1).Shading.BackgroundPatternColor = RGB(255, 0, 0)
            Case "In Progress"
                .Cells(1).Shading.BackgroundPatternColor = RGB(0, 255, 64)
            Case "Not Start"
                .Cells(1).Shading.BackgroundPatternColor = RGB(0, 0, 255)
            Case Else
                .Cells(1).Shading.BackgroundPatternColor = wdColorAutomatic
        End Select
    End If
End With
End Sub


Hãy cố gắng, hy vọng nó có thể giúp bạn!
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Tôi có thể tô màu toàn bộ hàng tương ứng thay vì chỉ một ô không?
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Xin chào, Jericho,
Đoạn mã dưới đây có thể giúp bạn giải quyết vấn đề của mình, hãy thử nó: (Bạn có thể đặt màu RGB theo nhu cầu của mình)

Private Sub Document_ContentControlOnExit (ByVal ContentControl As ContentControl, Cancel As Boolean)
Với ContentControl.Range
If ContentControl.Title = "Status" Thì
Chọn trường hợp. Văn bản
Trường hợp "Hoàn thành"
.Rows.Shading.BackgroundPatternColor = RGB (255, 0, 0)
Yêu cầu "Đang xử lý"
.Rows.Shading.BackgroundPatternColor = RGB (0, 255, 64)
Trường hợp "Không bắt đầu"
.Rows.Shading.BackgroundPatternColor = RGB (0, 0, 255)
Trường hợp khác
.Rows.Shading.BackgroundPatternColor = wdColorAutomatic
Kết thúc Chọn
Cuối Nếu
Kết thúc với
End Sub
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Chào, tuyệt vời !!! Nhưng có cách nào để thay đổi màu sắc / văn bản của một ô khác trong cùng hàng nhưng ở cột khác không? Ví dụ: thay vì thay đổi nền của "Hoàn thành", hãy thay đổi nền của "Dự án-001". Làm ơn giúp tôi với. Cảm ơn trước
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Xin chào, Jaimes,
Để giải quyết vấn đề của bạn, vui lòng áp dụng mã dưới đây:
Lưu ý: Trong mã , số 1 trong tập lệnh Các ô (1) là số cột của bảng, bạn có thể sắp xếp theo nhu cầu của mình.

Private Sub Document_ContentControlOnExit (ByVal ContentControl As ContentControl, Cancel As Boolean)
Với ContentControl.Range
If ContentControl.Title = "Status" Thì
Chọn trường hợp. Văn bản
Trường hợp "Hoàn thành"
.Rows (1) .Cells (1) .Shading.BackgroundPatternColor = wdColorRed
Yêu cầu "Đang xử lý"
.Rows (1) .Cells (1) .Shading.BackgroundPatternColor = wdColorGreen
Trường hợp "Không bắt đầu"
.Rows (1) .Cells (1) .Shading.BackgroundPatternColor = wdColorBlue
Trường hợp khác
.Rows (1) .Cells (1) .Shading.BackgroundPatternColor = wdColorAutomatic
Kết thúc Chọn
Cuối Nếu
Kết thúc với
End Sub

Hãy cố gắng, hy vọng nó có thể giúp bạn!
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Xin chào, có cách nào để thực hiện thả xuống nhiều mã màu trong một tài liệu không? Cảm ơn bạn!
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Cảm ơn bạn rất nhiều vì đã chia sẻ điều này! Tuy nhiên, tôi đang gặp phải một vấn đề kỳ quặc. Đôi khi, khi tôi chọn một mục từ menu thả xuống và sau đó nhấp vào nơi khác trong tài liệu để nó áp dụng định dạng, nó không hoạt động. Nó chọn từ thích hợp từ menu thả xuống, nhưng nó vẫn ở trạng thái bình thường, văn bản màu đen. Tôi phải hoàn tác trước khi chọn bất kỳ thứ gì, chọn lại mục từ menu thả xuống, sau đó CHỈ nhấp vào menu thả xuống khác để áp dụng định dạng. Bất kỳ ý tưởng về lý do tại sao nó hoạt động như vậy và cách tôi có thể khắc phục nó?
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Xin chào, tôi đã làm theo các bước một vài lần nhưng màu sắc không xuất hiện chút nào?
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Cảm ơn bạn đã cung cấp điều này, nó rất hữu ích! Tuy nhiên, tôi đã gặp một lỗi. Khi tôi tạo một hàng mới trong bảng bên dưới ô đã có danh sách Thả xuống, nó sẽ sao chép màu của ô ở trên vào ô này mà không có Danh sách thả xuống. Sau đó, nếu tôi sao chép và dán danh sách thả xuống và thay đổi tùy chọn, nó không làm thay đổi màu của ô. Có ai giúp được không?
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Chào bạn,

Tôi đã cố gắng tạo hai danh sách thả xuống mã màu trong một mẫu Word, tuy nhiên, tôi nhận được thông báo lỗi cho biết 'Đã phát hiện tên không rõ ràng: Document_ContentControON EXIT. Bạn có thể vui lòng cho tôi biết tôi đã làm gì sai không?




Private Sub Document_ContentControlOnExit (ByVal ContentControl As ContentControl, Cancel As Boolean)

Với ContentControl.Range

If ContentControl.Title = "Hành động sửa chữa" Thì

Chọn trường hợp. Văn bản

Trường hợp "Cần hành động khắc phục"

.Cells (1) .Shading.BackgroundPatternColor = wdColorRed

Trường hợp "Không cần thực hiện thêm hành động"

.Cells (1) .Shading.BackgroundPatternColor = wdColorGreen

Trường hợp "Hành động khắc phục được đề xuất"

.Cells (1) .Shading.BackgroundPatternColor = wdColorYellow

Trường hợp khác

.Cells (1) .Shading.BackgroundPatternColor = wdColorAutomatic

Kết thúc Chọn

Cuối Nếu

Kết thúc với

End Sub

Private Sub Document_ContentControlOnExit (ByVal ContentControl As ContentControl, Cancel As Boolean)

Với ContentControl.Range

If ContentControl.Title = "Hành động sửa chữa cho cd" Thì

Chọn trường hợp. Văn bản

Trường hợp "Sử dụng đường cong Cd mới"

.Cells (1) .Shading.BackgroundPatternColor = wdColorRed

Trường hợp "Sử dụng đường cong Cd hiện có"

.Cells (1) .Shading.BackgroundPatternColor = wdColorGreen

Trường hợp "Kiểm tra cài đặt và thăm dò"

.Cells (1) .Shading.BackgroundPatternColor = wdColorYellow

Trường hợp khác

.Cells (1) .Shading.BackgroundPatternColor = wdColorAutomatic

Kết thúc Chọn

Cuối Nếu

Kết thúc với


Rất cám ơn trước sự hỗ trợ của bạn.
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Xin chào - cảm ơn rất nhiều về điều này. Làm cách nào để kết hợp mã để thay đổi màu phông chữ dựa trên lựa chọn từ danh sách thả xuống.
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
mã bài ban đầu hoạt động tốt nhưng tôi muốn chuyển nó vào một hộp thả xuống khác, khi tôi thử và chuyển mã đó sang VB với sự thay đổi giá trị trong phần "trạng thái" của dòng sau:
If ContentControl.Title = "Status" Thì
nó không hoạt động?
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Xin chào, joni, Nếu có hai hoặc nhiều bảng danh sách thả xuống, bạn chỉ cần sao chép và dán mã dưới đây vào mã gốc và thay đổi tham chiếu văn bản theo nhu cầu của bạn.
If ContentControl.Title = "Status" Thì
Chọn trường hợp. Văn bản
Trường hợp "Hoàn thành"
.Cells (1) .Shading.BackgroundPatternColor = wdColorRed
Yêu cầu "Đang xử lý"
.Cells (1) .Shading.BackgroundPatternColor = wdColorGreen
Trường hợp "Không bắt đầu"
.Cells (1) .Shading.BackgroundPatternColor = wdColorBlue
Trường hợp khác
.Cells (1) .Shading.BackgroundPatternColor = wdColorAutomatic
Kết thúc Chọn
Cuối Nếu


Mã hoàn chỉnh phải là: Private Sub Document_ContentControlOnExit (ByVal ContentControl As ContentControl, Cancel As Boolean)
Với ContentControl.Range
If ContentControl.Title = "Status" Thì
Chọn trường hợp. Văn bản
Trường hợp "Hoàn thành"
.Cells (1) .Shading.BackgroundPatternColor = wdColorRed
Yêu cầu "Đang xử lý"
.Cells (1) .Shading.BackgroundPatternColor = wdColorGreen
Trường hợp "Không bắt đầu"
.Cells (1) .Shading.BackgroundPatternColor = wdColorBlue
Trường hợp khác
.Cells (1) .Shading.BackgroundPatternColor = wdColorAutomatic
Kết thúc Chọn
Cuối Nếu
If ContentControl.Title = "Name" Thì
Chọn trường hợp. Văn bản
Trường hợp "Lucy"
.Cells (1) .Shading.BackgroundPatternColor = wdColorOrange
Trường hợp "Skyyang"
.Cells (1) .Shading.BackgroundPatternColor = wdColorYellow
Trường hợp "Ruby"
.Cells (1) .Shading.BackgroundPatternColor = wdColorBlue
Trường hợp khác
.Cells (1) .Shading.BackgroundPatternColor = wdColorAutomatic
Kết thúc Chọn
Cuối Nếu
Kết thúc với
End SubXin vui lòng cố gắng, hy vọng nó có thể giúp bạn!
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Điều này làm việc tuyệt vời, cảm ơn bạn đã giúp đỡ của bạn.
Tôi cũng đang cố gắng tìm ra một phương pháp cho những điều sau:
Tôi có hai ô có một giá trị số. Trong một ô riêng biệt, tôi muốn nhân các giá trị này, nếu kết quả nằm trong ba phạm vi số đã đặt, tôi muốn ô hiển thị văn bản dựa trên các giá trị phạm vi.
Nếu mức độ rủi ro nghiêm trọng của một mối nguy là 3
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Điều này rất hữu ích và tôi đã thực hiện nó thành công. Tôi tự hỏi làm cách nào tôi cũng có thể thay đổi màu văn bản trên cùng một hàng Tôi đã thay đổi màu nền. Ví dụ. màu hàng nền là màu đỏ, nhưng tôi muốn văn bản là màu trắng chứ không phải màu đen?
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Hướng dẫn tuyệt vời - hoạt động hoàn hảo! Cảm ơn bạn!
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Chào bạn,
Bạn có thể tô màu cho cột tiếp theo, thay vì cột danh sách thả xuống không? Ví dụ: không có mã màu nào trong cột "Trạng thái" (chỉ là lựa chọn), nhưng mã màu trong cột liền kề? Thanks.
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Tôi có thể làm cho màu sắc hoạt động với danh sách thả xuống nhưng chỉ sau khi nhấp vào thẻ "trạng thái". Thẻ staus có thể tiêu biến không? Theo tôi nghĩ nó không đẹp khi tài liệu được hoàn thành
Không có bình luận nào được đăng ở đây
Tải thêm
Để lại ý kiến ​​của bạn
Đăng với tư cách khách
×
Đánh giá bài viết này:
0   Nhân vật
Các vị trí được đề xuất

Kết nối với chúng tôi

Bản quyền © 2009 - www.extendoffice.com. | Đã đăng ký Bản quyền. cung cấp bởi ExtendOffice. | BẢN ĐỒ CHI NHÁNH
Microsoft và logo Office là các nhãn hiệu hoặc nhãn hiệu đã đăng ký của Microsoft Corporation tại Hoa Kỳ và / hoặc các quốc gia khác.
Được bảo vệ bởi Sectigo SSL