Bùi Thúy Thúy
Thành viên thường trực
- Tham gia
- 2/7/18
- Bài viết
- 289
- Được thích
- 38
Cái này làm chơi thôi nhaE có bảng nội dung công việc theo từng ngày ở dạng cột,
E xin được sự giúp đỡ để có thể tự động điền máy móc thi công theo từ khóa nội dung công việc trong từng ngày đó ( các loại máy móc thi công tương ứng với từ khóa nội dung công việc như trong bảng dữ liệu)View attachment 201601
Private Sub CommandButton1_Click()
SpeedOn False
Dim ArrKeyWord
Dim rng As Range
Dim e As Long, r As Long, u As Long
e = Range("K" & Rows.Count).End(xlUp).Row
ArrKeyWord = Range("K4:L" & e).Value
u = UBound(ArrKeyWord)
e = Range("D" & Rows.Count).End(xlUp).Row
For Each rng In Range("D6:D" & e)
If rng.Value > "" Then
For r = 1 To u
If InStr(UCase(rng.Value), UCase(ArrKeyWord(r, 1))) Then
rng.Offset(, 4).Value = ArrKeyWord(r, 2)
Exit For
End If
Next
End If
Next
SpeedOn True
End Sub
Sub SpeedOn(ByVal blnTurnOn As Boolean)
With Application
.Calculation = IIf(blnTurnOn, xlCalculationAutomatic, xlCalculationManual)
.EnableEvents = blnTurnOn
.ScreenUpdating = blnTurnOn
End With
End Sub
Dạ e cám ơn Chị nhìuCái này làm chơi thôi nha
Vâng, E cám ơn Anh nhé! chúc Anh sức khỏe và nhiều may mắn.Thử với file này nhé!
Mã:Private Sub CommandButton1_Click() SpeedOn False Dim ArrKeyWord Dim rng As Range Dim e As Long, r As Long, u As Long e = Range("K" & Rows.Count).End(xlUp).Row ArrKeyWord = Range("K4:L" & e).Value u = UBound(ArrKeyWord) e = Range("D" & Rows.Count).End(xlUp).Row For Each rng In Range("D6:D" & e) If rng.Value > "" Then For r = 1 To u If InStr(UCase(rng.Value), UCase(ArrKeyWord(r, 1))) Then rng.Offset(, 4).Value = ArrKeyWord(r, 2) Exit For End If Next End If Next SpeedOn True End Sub Sub SpeedOn(ByVal blnTurnOn As Boolean) With Application .Calculation = IIf(blnTurnOn, xlCalculationAutomatic, xlCalculationManual) .EnableEvents = blnTurnOn .ScreenUpdating = blnTurnOn End With End Sub
Anh ơi, đoạn code Anh viết giúp e rất tốt rồi, A có thể sửa giúp E một chút nữa như trên, ý e là :Thử với file này nhé!
Mã:Private Sub CommandButton1_Click() SpeedOn False Dim ArrKeyWord Dim rng As Range Dim e As Long, r As Long, u As Long e = Range("K" & Rows.Count).End(xlUp).Row ArrKeyWord = Range("K4:L" & e).Value u = UBound(ArrKeyWord) e = Range("D" & Rows.Count).End(xlUp).Row For Each rng In Range("D6:D" & e) If rng.Value > "" Then For r = 1 To u If InStr(UCase(rng.Value), UCase(ArrKeyWord(r, 1))) Then rng.Offset(, 4).Value = ArrKeyWord(r, 2) Exit For End If Next End If Next SpeedOn True End Sub Sub SpeedOn(ByVal blnTurnOn As Boolean) With Application .Calculation = IIf(blnTurnOn, xlCalculationAutomatic, xlCalculationManual) .EnableEvents = blnTurnOn .ScreenUpdating = blnTurnOn End With End Sub
Chị ơi giải thích giúp E công thức:Cái này làm chơi thôi nha
Cái ông HTN này "làm biếng" lắm, chở "ổng" có mà "mệt".Anh ơi, đoạn code Anh viết giúp e rất tốt rồi, A có thể sửa giúp E một chút nữa như trên, ý e là :
Ví dụ: với từ khóa "đắp cát vàng":
Từ khóa " đắp cát vàng" ở vị trí đầu dòng thì mới xuất hiện "máy đầm" (như dòng số 8)
Còn từ khóa "đắp cát vàng" ở nội dung" Nghiệm thu đắp cát vàng: (dòng số 09) thì để trống không cần điền"máy đầm"
Các nội dung khác cũng tương tự, có nghĩa là ngày nào thi công thì các từ khóa ở bảng trên chỉ xuất hiện ở vị trí đầu tiên của dòng thì mới điền máy máy thi công còn không thì để trống ạ!
Hi, e cám ơn anh Ba Tê nhìu ạ!Cái ông HTN này "làm biếng" lắm, chở "ổng" có mà "mệt".
Tôi chỉnh giùm được không?
Anh ơi, E nhờ A chút xíu nữa ạ!Cái ông HTN này "làm biếng" lắm, chở "ổng" có mà "mệt".
Tôi chỉnh giùm được không?
Một bên là "Đắp đê quây" Một bên là "- Đắp đê quây", sao không cho nó giống nhau luôn để code "nhẹ nhàng" một chút?Anh ơi, E nhờ A chút xíu nữa ạ!
Cũng tương tự nội dung trên, A điền giúp E máy móc thi công ở nội dung cột I vào cột T ứng với từng ngày trong từng dòng, các dòng trong cột I có nhiều nội dung, mỗi gạch đầu dòng là một nội dung
Ví dụ: với từ khóa "Đắp đê quây"; "phát tuyến rừng" (các từ khóa đều ở đầu dòng sau dấu "-" trong một dòng thì máy móc được điền vào cột T
Các loại máy móc nếu trùng nhau chỉ lấy 1 lần tên và các loại máy móc được cách nhau bởi "," và "dấu cách".
A làm ơn giúp E chút nhé, E đang cần gấp để nộp bài, e làm thủ công không kịp, E cám ơn A ạ!
View attachment 201818
hi e gấp quá nên nhầm, chính xác là có gạch ngang mỗi lần xuống dòng trong 1 ôMột bên là "Đắp đê quây" Một bên là "- Đắp đê quây", sao không cho nó giống nhau luôn để code "nhẹ nhàng" một chút?
Nói chung là dữ liệu tìm kiếm càng chính xác càng tốt. Tạo ra những yêu cầu làm khó nhau càng "oải".
Gút lại:
Những thành viên vào GPE đều:
- Hỏi những vấn đề mình cần hỏi.
- Khi "nước đến trôn" mới hỏi. (kèm thêm Gấp)
- Khi rảnh rỗi mới vào GPE "giết thời gian"
- Khi quá rảnh nên trả lời bất cứ bài nào.
@ Tôi thì: chỉ khi "muốn giết thời gian rảnh".
Chuyện "gấp" của ai đó không liên quan đến tôi hoặc những thành viên GPE, vì GPE không bắt buộc các thành viên khi gặp bài "gấp" là phải trả lời nhanh.
Chuyện "làm biếng gõ" rõ ràng mà viết a, e, ... đã làm mất đi sự "thiện cảm" cho những người Việt muốn giữ gìn sự trong sáng của tiếng Việt.
Và... theo tôi, giaiphapexcel.com không là trang mạng xã hội để người tham gia "viết kiểu gì cũng được".
Dạ! e vừa sửa lại file bài #8, có "- Đắp đê quây", A giúp e ạ!Một bên là "Đắp đê quây" Một bên là "- Đắp đê quây", sao không cho nó giống nhau luôn để code "nhẹ nhàng" một chút?
Nói chung là dữ liệu tìm kiếm càng chính xác càng tốt. Tạo ra những yêu cầu làm khó nhau càng "oải".
Gút lại:
Những thành viên vào GPE đều:
- Hỏi những vấn đề mình cần hỏi.
- Khi "nước đến trôn" mới hỏi. (kèm thêm Gấp)
- Khi rảnh rỗi mới vào GPE "giết thời gian"
- Khi quá rảnh nên trả lời bất cứ bài nào.
@ Tôi thì: chỉ khi "muốn giết thời gian rảnh".
Chuyện "gấp" của ai đó không liên quan đến tôi hoặc những thành viên GPE, vì GPE không bắt buộc các thành viên khi gặp bài "gấp" là phải trả lời nhanh.
Chuyện "làm biếng gõ" rõ ràng mà viết a, e, ... đã làm mất đi sự "thiện cảm" cho những người Việt muốn giữ gìn sự trong sáng của tiếng Việt.
Và... theo tôi, giaiphapexcel.com không là trang mạng xã hội để người tham gia "viết kiểu gì cũng được".
Dùng Filter rồi nhập thủ công tôi thấy có mất chưa đầy 3 phút. có 3 cái điều kiện đó, Filter 3 lần rồi gộp lại là xong.hi e gấp quá nên nhầm, chính xác là có gạch ngang mỗi lần xuống dòng trong 1 ô
là ""- Đắp đê quây", từ khóa nào cũng bắt đầu bằng gạch ngang ""-"
Anh giúp e mới nhé!
E cám ơn anh ạ!
Bài đã được tự động gộp:
Dạ! e vừa sửa lại file bài #8, có "- Đắp đê quây", A giúp e ạ!
Vâng e cám ơn anh!Dùng Filter rồi nhập thủ công tôi thấy có mất chưa đầy 3 phút. có 3 cái điều kiện đó, Filter 3 lần rồi gộp lại là xong.
Một lời khuyên nữa cho bạn là " Hãy tìm đến phương pháp đơn giản nhất thay vì tìm phương pháp hoàn hảo nhất ".
Còn chờ anh @Ba Tê chắc đến hết mùa quít năm sau Anh cũng không hồi âm nữa đâu. đọc cho kỹ thư cuối cùng Anh viết kia kìa
E có đọc dòng cuối cùng A góp ý:Một bên là "Đắp đê quây" Một bên là "- Đắp đê quây", sao không cho nó giống nhau luôn để code "nhẹ nhàng" một chút?
Nói chung là dữ liệu tìm kiếm càng chính xác càng tốt. Tạo ra những yêu cầu làm khó nhau càng "oải".
Gút lại:
Những thành viên vào GPE đều:
- Hỏi những vấn đề mình cần hỏi.
- Khi "nước đến trôn" mới hỏi. (kèm thêm Gấp)
- Khi rảnh rỗi mới vào GPE "giết thời gian"
- Khi quá rảnh nên trả lời bất cứ bài nào.
@ Tôi thì: chỉ khi "muốn giết thời gian rảnh".
Chuyện "gấp" của ai đó không liên quan đến tôi hoặc những thành viên GPE, vì GPE không bắt buộc các thành viên khi gặp bài "gấp" là phải trả lời nhanh.
Chuyện "làm biếng gõ" rõ ràng mà viết a, e, ... đã làm mất đi sự "thiện cảm" cho những người Việt muốn giữ gìn sự trong sáng của tiếng Việt.
Và... theo tôi, giaiphapexcel.com không là trang mạng xã hội để người tham gia "viết kiểu gì cũng được".
File e đưa lên trong bài #8, ở trong bảng dữ liệu không có lắp đặt ván khuôn mà chị, chỉ có 02 công tác trong bảng dữ liệu thôi.Dữ liệu kiểu này chắc không ổn rồi. Ví dụ như công tác Lắp dựng ván khuôn và công tác Lắp đặt ván khuôn nghĩa nó như nhau. Nhưng cái VBA nó dốt lắm nó lại bảo 2 cái ấy khác nhau
Tốt nhất là Bạn quản lý theo mã hiệu công việc. Mình muốn viết rồng rắn gì vào nội dung công việc thì kệ mình. Nó cứ túm đầu cái Mã hiệu ấy là được
Bạn kiểm tra lại ngày 21/10/2016 xem có không nhaFile e đưa lên trong bài #8, ở trong bảng dữ liệu không có lắp đặt ván khuôn mà chị, chỉ có 02 công tác trong bảng dữ liệu thôi.
Ngày đó có chị ạ! vì máy móc cũng còn thay đổi nữa tùy theo từng công việc nên e nhờ chị giúp e cái code để e làm mẫu sau đó e lấy cơ sở rồi chỉnh sửa cho phù hợp với từng công việc ạ! và trong từng file khác nữa ạ!Bạn kiểm tra lại ngày 21/10/2016 xem có không nha
Bạn xem thửNgày đó có chị ạ! vì máy móc cũng còn thay đổi nữa tùy theo từng công việc nên e nhờ chị giúp e cái code để e làm mẫu sau đó e lấy cơ sở rồi chỉnh sửa cho phù hợp với từng công việc ạ! và trong từng file khác nữa ạ!
Nên E nhờ chị điền giúp E điển hình 2 máy móc vào dòng tương ứng với bảng dữ liệu nêu trên
E cám ơn Chị!
Vâng E cám ơn Chị ạ!Bạn xem thử
"ThietbiTC" là Thiết bị thi công. Vậy thui . Nếu nhà Họ không thích thì thay nó bằng cái tên khácVâng E cám ơn Chị ạ!
Chị giải thích giúp E hàm =ThietbiTC(CHAR(10);I11;Sheet1!$B$4:$B$7;Sheet1!$C$4:$C$7)
="ThietbiTC" là gì vậy chị?
Đó không phải là hàm của trang tính (cũng không là hàm trong thư viện VBA. Mà hàm VBA không dùng được trên trang tính). Hàm đó người ta tự viết, gọi là hàm người dùng (UDF - user-defined function), và ThietbiTC là tên hàm đó. Bạn thao tác: Alt + F11 -> xem code trong Module1. Tên hàm có thể tùy ý. Tất nhiên nên đặt tên sao cho chỉ riêng tên hàm đã nói lên rất nhiều về việc nó sẽ làm, ý nghĩa của nó.Vâng E cám ơn Chị ạ!
Chị giải thích giúp E hàm =ThietbiTC(CHAR(10);I11;Sheet1!$B$4:$B$7;Sheet1!$C$4:$C$7)
="ThietbiTC" là gì vậy chị?
DIỄN ĐÀN GIẢI PHÁP EXCEL Group 1
DIỄN ĐÀN GIẢI PHÁP EXCEL Group 2