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

Làm thế nào để áp dụng gradient màu trên nhiều ô?

Trong Excel, chúng ta có thể dễ dàng tô màu nền vào một ô hoặc nhiều ô, nhưng, đôi khi, chúng ta cần tô màu gradient như hình minh họa dưới đây, làm cách nào để có được gradient màu trong một ô hoặc trên nhiều ô trong Excel?

Gradient màu thành một ô Gradient màu trên nhiều ô
doc màu gradient 1 doc màu gradient 2

Áp dụng màu gradient cho một ô với tính năng Định dạng ô

Áp dụng màu chuyển sắc trên nhiều ô với mã VBA


mũi tên màu xanh bong bóng bên phải Áp dụng màu gradient cho một ô với tính năng Định dạng ô

Trong Excel, tính năng Định dạng Ô có thể giúp bạn tô màu gradient trong một ô, vui lòng thực hiện như sau:

1. Chọn một ô hoặc nhiều ô mà bạn muốn tô màu gradient cho mỗi ô, sau đó bấm chuột phải để chọn Format Cells từ menu ngữ cảnh, trong Format Cells hộp thoại, bên dưới Điền hãy nhấp vào Hiệu ứng tô màu nút, xem ảnh chụp màn hình:

doc màu gradient 3

2. Trong Hiệu ứng tô màu hộp thoại, chọn hai màu mà bạn muốn sử dụng từ hai danh sách thả xuống Màu sắc và sau đó chọn một kiểu tô bóng tùy thích, chẳng hạn như ngang, dọc, v.v. Xem ảnh chụp màn hình:

doc màu gradient 4

3. Sau đó nhấn vào OK > OK để đóng hộp thoại và màu gradient được tô cho mỗi ô như ảnh chụp màn hình sau:

doc màu gradient 5


mũi tên màu xanh bong bóng bên phải Áp dụng màu chuyển sắc trên nhiều ô với mã VBA

Phương pháp trên có thể giúp chúng ta tô màu gradient trong từng ô riêng lẻ, nếu bạn cần tô màu gradient trên nhiều ô, bạn cần áp dụng mã VBA để giải quyết nó.

1. Đầu tiên, hãy tô một màu nền cụ thể vào một dải ô.

2. Giữ ALT + F11 phím để mở Microsoft Visual Basic cho các ứng dụng cửa sổ.

3. Nhấp chuột Chèn > Mô-đunvà dán mã sau vào Mô-đun Cửa sổ.

Mã VBA: Áp dụng màu gradient trên nhiều ô:

Sub colorgradientmultiplecells()
'Updateby Extendoffcie 
    Dim xRg As Range
    Dim xTxt As String
    Dim xCell As Range
    Dim xColor As Long
    Dim I As Long
    Dim K As Long
    Dim xCount As Long
    On Error Resume Next
    If ActiveWindow.RangeSelection.Count > 1 Then
      xTxt = ActiveWindow.RangeSelection.AddressLocal
    Else
      xTxt = ActiveSheet.UsedRange.AddressLocal
    End If
LInput:
    Set xRg = Application.InputBox("please select the cells range:", "Kutools for Excel", xTxt, , , , , 8)
    If xRg Is Nothing Then Exit Sub
    If xRg.Areas.Count > 1 Then
        MsgBox "does not support multiple selections", vbInformation, "Kutools for Excel"
        GoTo LInput
    End If
    On Error Resume Next
    Application.ScreenUpdating = False
    xCount = xRg.Rows.Count
    For K = 1 To xRg.Columns.Count
        xColor = xRg.Cells(1, K).Interior.Color
        For I = xCount To 1 Step -1
            xRg.Cells(I, K).Interior.Color = xColor
            xRg.Cells(I, K).Interior.TintAndShade = (xCount - (I - 1)) / xCount
        Next
    Next
End Sub

4. Sau đó nhấn F5 để chạy mã này và một hộp nhắc xuất hiện để nhắc bạn chọn các ô màu mà bạn muốn tô màu gradient, xem ảnh chụp màn hình:

 

doc màu gradient 6

5. Và sau đó nhấp vào OK , màu trong nhiều ô đã hiển thị dưới dạng màu chuyển sắc, xem ảnh chụp màn hình:

 

doc màu gradient 7


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 (22)
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
Làm thế nào để tôi có được điều này để có gradient đi từ trái sang phải?
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, Sean,
Để áp dụng gradient màu từ trái sang phải, vui lòng sử dụng mã VBA sau:

Sub colorgradientmultiplecells ()
Dim xRg theo phạm vi
Làm mờ xTxt dưới dạng chuỗi
Dim xCell As Range
Dim xColor As Long
Dim I As Long
Mờ K Như Lâu
Dim xCount As Long
On Error Resume Next
Nếu ActiveWindow.RangeSelection.Count> 1 Thì
xTxt = ActiveWindow.RangeSelection.AddressLocal
Khác
xTxt = ActiveSheet.UsedRange.AddressLocal
Cuối Nếu
Đầu vào:
Đặt xRg = Application.InputBox ("vui lòng chọn phạm vi ô:", "Kutools cho Excel", xTxt,,,,, 8)
Nếu xRg không có gì thì thoát Sub
Nếu xRg.Areas.Count> 1 Thì
MsgBox "không hỗ trợ nhiều lựa chọn", vbInformation, "Kutools cho Excel"
GoTo LInput
Cuối Nếu
On Error Resume Next
Application.ScreenUpdating = Sai
xCount = xRg.Columns.Count
Đối với K = 1 Đến xRg.Rows.Count
xColor = xRg.Cells (K, 1) .Interior.Color
Đối với I = xCount Tới 1 Bước -1
xRg.Cells (K, I) .Interior.Color = xColor
xRg.Cells (K, I) .Interior.TintAndShade = (xCount - (I - 1)) / xCount
Sau
Sau
End Sub

Hy vọng nó có thể giúp bạn, 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
Làm thế nào để làm điều này nếu tôi muốn nó từ trên cùng bên trái đến dưới cùng bên phải gradient?
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Có thể đăng mã có độ dốc từ trên xuống dưới không? Tôi thực sự sẽ đánh giá cao 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 sẽ cần mã từ bóng tối nhất ở trên cùng đến bóng sáng hơn ở dưới cù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 Laura,
Để hoàn thành nhiệm vụ của bạn, vui lòng áp dụng mã folloiwng:

Sub colorgradientmultiplecells ()

'Updateby Extendoffcie

Dim xRg theo phạm vi

Làm mờ xTxt dưới dạng chuỗi

Dim xCell As Range

Dim xColor As Long

Dim I As Long

Mờ K Như Lâu

Dim xCount As Long

On Error Resume Next

Nếu ActiveWindow.RangeSelection.Count> 1 Thì

xTxt = ActiveWindow.RangeSelection.AddressLocal

Khác

xTxt = ActiveSheet.UsedRange.AddressLocal

Cuối Nếu

Đầu vào:

Đặt xRg = Application.InputBox ("vui lòng chọn phạm vi ô:", "Kutools cho Excel", xTxt,,,,, 8)

Nếu xRg không có gì thì thoát Sub

Nếu xRg.Areas.Count> 1 Thì

MsgBox "không hỗ trợ nhiều lựa chọn", vbInformation, "Kutools cho Excel"

GoTo LInput

Cuối Nếu

On Error Resume Next

Application.ScreenUpdating = Sai

xCount = xRg.Rows.Count

Đối với K = 1 Đến xRg.Columns.Count

xColor = xRg.Cells (1, K) .Interior.Color

Đối với I = xCount Tới 1 Bước -1

xRg.Cells (I, K) .Interior.Color = xColor

xRg.Cells (I, K) .Interior.TintAndShade = I / xCount

Sau

Sau

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
Làm cách nào để tạo mã chuyển từ phải sang trá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, Ashley,
Để làm cho màu gradient từ phải sang trái, đoạn mã vba sau đây có thể giúp bạn, hãy thử xem.

Sub colorgradientmultiplecells ()
Dim xRg theo phạm vi
Làm mờ xTxt dưới dạng chuỗi
Dim xCell As Range
Dim xColor As Long
Dim I As Long
Mờ K Như Lâu
Dim xCount As Long
On Error Resume Next
Nếu ActiveWindow.RangeSelection.Count> 1 Thì
xTxt = ActiveWindow.RangeSelection.AddressLocal
Khác
xTxt = ActiveSheet.UsedRange.AddressLocal
Cuối Nếu
Đầu vào:
Đặt xRg = Application.InputBox ("vui lòng chọn phạm vi ô:", "Kutools cho Excel", xTxt,,,,, 8)
Nếu xRg không có gì thì thoát Sub
Nếu xRg.Areas.Count> 1 Thì
MsgBox "không hỗ trợ nhiều lựa chọn", vbInformation, "Kutools cho Excel"
GoTo LInput
Cuối Nếu
On Error Resume Next
Application.ScreenUpdating = Sai
xCount = xRg.Columns.Count
Đối với K = 1 Đến xRg.Rows.Count
xColor = xRg.Cells (K, 1) .Interior.Color
Đối với I = xCount Tới 1 Bước -1
xRg.Cells (K, I) .Interior.Color = xColor
xRg.Cells (K, I) .Interior.TintAndShade = I / xCount
Sau
Sau
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
Có thể thực hiện gradient này nhưng từ dưới cùng bên trái sang trên cùng bên phả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
này, tôi không quen với mã VBA. Làm cách nào để đặt màu khác trong mã?
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, paul,
Nếu bạn muốn đặt một màu khác, bạn chỉ cần điền màu mong muốn của mình vào các ô, sau đó áp dụng mã trên trong bài viết này.
Hãy thử 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! nó 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
Tại sao tôi chọn màu Đen-Trắng thay thế màu gradient của tôi
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, Piyaphan,
Đoạn mã trên hoạt động tốt trong trang tính của tôi, bạn sử dụng phiên bản Excel nào?
Hoặc bạn có thể cung cấp cho vấn đề của bạn chi tiết hơn.
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
Xin chào! Tôi có cùng một vấn đề, tôi chọn màu cho gradient của mình nhưng khi áp dụng mã, nó chuyển thành gradient đen sang trắng. Bất kỳ giúp đỡ ?? cảm ơ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, làm cách nào để tôi có thể chuyển từ màu vàng sang màu đỏ (ví dụ)? Nó chỉ hoạt động từ Màu trắng sang màu khác. Tôi làm việc với mã từ trái sang phải.
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, Jasmin,
Xin lỗi vì điều đó, mã này chỉ áp dụng cho một màu, và nếu bạn muốn tô gradient từ trái sang chặt chẽ, bình luận bên dưới có giải pháp, vui lòng kiểm tra nó.
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
Xin chào, Bạn có thể áp dụng điều này cho một phạm vi như 1 đến 5, các ô có một số trong đó, có 5 là ô tối nhất không?

Liệu Kutools có thể làm một chút tương tự như trên, nhưng sau đó sắp xếp một hàng số thành một thang điểm - không giỏi giải thích. Nói một câu trả lời khảo sát trên thang điểm từ 1 đến 5, sau đó hiển thị đồ thị một thanh cho mỗi câu hỏi hiển thị phần trăm câu trả lời trong 1, 2, 3, 4, 5; 5% 1's, 10% 2's 15% 3's và 50% 4's, 20% 5's nhưng hiển thị một dải màu trong thanh ngang (tốt hơn nếu 2 màu).

Cảm ơn, Gord
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 đã thử sao chép mã VBA nhưng khi tôi cố gắng chạy nó, tôi tiếp tục nhận được thông báo 'Lỗi biên dịch: Quy trình bên ngoài không hợp lệ' ....


Làm cách nào để sửa lỗi này ??


Cảm ơ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, Bạn có thể áp dụng điều này cho một phạm vi như 1 đến 5, các ô có một số trong đó, có 5 là ô tối nhất không?
Liệu Kutools có thể làm một chút tương tự như trên, nhưng sau đó sắp xếp một hàng số thành một thang điểm - không giỏi giải thích. Nói một câu trả lời khảo sát trên thang điểm từ 1 đến 5, sau đó hiển thị một thanh trên mỗi câu hỏi bằng biểu đồ hiển thị phần trăm câu trả lời trong 1, 2, 3, 4, 5; 5% 1's, 10% 2's 15% 3's và 50% 4's, 20% 5's nhưng hiển thị một dải màu trong thanh ngang (tốt hơn nếu 2 màu).
Cảm ơn, Gord
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, Làm thế nào tôi có thể áp dụng công thức này cho hai màu, ở trên tôi không thể xem dung dịch de. Làm hài lò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,

Ich habe zu erst den ersten code verwendet, das funktioniert aber leider nicht. der färbt nur einzelne Zellen und die in komplett anderen Farben. Der Code für dunkel oben nach hell unten funktioniert gar nicht bei mir. Da kommt immer ein Lỗi cú pháp. Gibt es noch andere möglichkeiten einen Farbverlauf über mehrere Zellen zu erschaffen oder gibt es da eine andere Lösung für mich?

Vielen lieben Dank vorab schon mal.
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