Code tìm bảng màu mã 49407

Liên hệ QC

NguyenthiH

Thành viên mới đăng ký
Tham gia
11/12/16
Bài viết
946
Được thích
172
Điểm
418
Giới tính
Nữ
Chào các anh chi!!!!
Em có thấy các anh chị viết code cho em. Lúc thì
Mã:
Range("A" & k + 5).Resize(, 5).Interior.ColorIndex = 6
Lúc thì:
Mã:
Range("G" & k + 5).Resize(, 5).Interior.Color = 49407
Bảng mà màu ColorIndex thì em tìm ra được (từ 1 tới 56).
Còn bảng mã màu Color = 49407 thì em tìm không ra.
Vậy các anh chị có thể cho em bảng mã màu của 49407 với.
Và tại sao khi dùng ColorIndex, khi nào dùng Color.
Em câm ơn ạ.
 
Cái mã đó là lấy được khi ghi macro tô màu bằng các màu trên bảng màu có sẵn của excel thôi. VBA chỉ có các hằng màu nội tại như vbRed, vbBlue...
 
Upvote 0
Trong VBA các đối tượng nhận mã màu có 3 kiểu nhận màu sắc:
1. ColorIndex - nhận vị trí màu sắc được định nghĩa mặc định các giá trị màu không đổi từ 1 đến 56
2. Color - nhận giá trị màu trong khoảng #FF000000 đến #FFFFFF (Hệ Hexadecimal) tức là -16777216 đến 16777215 đơn vị màu sắc (Hệ thập phân).
3. RGB - nhận giá trị màu trong khoảng Red, Green, Blue tức tương ứng là đỏ, lục lam, với giải màu từ (0 - 255).

Bạn sẽ thấy Color nhận tất cả màu sắc. ColorIndex chỉ nhận 56 màu sắc.
Với ColorIndex giúp bạn chọn màu sắc nhanh hơn, mà không cần bỏ nhiều công sức lựa chọn. Và não bộ của bạn cũng dễ ghi nhớ hơn.
Với Color dành cho những người yêu cái nhìn trực quan hơn, khiến giao diện người dùng bát mắt hơn.
Với RGB, nếu bạn có kiến thức pha trộn màu thì sử dụng RGB là hợp với bạn.
 
Lần chỉnh sửa cuối:
Upvote 0
Khi muốn tô màu ô nào đó (ví dụ ô B1), theo 1 ô mẫu (ví dụ ô A1).
Màu ô A1 có thể thuộc 1/56 màu căn bản, hoặc có thể được chọn từ bảng pha màu bất kỳ.
Còn mã màu lấy ra từ ô A1 bằng cách tại cửa sổ imediate windoww gõ:
?[A1].interior.color
hoặc code lấy giá trị color A1 dán vào cell A2:
range("A2").value = range("A1").interior.color
=49407
sau đó gán color cho ô muốn gán:
Range("G" & k + 5).Resize(, 5).Interior.Color = 49407
Chứ bình thường khó hình dung được 49407 là màu gì.
 
Upvote 0
Ối dời. Giờ này mà đi trộn màu... thì có mà

lên color picker chọn là xong thôi. @@


1678242961454.png
 
Upvote 0
Ý em là sao biết màu đó là 49407, cách anh @bebo021999 đã chỉ, còn của anh @befaint thì biết số màu nó là gì để tô anh?
Trong bảng màu RGB thì màu nó có cả chữ và số nữa.
 
Upvote 0
@bebo021999 nếu gán trong VBA thì phải biết số mấy để tô chứ anh.
 
Upvote 0
Giời ơi. Không phải thế.

Đầu tiên, mình vào color picker, chọn màu như để tô son/ trang điểm ấy.


1678250695750.png

Chọn được màu iêu thích thì copy lấy cái thông số RGB cho đơn giản nhất.

Rồi chép vào như code này là xong rồi.

1678250619957.png
 
Upvote 0
Giời ơi. Không phải thế.

Đầu tiên, mình vào color picker, chọn màu như để tô son/ trang điểm ấy.
...
Chọn được màu iêu thích thì copy lấy cái thông số RGB cho đơn giản nhất.

Rồi chép vào như code này là xong rồi.
...
Đó là cách tôi được dạy (tôi đi dự hội nghị và học chuyên nghiệp nhiều lắm. Tôi học từ đây chứ không phải từ mấy cái kênh du-tuýp)
Tuy nhiên, người dạy tôi cũng cẩn thận thêm hai câu:
1. Cái màu mình thấy là theo màn hình của mình. Qua màn hình khác có thể nó không "dẹp" và "nhìn rõ" như vậy. Nhất là lỗi hiển thị màu của Mẽo còn tùy thuộc vào cai "hue" (độ bóng?), khác với Âu châu.
2. Muốn chọn màu tự động (kiểu tô nhiều màu, cần theo điều kiện hai chỗ khác nhau thì phải màu khác biệt nhau) thì có con tính khá phức tạp - và... không nằm trong khóa học này.
 
Upvote 0
@bebo021999 nếu gán trong VBA thì phải biết số mấy để tô chứ anh.
Tôi có viết một ứng dụng gọi là ColorPicker dành cho VBE, bạn có thể tham khảo

Bảng chọn màu.jpg

 
Upvote 0
Từ từ, tôi sẽ viết trong chủ đề User form nâng cao (đang viết căn bản chưa xong) cách tạo và chọn theme màu.
Thí dụ chọn theme có sẵn: Đang là theme Light Rose, chọn Light Green:

1678265192887.png

Tạo theme mới:

1678290907374.png

Bảng màu yêu thích lưu trong sheet:

1678290977742.png

Khi hoàn thiện sẽ có nút chọn theme cho tất cả user forms:

1678586258770.png

Thậm chí thiết lập ngôn ngữ cho tất cả form:

1678265861098.png

Sau khi thiết lập:

1678266221336.png
 
Lần chỉnh sửa cuối:
Upvote 0
Web KT
Back
Top