Tìm kiểu màu trong danh sách.

Quảng cáo

ptm0412

Bad Excel Member
Thành viên BQT
Super Moderator
Tham gia ngày
4 Tháng mười một 2007
Bài viết
10,518
Được thích
30,886
Điểm
9,718
Tuổi
59
Nơi ở
Gò Vấp

emgaimuarao

Thành viên hoạt động
Tham gia ngày
30 Tháng chín 2016
Bài viết
116
Được thích
29
Điểm
118
Cháu có bài tập số 5: Điền tên vào ô có điều kiện. Mong các chú các bác và các anh chị giúp cháu với ạ!
dienten.jpg
 

File đính kèm

  • dienten.xlsm
    12.2 KB · Đọc: 8

ptm0412

Bad Excel Member
Thành viên BQT
Super Moderator
Tham gia ngày
4 Tháng mười một 2007
Bài viết
10,518
Được thích
30,886
Điểm
9,718
Tuổi
59
Nơi ở
Gò Vấp
Cháu có bài tập số 5: Điền tên vào ô có điều kiện. Mong các chú các bác và các anh chị giúp cháu với ạ!
Phải tự suy nghĩ chứ đâu có khó
PHP:
Sub CheckNote()
Dim Dict, SData As Range, RArr(), Sample As Range
Dim LastRw As Long, sKey As String, DataRows As Long
Set Dict = CreateObject("Scripting.Dictionary")
Set Sample = Range("I5:K8")
For i = 1 To Sample.Rows.Count
    sKey = Sample(i, 1).Interior.Color & _
    "|" & Sample(i, 2).Interior.Color & _
    "|" & Sample(i, 3).Interior.Color
    Dict.Add sKey, i
Next
LastRw = Cells(1000, 2).End(xlUp).Row
Set SData = Range("C5:E" & LastRw)
DataRows = SData.Rows.Count
ReDim RArr(1 To DataRows, 1 To 1)
For i = 1 To DataRows
    sKey = SData(i, 1).Interior.Color & _
    "|" & SData(i, 2).Interior.Color & _
    "|" & SData(i, 3).Interior.Color
    If Dict.exists(sKey) Then RArr(i, 1) = "Yes"
Next
Range("F5:F1000").ClearContents
Range("F5").Resize(UBound(RArr, 1), 1).Value = RArr

End Sub
 

emgaimuarao

Thành viên hoạt động
Tham gia ngày
30 Tháng chín 2016
Bài viết
116
Được thích
29
Điểm
118
Phải tự suy nghĩ chứ đâu có khó
PHP:
Sub CheckNote()
Dim Dict, SData As Range, RArr(), Sample As Range
Dim LastRw As Long, sKey As String, DataRows As Long
Set Dict = CreateObject("Scripting.Dictionary")
Set Sample = Range("I5:K8")
For i = 1 To Sample.Rows.Count
    sKey = Sample(i, 1).Interior.Color & _
    "|" & Sample(i, 2).Interior.Color & _
    "|" & Sample(i, 3).Interior.Color
    Dict.Add sKey, i
Next
LastRw = Cells(1000, 2).End(xlUp).Row
Set SData = Range("C5:E" & LastRw)
DataRows = SData.Rows.Count
ReDim RArr(1 To DataRows, 1 To 1)
For i = 1 To DataRows
    sKey = SData(i, 1).Interior.Color & _
    "|" & SData(i, 2).Interior.Color & _
    "|" & SData(i, 3).Interior.Color
    If Dict.exists(sKey) Then RArr(i, 1) = "Yes"
Next
Range("F5:F1000").ClearContents
Range("F5").Resize(UBound(RArr, 1), 1).Value = RArr

End Sub
Cháu sửa các code cũ trong Thớt, đến chỗ tạo skey từ Sdata, nó báo lỗi và vốn " từ vựng vba" còn ít nên người và máy chưa hiểu được nhau.
Code bài #83 có thêm nhiều "từ vựng vba" mới nếu không phải bậc thầy không tạo ra nổi đoạn code trên.
Không biết nói gì hơn. Chỉ biết cảm ơn chú nhiều lắm ạ.Chùm code này trong Thớt này quý giá quá chú ạ. Dict và Arr liên quan nhuần nhuyễn dễ thẩm thấu.
 
Lần chỉnh sửa cuối:

ptm0412

Bad Excel Member
Thành viên BQT
Super Moderator
Tham gia ngày
4 Tháng mười một 2007
Bài viết
10,518
Được thích
30,886
Điểm
9,718
Tuổi
59
Nơi ở
Gò Vấp
Cháu sửa các code cũ trong Thớt, đến chỗ tạo skey từ Sdata, nó báo lỗi và vốn " từ vựng vba" còn ít nên người và máy chưa hiểu được nhau.
Code bài #83 có thêm nhiều "từ vựng vba" mới nếu không phải bậc thầy không tạo ra nổi đoạn code trên.
- Lỗi gì khi tạo skey?
- Từ vựng nào mới?
 

VetMini

Chuyên gia GPE
Tham gia ngày
21 Tháng mười hai 2012
Bài viết
11,031
Được thích
13,681
Điểm
4,868
Bài tập này ở đâu ra vậy?
1. Nếu ở trường nào đó thì nghỉ học đi. Trường này dạy đồ trên trời, không thực dụng chút nào cả.
2. Néu tự ra cho mình làm thì quên đi. Loại bày này học nhiều mà thu thập kiến thức rất hẹp (có thể rất sâu nhưng rất hẹp)

Sâu: đi sâu vào bên trong, đến tận gốc.
Hẹp: kiến thức nhặt trong đường đi rất đăc thù, chả sử dụng được vào các trường hợp khác.

Đối với người mới học code, chiều rộng quna trọng hơn chiều sâu. Vì học sâu úa mà không có chỗ ứng dụng thì một thời gian sẽ hoặc tẩu mã hoặc quên béng hết.
Tôi chỉ nói chiều rộng quan trọng hơn thôi chứ chiều sâu cần phải biết chút đỉnh. Không đủ chiều sâu thì rất dễ bị sai.
 

emgaimuarao

Thành viên hoạt động
Tham gia ngày
30 Tháng chín 2016
Bài viết
116
Được thích
29
Điểm
118
Bài tập này ở đâu ra vậy?
1. Nếu ở trường nào đó thì nghỉ học đi. Trường này dạy đồ trên trời, không thực dụng chút nào cả.
2. Néu tự ra cho mình làm thì quên đi. Loại bày này học nhiều mà thu thập kiến thức rất hẹp (có thể rất sâu nhưng rất hẹp)

Sâu: đi sâu vào bên trong, đến tận gốc.
Hẹp: kiến thức nhặt trong đường đi rất đăc thù, chả sử dụng được vào các trường hợp khác.

Đối với người mới học code, chiều rộng quna trọng hơn chiều sâu. Vì học sâu úa mà không có chỗ ứng dụng thì một thời gian sẽ hoặc tẩu mã hoặc quên béng hết.
Tôi chỉ nói chiều rộng quan trọng hơn thôi chứ chiều sâu cần phải biết chút đỉnh. Không đủ chiều sâu thì rất dễ bị sai.
Nó là bài thiết kế cấu kiện bê tông cốt thép bác ạ. Tô màu là dạng giá trị thay đổi (khoảng giá trị mà ta đặt ra). Mỗi 1 trường tải trọng thì nội lực thay đổi. Hiện giá trị là màu sắc xem có thay đổi nhiều không. Để tiết kiệm, để đủ khả năng chịu lực. Cứ làm thì nó nảy ra vấn đề mới. Từ đó nó các dạng bài tập trong thớt. Từ đó trích lọc phân tích đánh giá dữ liệu của mình.
Dù sao may mà có các code của chú Mỹ không thì cháu cũng bế tắc. Mà dùng thuần excel file rất nặng vì thế cháu mới chuyển qua vba.
Bác nặng lời quá. Đúng là cháu mới bắt đầu đc 1 tháng. Nhưng vừa học mà ứng dụng vào việc của mình luôn thì quá may mắn. Theo cháu ứng dụng được rất nhiều. Bổ xung cho thớt về dict rất nhiều, nhiều người học về vba thì cũng gặp vấn đề như cháu thôi.
 

VetMini

Chuyên gia GPE
Tham gia ngày
21 Tháng mười hai 2012
Bài viết
11,031
Được thích
13,681
Điểm
4,868
Ứng dụng như vậy mà dùng màu là tự làm khó mình.
Nếu của mấy thằng kỹ sư công trình chúng bắt làm vậy thì là do tụi nó dốt về quản trị dữ liệu rồi bày đặt màu mè để che lấp cái lười học hỏi thêm của mình. Mà cái này thì trường hợp bạn chắc phải chịu thua. Tuy nhiên bạn phải tìm cách nói khéo với chúng là đòi hỏi này rất khó, và bạn phải nhờ nhiều chỗ mới thực hiện được. Nếu bạn ngại không nói là tự đặt mình vào thế cưỡi lưng cọp, về sau chúng ăn quen càng có nhiều đòi hỏi rất khó làm.
(hầu hết mấyb thằng kỹ sư công trình chỉ biết học uống rượu, cfhuws cải tiến tư duy suy nghĩ thì tụi nó có đầy đủ lý do để bảo vệ chủ quan. Chỉ khi nào bạn chức vụ cao hơn chúng mới có thể nói chuyện. Mấy cái này tôi thường không nói thẳng với chúng nó mà để cho sếp tôi nói chuyện với sếp của chúng)

Nặng lời: tôi nói chuyện luôn nặng lời như vậy. Không muốn thì cứ nói thẳng ra. Tôi hứa sẽ không động chạm đến bàu nào của bạn nữa.
Đừng nói giùm người khác "nhiều người học về vba thì cũng gặp vấn đề như cháu thôi". Ngwoif hiếu học không vì mấy lời nặng nhẹ mà để tâm. Giới trẻ ngày nay hay bị lẩm lẫn giữa "hiếu học" và "đam mê". Cái "hiếu học" là trường cửu (*), cái "đam mê" là nhất thời.

Và bạn nói "vừa học vừa ứng dụng vào công việc" là quá chủ quan. Bạn chỉ ứng dụng thôi, còn học thì xa lắm. Bằng chứng là nếu học được rồi thì bác kia đã không nói câu như bài #83, và hỏi lại trong bài #85.

(*) ngày xưa, con số hoàn hảo là số 9. Ngày nay, sự hoàn hảo thay đổi bằng sự thịnh vượng (số 8). Có lẽ quan niệm xã hội vì vậy mà không còn quý trọng "trường cửu"
 

emgaimuarao

Thành viên hoạt động
Tham gia ngày
30 Tháng chín 2016
Bài viết
116
Được thích
29
Điểm
118
Ứng dụng như vậy mà dùng màu là tự làm khó mình.
Nếu của mấy thằng kỹ sư công trình chúng bắt làm vậy thì là do tụi nó dốt về quản trị dữ liệu rồi bày đặt màu mè để che lấp cái lười học hỏi thêm của mình. Mà cái này thì trường hợp bạn chắc phải chịu thua. Tuy nhiên bạn phải tìm cách nói khéo với chúng là đòi hỏi này rất khó, và bạn phải nhờ nhiều chỗ mới thực hiện được. Nếu bạn ngại không nói là tự đặt mình vào thế cưỡi lưng cọp, về sau chúng ăn quen càng có nhiều đòi hỏi rất khó làm.
(hầu hết mấyb thằng kỹ sư công trình chỉ biết học uống rượu, cfhuws cải tiến tư duy suy nghĩ thì tụi nó có đầy đủ lý do để bảo vệ chủ quan. Chỉ khi nào bạn chức vụ cao hơn chúng mới có thể nói chuyện. Mấy cái này tôi thường không nói thẳng với chúng nó mà để cho sếp tôi nói chuyện với sếp của chúng)

Nặng lời: tôi nói chuyện luôn nặng lời như vậy. Không muốn thì cứ nói thẳng ra. Tôi hứa sẽ không động chạm đến bàu nào của bạn nữa.
Đừng nói giùm người khác "nhiều người học về vba thì cũng gặp vấn đề như cháu thôi". Ngwoif hiếu học không vì mấy lời nặng nhẹ mà để tâm. Giới trẻ ngày nay hay bị lẩm lẫn giữa "hiếu học" và "đam mê". Cái "hiếu học" là trường cửu (*), cái "đam mê" là nhất thời.

Và bạn nói "vừa học vừa ứng dụng vào công việc" là quá chủ quan. Bạn chỉ ứng dụng thôi, còn học thì xa lắm. Bằng chứng là nếu học được rồi thì bác kia đã không nói câu như bài #83, và hỏi lại trong bài #85.

(*) ngày xưa, con số hoàn hảo là số 9. Ngày nay, sự hoàn hảo thay đổi bằng sự thịnh vượng (số 8). Có lẽ quan niệm xã hội vì vậy mà không còn quý trọng "trường cửu"
Cháu có học chứ ạ. Bác yêu cầu cao thôi mỗi người một khả năng và tu vi khác nhau. Đấy chưa gì bác đã bảo không đụng vào bài nào của cháu. Bác là người có ảnh hưởng trong diễn đàn, bác mắng rồi không chỉ là cháu thiệt lắm rồi. Giờ các chú bác khác nhìn vào không rõ thực hư. Là cháu bắt đền bác đấy.
 

ptm0412

Bad Excel Member
Thành viên BQT
Super Moderator
Tham gia ngày
4 Tháng mười một 2007
Bài viết
10,518
Được thích
30,886
Điểm
9,718
Tuổi
59
Nơi ở
Gò Vấp
Tôi đoán những bài này có liên quan đến thiết kế nội lực trong xây dựng, nhưng từ đầu đến giờ toàn nói là "bài tập". Phía trên xa bác @VetMini cũbg đã nói là không nên dùng màu để thay thế cho dữ liệu, và tôi cũng nhắc lại ý đó 1 lần: Màu chỉ có thể minh hoạ cho dữ liệu chứ không được phép thay thế dữ liệu.
Theo hiểu biết ít ỏi của tôi về thiết kế xây dựng thì sẽ có những mẫu theo tiêu chuẩn kỹ thuật khác nhau (*) và phải tuân theo (phải áp dụng trong thiết kế). Sau đó sẽ có màn thống kê theo các tiêu chuẩn này. Mỗi tiêu chuẩn sẽ có những thông số kỹ thuật đặc trưng và ở đây là 3 thông số. Ba thông số này sao không cứ để nguyên là số, rồi tô màu theo yêu cầu cấp trên hoặc theo ý thích thì tính sau.

(*) Tiêu chuẩn kỹ thuật:
- TCVN3, tiêu chuẩn châu Âu, tiêu chuẩn Mỹ, ...
- Tiêu chuẩn riêng biệt cho từng khoảng kích thước của cấu kiện
- ...
Các tiêu chuẩn này luôn luôn có những thông số.
 

VetMini

Chuyên gia GPE
Tham gia ngày
21 Tháng mười hai 2012
Bài viết
11,031
Được thích
13,681
Điểm
4,868
Tôi đoán những bài này có liên quan đến thiết kế nội lực trong xây dựng, ...
Gốc của tôi là kỹ sư công nghệ (Industrial Engineering, học ở VN). Kỹ sư công chánh (Civil Engineering, học ở ngoại quốc). Tôi làm nhiều năm trong những ngành nghề này trước khi chuyển qua CNTT.
 

ptm0412

Bad Excel Member
Thành viên BQT
Super Moderator
Tham gia ngày
4 Tháng mười một 2007
Bài viết
10,518
Được thích
30,886
Điểm
9,718
Tuổi
59
Nơi ở
Gò Vấp
Gốc của tôi là kỹ sư công nghệ (Industrial Engineering, học ở VN). Kỹ sư công chánh (Civil Engineering, học ở ngoại quốc). Tôi làm nhiều năm trong những ngành nghề này trước khi chuyển qua CNTT.
Gốc của tôi là kế toán. Kế toán các công ty ngành nghề khác nhau thì lượm lặt mỗi ngành nghề 1 ít. Khi chuyển sang làm phân tích thiết kế phần mềm thì lượm lặt thêm 1 ít khác từ các đối tác ngành nghề khác nhau
 

VetMini

Chuyên gia GPE
Tham gia ngày
21 Tháng mười hai 2012
Bài viết
11,031
Được thích
13,681
Điểm
4,868
Rốt cuộc thì đã rõ rồi. Phương pháp truyền đạt kiến thức của tôi không thích hợp với thớt.
Tôi xin dừng ở đây. Hết.
 

emgaimuarao

Thành viên hoạt động
Tham gia ngày
30 Tháng chín 2016
Bài viết
116
Được thích
29
Điểm
118
Cháu có ông bác nay ngoài 70 tuổi. Từ nhiều năm trước bác và những người bạn đầu bạc năm nào cũng đi chúc tết thầy giáo hơn 20 tuổi mà cháu luôn thấy ấn tượng về tình cảm đó. Nửa chữ cũng là thầy cháu luôn trân trọng sự giúp đỡ của các chú bác trên diễn đàn. Lấy lòng đã khó làm phật ý thì cực biết mấy.
Quả thật còng lưng cả tháng, đau lưng lan xuống cẳng mà vẫn chỉ sao chép lại code. Với sự giúp đỡ của chú Mỹ cháu chế đc đến 40 sub,nhưng còn nhiều nữa không biết có chế thêm đc không.
 
Lần chỉnh sửa cuối:

Hoàng Tuấn 868

Thành viên tích cực
Tham gia ngày
9 Tháng mười một 2019
Bài viết
1,236
Được thích
914
Điểm
468
Cháu có ông bác nay ngoài 70 tuổi. Từ nhiều năm trước bác và những người bạn đầu bạc năm nào cũng đi chúc tết thầy giáo hơn 20 tuổi mà cháu luôn thấy ấn tượng về tình cảm đó. Nửa chữ cũng là thầy cháu luôn trân trọng sự giúp đỡ của các chú bác trên diễn đàn. Lấy lòng đã khó làm phật ý thì cực biết mấy.
Quả thật còng lưng cả tháng, đau lưng lan xuống cẳng mà vẫn chỉ sao chép lại code. Với sự giúp đỡ của chú Mỹ cháu chế đc đến 40 sub và nhưng còn nhiều nữa không biết có chế thêm đc không.
Có một số bài của bạn mình đã thử và cũng cảm thấy kết quả ổn, nhưng với ngôn ngữ giao tiếp của bạn mình thấy cũng không phù hợp với mình nên chỉ đứng ngoài thôi.
 

ptm0412

Bad Excel Member
Thành viên BQT
Super Moderator
Tham gia ngày
4 Tháng mười một 2007
Bài viết
10,518
Được thích
30,886
Điểm
9,718
Tuổi
59
Nơi ở
Gò Vấp
Lấy lòng đã khó làm phật ý thì cực biết mấy.
Chẳng cần lấy lòng gì đâu, đối với những người đã từng giúp (hoặc dạy) mà mình có tôn trọng thì khi bị mắng, trách, chê, .. phải vui vẻ mà nhận để mà rút kinh nghiệm, đừng trả lời vòng vo hoặc biện minh các kiểu. Những người lớn có kinh nghiệm họ thấy hết không nói sai đâu.
Gì mà "mẹ chưa đánh roi nào đã khóc" (thơ)
 

emgaimuarao

Thành viên hoạt động
Tham gia ngày
30 Tháng chín 2016
Bài viết
116
Được thích
29
Điểm
118
Rốt cuộc thì đã rõ rồi. Phương pháp truyền đạt kiến thức của tôi không thích hợp với thớt.
Tôi xin dừng ở đây. Hết.
Có một số bài của bạn mình đã thử và cũng cảm thấy kết quả ổn, nhưng với ngôn ngữ giao tiếp của bạn mình thấy cũng không phù hợp với mình nên chỉ đứng ngoài thôi.
Vâng.
Cách đây 1 tháng em không biết tẹo nào vba. Xem youtube cả tuần mà ko thu lượm đc gì đa số chế video quá cơ bản mà không lắp ghép đc.
Rồi. Vậy bó tay rồi. Nhưng file excel dùng công thức mảng thì nặng đơ luôn. Lại tìm nên diễn đàn.
Mà bây giờ hỏi gì có liên quan đến bài mà đang làm là cách học tốt nhất. Nhưng chả lẽ cứ bảo "bác ơi, chú ơi làm hộ cháu" lại ngại. Nên em chẳng biết thế nào thành ra cứ sến sến. Thật lòng cháu rất biết ơn những code của chú Mỹ.
Có lẽ kết thúc thớt này ở bài tập 5. Để tránh mất lòng người cho chữ.
 

ptm0412

Bad Excel Member
Thành viên BQT
Super Moderator
Tham gia ngày
4 Tháng mười một 2007
Bài viết
10,518
Được thích
30,886
Điểm
9,718
Tuổi
59
Nơi ở
Gò Vấp
Nếu vẫn muốn học thì tại sao không trả lời 2 câu hỏi ở bài 85, mà quay sang phân bua các loại cho "mất lòng"? Giờ nếu muốn học tiếp thì trả lời đi, và rút kinh nghiệm sau này
 

emgaimuarao

Thành viên hoạt động
Tham gia ngày
30 Tháng chín 2016
Bài viết
116
Được thích
29
Điểm
118
- Lỗi gì khi tạo skey?
- Từ vựng nào mới?
Dạ. Cháu vừa về nhà ạ.
- lỗi tạo key cháu quét vào vùng có giá trị key là không duy nhất. Cái này cháu đọc và hiểu. Key của dict phải duy nhất.
- "Từ vựng vba" là ý cháu nói về những đoạn code lý luận nối các phần trong chương trình ạ như bài #55 hay
Tmp = Dict.Item(TotalColor) 'add 1 key vào Dict với item rỗng' If Tmp <> 0 Then RArr(Tmp, 1) = RArr(Tmp, 1) + 1
- Cháu nghĩ trọng tâm code chính là tạo ra phần "từ vựng vba" ( những đoạn code lý luận) phần này học bài sơ khai càng ít có cơ hội gặp.
 
Lần chỉnh sửa cuối:

ptm0412

Bad Excel Member
Thành viên BQT
Super Moderator
Tham gia ngày
4 Tháng mười một 2007
Bài viết
10,518
Được thích
30,886
Điểm
9,718
Tuổi
59
Nơi ở
Gò Vấp
- Cháu nghĩ trọng tâm code chính là tạo ra phần "từ vựng vba" ( những đoạn code lý luận) phần này học bài sơ khai càng ít có cơ hội gặp.
Đó là cú pháp và lý luận không phải từ vựng. Từ vựng là từ chẳng hạn Do, while, until ... mới chưa từng gặp
 
Quảng cáo
Top Bottom