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

Làm cách nào để thay đổi màu hộp văn bản dựa trên giá trị trong Excel?

Trong Excel, chúng ta có thể áp dụng chức năng Định dạng có Điều kiện để thay đổi màu nền dựa trên giá trị ô, nhưng trong bài viết này, tôi sẽ nói về cách thay đổi màu hộp văn bản dựa trên giá trị ô hoặc giá trị trong hộp văn bản.

Thay đổi màu hộp văn bản dựa trên giá trị ô bằng mã VBA

Thay đổi màu hộp văn bản dựa trên giá trị trong hộp văn bản với mã VBA


mũi tên màu xanh bong bóng bên phải Thay đổi màu hộp văn bản dựa trên giá trị ô bằng mã VBA

Giả sử, nếu giá trị ô trong A1 lớn hơn giá trị ô trong B1, tôi muốn hộp văn bản được tô bằng màu đỏ, ngược lại, hộp văn bản phải được tô bằng màu vàng. Vui lòng đạt được công việc này với các bước sau:

1. Chèn một hộp văn bản bằng cách nhấp vào Nhà phát triển > Chèn > Hộp văn bản (Điều khiển ActiveX), và sau đó vẽ một hộp văn bản, xem ảnh chụp màn hình:

màu hộp văn bản doc dựa trên giá trị 1

2. Sau đó, nhấp chuột phải vào hộp văn bản và chọn Mã Chế độ xem từ menu ngữ cảnh để mở Microsoft Visual Basic cho các ứng dụng và sau đó thay thế mã gốc bằng mã VBA sau vào mô-đun trống:

Mã VBA: Thay đổi màu hộp văn bản dựa trên giá trị ô:

Private Sub TextBox1_Change()
    If ActiveSheet.Range("A1").Value > ActiveSheet.Range("B1").Value Then
        Me.TextBox1.BackColor = vbRed
    Else
        Me.TextBox1.BackColor = vbYellow
    End If
End Sub

màu hộp văn bản doc dựa trên giá trị 2

Chú thích: Trong đoạn mã trên, Hộp văn bản1 là tên hộp văn bản mà bạn đã chèn, A1B1 là hai ô bạn muốn thay đổi màu hộp văn bản dựa trên, vui lòng thay đổi chúng theo nhu cầu của bạn.

3. Sau đó, lưu và đóng cửa sổ mã, và thoát khỏi Chế độ thiết kếBây giờ, nếu ô A1 lớn hơn B1, khi bạn nhập văn bản vào hộp văn bản, nó sẽ được tô màu đỏ, và nếu A1 nhỏ hơn B1, khi nhập giá trị vào hộp văn bản, nó sẽ được tô màu vàng, xem ảnh chụp màn hình:

màu hộp văn bản doc dựa trên giá trị 3


mũi tên màu xanh bong bóng bên phải Thay đổi màu hộp văn bản dựa trên giá trị trong hộp văn bản với mã VBA

Nếu bạn muốn thay đổi màu hộp văn bản dựa trên giá trị trong hộp văn bản, ví dụ: khi giá trị trong hộp văn bản từ 1 đến 10, màu tô của hộp văn bản là màu đỏ, màu hộp văn bản là màu xanh lục nếu giá trị từ 11 đến 20, nếu là các giá trị khác, màu hộp văn bản là màu vàng. Để giải quyết công việc này, vui lòng áp dụng mã VBA bên dưới.

1. Sau khi chèn một hộp văn bản, hãy nhấp chuột phải vào hộp văn bản đó và chọn Mã Chế độ xem từ menu ngữ cảnh để mở Microsoft Visual Basic cho các ứng dụng và sau đó thay thế mã gốc bằng mã VBA sau vào mô-đun trống:

Mã VBA: Thay đổi màu hộp văn bản dựa trên giá trị trong hộp văn bản:

Private Sub TextBox1_Change()
    On Error Resume Next
    Select Case TextBox1.Value
        Case 1 To 10:
            TextBox1.BackColor = vbRed
        Case 11 To 20:
            TextBox1.BackColor = vbGreen
        Case Else:
            TextBox1.BackColor = vbYellow
    End Select
End Sub

màu hộp văn bản doc dựa trên giá trị 4

Chú thích: Trong đoạn mã trên, Hộp văn bản1 là tên của hộp văn bản bạn đã chèn và bạn có thể thay đổi các giá trị và màu nền trong mã theo ý mình.

2. Sau đó, lưu và đóng cửa sổ mã, và thoát khỏi Chế độ thiết kếBây giờ, nếu bạn nhập giá trị từ 1 đến 10 vào hộp văn bản, màu nền của nó sẽ trở thành màu đỏ, giá trị từ 11 đến 20, màu nền của hộp văn bản sẽ trở thành màu xanh lá cây, các giá trị khác, nó sẽ trở thành màu vàng như ảnh chụp màn hình sau:

màu hộp văn bản doc dựa trên giá trị 5


Các bài liên quan:

Làm thế nào để chèn hình ảnh vào hộp văn bản?

Làm cách nào để đặt giá trị mặc định trong hộp văn bản?

Làm cách nào để chỉ cho phép nhập số vào hộp văn bản?

Làm thế nào để áp dụng kiểm tra chính tả trong hộp văn bản?


Các công cụ năng suất văn phòng tốt nhất

Kutools cho Excel giải quyết hầu hết các vấn đề của bạn và tăng 80% năng suất của bạn

  • Tái sử dụng: Chèn nhanh công thức phức tạp, biểu đồ và bất cứ thứ gì bạn đã sử dụng trước đây; Mã hóa ô với mật khẩu; Tạo danh sách gửi thư và gửi email ...
  • Thanh siêu công thức (dễ dàng chỉnh sửa nhiều dòng văn bản và công thức); Bố cục đọc (dễ dàng đọc và chỉnh sửa số lượng ô lớn); Dán vào Dải ô đã Lọchữu ích. Cảm ơn !
  • Hợp nhất các ô / hàng / cột mà không làm mất dữ liệu; Nội dung phân chia ô; Kết hợp các hàng / cột trùng lặp... Ngăn chặn các ô trùng lặp; So sánh các dãyhữu ích. Cảm ơn !
  • Chọn trùng lặp hoặc duy nhất Hàng; Chọn hàng trống (tất cả các ô đều trống); Tìm siêu và Tìm mờ trong Nhiều Sổ làm việc; Chọn ngẫu nhiên ...
  • Bản sao chính xác Nhiều ô mà không thay đổi tham chiếu công thức; Tự động tạo tài liệu tham khảo sang Nhiều Trang tính; Chèn Bullets, Hộp kiểm và hơn thế nữa ...
  • Trích xuất văn bản, Thêm Văn bản, Xóa theo Vị trí, Xóa không gian; Tạo và In Tổng số phân trang; Chuyển đổi giữa nội dung ô và nhận xéthữu ích. Cảm ơn !
  • Siêu lọc (lưu và áp dụng các lược đồ lọc cho các trang tính khác); Sắp xếp nâng cao theo tháng / tuần / ngày, tần suất và hơn thế nữa; Bộ lọc đặc biệt bằng cách in đậm, in nghiêng ...
  • Kết hợp Workbook và WorkSheets; Hợp nhất các bảng dựa trên các cột chính; Chia dữ liệu thành nhiều trang tính; Chuyển đổi hàng loạt xls, xlsx và PDFhữu ích. Cảm ơn !
  • Hơn 300 tính năng mạnh mẽ. Hỗ trợ Office / Excel 2007-2021 và 365. Hỗ trợ tất cả các ngôn ngữ. Dễ dàng triển khai trong doanh nghiệp hoặc tổ chức của bạn. Đầy đủ tính năng Dùng thử miễn phí 30 ngày. Bảo đảm hoàn lại tiền trong 60 ngày.
tab kte 201905

Tab Office mang lại giao diện Tab cho Office và giúp công việc của bạn trở nên dễ dàng hơn nhiều

  • Cho phép chỉnh sửa và đọc theo thẻ trong Word, Excel, PowerPoint, Publisher, Access, Visio và Project.
  • Mở và tạo nhiều tài liệu trong các tab mới của cùng một cửa sổ, thay vì trong các cửa sổ mới.
  • Tăng 50% năng suất của bạn và giảm hàng trăm cú nhấp chuột cho bạn mỗi ngày!
officetab dưới cùng
Nhận xét (3)
Chưa có xếp hạng. Hãy là người đầu tiên xếp hạng!
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Ai đó có thể cung cấp một sổ làm việc ví dụ để tôi có thể thấy nó hoạt động không? Tôi tiếp tục cố gắng nhưng vô ích. Thanks
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Đối với tôi, khi cố gắng thay đổi giá trị màu của hộp văn bản dựa trên hai giá trị ô, hộp văn bản chỉ cập nhật nếu bạn nhập nội dung nào đó vào hộp văn bản. Tôi cần nó để cập nhật tự động. Đoán rằng tôi sẽ phải học VBA để tìm ra lý do tại sao.
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Không sao đâu, tôi đã đoán ra. Thay vì tạo sự kiện kích hoạt thay đổi "Textbox1_GotFocus ()", tôi đã đặt nó thành "Worksheet_SelectionChange (ByVal Target As Range)". Bây giờ, bất kỳ lúc nào giá trị trong một trong các ô thay đổi, màu của hộp văn bản sẽ tự động thay đổi.
Không có bình luận nào được đăng ở đây
Để 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