Nói cho cùng là nối chuỗi có điều kiện? Vậy câu trả lời là: "Làm được nhưng phải là VBA". Bạn thấy sao?xin hỏi các thầy. có công thức nào hay dùng code nào tra một câu trong các cụm từ không ạ. em gửi file lên nhờ cả nhà hướng dẫn. xin cám ơn
vâng được như thế còn gì bằng ạ. nhờ thầy hướng dẫn ạNói cho cùng là nối chuỗi có điều kiện? Vậy câu trả lời là: "Làm được nhưng phải là VBA". Bạn thấy sao?
Dùng hàm JoinIf của Thầy ndu96081631xin hỏi các thầy. có công thức nào hay dùng code nào tra một câu trong các cụm từ không ạ. em gửi file lên nhờ cả nhà hướng dẫn. xin cám ơn
xin cảm ơn bạn nhiều. nhưng mình muốn hàm tra cứu chứ không phải kiểu như nối chữ. mong bạn xem lại ạ và giúp choDùng hàm JoinIf của Thầy ndu96081631![]()
Thử:xin hỏi các thầy. có công thức nào hay dùng code nào tra một câu trong các cụm từ không ạ. em gửi file lên nhờ cả nhà hướng dẫn. xin cám ơn
Sub abc()
Dim x As Range, y As Range, dk As Range
Set dk = [d2]
[d3] = Application.Transpose(Join(Application.Transpose(Range("a2", Range("a" & Rows.Count).End(xlUp))), " "))
If dk.Value Like [d3] Then
[e3] = Application.Transpose(Join(Application.Transpose(Range("B2", Range("b" & Rows.Count).End(xlUp))), ""))
Else
[e3] = "Khong biet!"
End If
[d3].ClearContents
End Sub
Vậy kết quá đó là chưa đúng à? Kết quả sao mới đúng?xin cảm ơn bạn nhiều. nhưng mình muốn hàm tra cứu chứ không phải kiểu như nối chữ. mong bạn xem lại ạ và giúp cho
em gửi lên ví dụ các thầy xem hộ ạVậy kết quá đó là chưa đúng à? Kết quả sao mới đúng?
=JoinIf("";IFERROR(IF(FIND(A2:A1000;C2;1);1;0);"");1;B2:B1000)
Kiểm tra lại lần nữa xem saoem gửi lên ví dụ các thầy xem hộ ạ
dạ cám ơn các thầy nhiều ạ.. thầy cho em hỏi thêm tý nữa , giả sử những từ cần tra không có trong bảng traKiểm tra lại lần nữa xem sao
Đoán là vì mấy bạn kia vẫn còn dùng phiên bản cũ
dạ cám ơn các thầy nhiều ạ.. thầy cho em hỏi thêm tý nữa , giả sử những từ cần tra không có trong bảng tra
em muốn nó trả về đúng từ cần tra thì làm như thế nào ạ. và ở cột từ điển hai từ giống nhau thì nó sẽ lấy cái từ đầu tiên nó nhận được mong hồi âm của các thầy. xin cảm ơn nhiều ạ. em gửi file lên mong các thầy hướng dẫn em lần nữa ạ
có thầy nào giúp em với ạ
Public Function LuXuBu(ByVal Rng As Range, ByVal DK As Range) As String
Dim Txt As String, Arr(), I As Long, R As Long
Arr = Rng.Value: R = UBound(Arr): Txt = DK.Value
For I = 1 To R
If InStr(Txt, Arr(I, 1)) Then
LuXuBu = LuXuBu & Arr(I, 2)
Txt = Replace(Txt, Arr(I, 1), "")
End If
Next I
End Function
=LuXuBu($A$2:$B$11;D2)
cái này đáp ứng được 1 vế thầy ạ. còn vế những từ không tra thấy thì trả vể chính nó. mong thầy kiểm tra lại hộ. xin cảm ơnCông thức:PHP:Public Function LuXuBu(ByVal Rng As Range, ByVal DK As Range) As String Dim Txt As String, Arr(), I As Long, R As Long Arr = Rng.Value: R = UBound(Arr): Txt = DK.Value For I = 1 To R If InStr(Txt, Arr(I, 1)) Then LuXuBu = LuXuBu & Arr(I, 2) Txt = Replace(Txt, Arr(I, 1), "") End If Next I End Function
Chưa hiểu và thấy kết quả mẫu của yêu cầu: "và nếu không tìm thấy nó sẽ trả về chính nó"PHP:=LuXuBu($A$2:$B$11;D2)
Bạn đọc lại dòng cuối cùng bài #14.cái này đáp ứng được 1 vế thầy ạ. còn vế những từ không tra thấy thì trả vể chính nó. mong thầy kiểm tra lại hộ. xin cảm ơn
Bạn có thể thêm điều kiện vào tùy thích mà. Cụ thể ở đây là điều kiện Unique, đúng không?có thầy nào giúp em với ạ
=JoinIf("",FIND(A2:A100,D2)*FREQUENCY(IF(A2:A100<>"",MATCH(A2:A100,A2:A100,0)),MATCH(A2:A100,A2:A100,0)),">0",B2:B100)
Bạn đọc lại dòng cuối cùng bài #14.
thầy ơi cụm từ 15/55 nếu nó tra không có thì nó có thể trở về chính 15/55 được không ạ. có nghĩa là cụm từ tra được + với chính nó ạ: ví dụBạn đọc lại dòng cuối cùng bài #14.
ý em như trong hình ảnh. thầy xem hướng dẫn em với ạBạn đọc lại dòng cuối cùng bài #14.
thầy ơi cụm từ 15/55 nếu nó tra không có thì nó có thể trở về chính 15/55 được không ạ. có nghĩa là cụm từ tra được + với chính nó ạ: ví dụ
em gửi file các thầy xem hộ ạ
Public Function LuXuBu(ByVal Rng As Range, ByVal DK As Range) As String
Dim Txt As String, Arr(), I As Long, R As Long
Arr = Rng.Value: R = UBound(Arr): Txt = DK.Value
For I = 1 To R
If InStr(Txt, Arr(I, 1)) Then
LuXuBu = LuXuBu & Arr(I, 2)
Txt = Replace(Txt, Arr(I, 1), "")
End If
Next I
LuXuBu = LuXuBu & Application.WorksheetFunction.Trim(Txt)
End Function
Em cảm ơn thầy nhiều. Chúc thầy buổi tối vui vẻThấy mới hiểu được.
Công thức nhập như cũ.PHP:Public Function LuXuBu(ByVal Rng As Range, ByVal DK As Range) As String Dim Txt As String, Arr(), I As Long, R As Long Arr = Rng.Value: R = UBound(Arr): Txt = DK.Value For I = 1 To R If InStr(Txt, Arr(I, 1)) Then LuXuBu = LuXuBu & Arr(I, 2) Txt = Replace(Txt, Arr(I, 1), "") End If Next I LuXuBu = LuXuBu & Application.WorksheetFunction.Trim(Txt) End Function
Thầy ơi cho em hỏi. muốn chữ của ô tra, được xắp xếp đúng theo thứ tự chữ của ô cần tra ta phải làm như thế nào ạ. do công thức thầy để nó tra xáo trộn theo vị trí từ điển;. nhờ thầy hướng dẫn hộ. em xin cảm ơnThấy mới hiểu được.
Công thức nhập như cũ.PHP:Public Function LuXuBu(ByVal Rng As Range, ByVal DK As Range) As String Dim Txt As String, Arr(), I As Long, R As Long Arr = Rng.Value: R = UBound(Arr): Txt = DK.Value For I = 1 To R If InStr(Txt, Arr(I, 1)) Then LuXuBu = LuXuBu & Arr(I, 2) Txt = Replace(Txt, Arr(I, 1), "") End If Next I LuXuBu = LuXuBu & Application.WorksheetFunction.Trim(Txt) End Function
Đến đây thì thấy "lòi ra" nhiều cái lu bu rồi.Thầy ơi cho em hỏi. muốn chữ của ô tra, được xắp xếp đúng theo thứ tự chữ của ô cần tra ta phải làm như thế nào ạ. do công thức thầy để nó tra xáo trộn theo vị trí từ điển;.
Public Function LuXuBu(ByVal Rng As Range, ByVal DK As Range) As String
Dim Txt As String, Str As String, Arr(), I As Long, R As Long
Arr = Rng.Value: R = UBound(Arr): Txt = DK.Value & " "
For I = 1 To R
If Arr(I, 1) <> Empty Then
Str = Arr(I, 1) & " "
If InStr(Txt, Str) Then
Txt = Replace(Txt, Str, Arr(I, 2))
End If
End If
Next I
LuXuBu = Application.WorksheetFunction.Trim(Txt)
End Function
Function MReplace(ByVal Text As String, Dictionary As Range, Optional ByVal CompareMode As VbCompareMethod = vbTextCompare) As String
Dim aDic, idx As Long
MReplace = Text
aDic = Dictionary.Value
For idx = 1 To UBound(aDic, 1)
MReplace = Replace(MReplace, aDic(idx, 1), aDic(idx, 2), , , CompareMode)
Next
End Function
=MReplace(D2,A2:B11)
thầy ơi làm sao cho nó tìm kiếm một cách tuyệt đối không ạ. hiện tại nó đang tìm một cách tương đối thôi. mong thầy hướng dẫnGiải thích tới lui cả chục bài, cuối cùng mới hiểu thì ra là bài toán TÌM KIẾM VÀ THAY THẾ. Hic
Mô ta không rõ ràng là lỗi của tác giả. Nếu không thì ta đa đơn giản hóa vấn đề thế này rồi:
và:Mã:Function MReplace(ByVal Text As String, Dictionary As Range, Optional ByVal CompareMode As VbCompareMethod = vbTextCompare) As String Dim aDic, idx As Long MReplace = Text aDic = Dictionary.Value For idx = 1 To UBound(aDic, 1) MReplace = Replace(MReplace, aDic(idx, 1), aDic(idx, 2), , , CompareMode) Next End Function
Mã:=MReplace(D2,A2:B11)
Thầy ơi có cách nào hàm tìm kiếm một cách tuyệt đối không ạ. hiện tại nó chỉ tìm đường đối. mong hồi âm của thầyĐến đây thì thấy "lòi ra" nhiều cái lu bu rồi.
Chỉnh được thế này thôi, chưa vừa ý nữa thì chờ các giải pháp khác từ các bạn khác.
PHP:Public Function LuXuBu(ByVal Rng As Range, ByVal DK As Range) As String Dim Txt As String, Str As String, Arr(), I As Long, R As Long Arr = Rng.Value: R = UBound(Arr): Txt = DK.Value & " " For I = 1 To R If Arr(I, 1) <> Empty Then Str = Arr(I, 1) & " " If InStr(Txt, Str) Then Txt = Replace(Txt, Str, Arr(I, 2)) End If End If Next I LuXuBu = Application.WorksheetFunction.Trim(Txt) End Function
Tương đối là sao? Tuyệt đối là sao?thầy ơi làm sao cho nó tìm kiếm một cách tuyệt đối không ạ. hiện tại nó đang tìm một cách tương đối thôi. mong thầy hướng dẫn
ma quỷ --.> aThầy ơi có cách nào hàm tìm kiếm một cách tuyệt đối không ạ. hiện tại nó chỉ tìm đường đối. mong hồi âm của thầy
Thật sự nhờ vả các thầy nhiều em cũng ngại lắm. nhưng vẫn hỏi các thầy cho ra kết quả em gửi file lên mong các thầy dừng giận giúp đỡ em lần này thôi. em xin cảm ơn các thầy nhiềuma quỷ --.> a
ma quỷ ám --> b
quỷ ám --> c
Dò bảng tra :
Tôi bị ma quỷ ám
Gặp dòng 1: --> Tôi bị a ám
Gặp dòng 2: --> Bạn muốn sao?
..............................
Tôi thấy bạn luôn hỏi chuyên về coi sao, hình tướng... chuyện này tôi thua rồi, không có cái gì tuyệt đối đâu, trừ phi ...
Tới đây là căng rồi đấy! Tin chắc khó có giải pháp cho bạn. Bởi tự bạn phải thiết kế bảng tra hợp lý, tức là phải tìm "cái lớn" trước rồi mới đến "cái nhỏ". Tránh tình trạng bị trùng lập vì "cái nhỏ" là con của "cái lớn"Thật sự nhờ vả các thầy nhiều em cũng ngại lắm. nhưng vẫn hỏi các thầy cho ra kết quả em gửi file lên mong các thầy dừng giận giúp đỡ em lần này thôi. em xin cảm ơn các thầy nhiều
vâng cám ơn thầy nhiều lắm. chắc không có gì tuyệt đối cả. mong sao có một phương án hayTới đây là căng rồi đấy! Tin chắc khó có giải pháp cho bạn. Bởi tự bạn phải thiết kế bảng tra hợp lý, tức là phải tìm "cái lớn" trước rồi mới đến "cái nhỏ". Tránh tình trạng bị trùng lập vì "cái nhỏ" là con của "cái lớn"
Ví dụ:
- Phải tìm "Cộng hòa xã hội chủ nghĩa Việt Nam" trước, xong mới tìm đến "Cộng hòa xã hội chủ nghĩa"
- Phải tìm "Cộng hòa xã hội chủ nghĩa" trước, xong mới tìm đến "Cộng hòa xã hội"
- Phải tìm "Cộng hòa xã hội" trước, xong mới tìm đến "Cộng hòa"
vân.... vân....
đại khái là vậy. Nếu không xem như ta chẳng có quy luật nào cả
Đang chơi vui sao lại nghỉ vậy bạnThật sự nhờ vả các thầy nhiều em cũng ngại lắm. nhưng vẫn hỏi các thầy cho ra kết quả em gửi file lên mong các thầy dừng giận giúp đỡ em lần này thôi. em xin cảm ơn các thầy nhiều
Có thể có đáp án hay nếu như tôi biết được bạn đang muốn làm điều gì?vâng cám ơn thầy nhiều lắm. chắc không có gì tuyệt đối cả. mong sao có một phương án hay
hàm này gần như tuyệt đối rồi. coi như nó là khá nhất. nhưng những chữ không tìm thấy nó lại lấy chữ hần giống. ví dụ: chừ nhà nó lậy lấy chữ n+chữ hà. nếu mà chỉnh được thì nó là toàn vẹn. dù sao cũng cảm ơn Thầy đã giúp đỡ. xin cảm ơnĐang chơi vui sao lại nghỉ vậy bạn![]()
Bạn trích nhầm bài rùi. Em đâu có phải là "Thầy" hu hu. Mà N+hà =Nhà mừhàm này gần như tuyệt đối rồi. coi như nó là khá nhất. nhưng những chữ không tìm thấy nó lại lấy chữ hần giống. ví dụ: chừ nhà nó lậy lấy chữ n+chữ hà. nếu mà chỉnh được thì nó là toàn vẹn. dù sao cũng cảm ơn Thầy đã giúp đỡ. xin cảm ơn
mình đưa lên ví dụ như này: trong Từ điển từ "Nhà" không có;" hà"=2 muốn tra từ nhà như từ điển nhưng không có. Hàm của mình lại lấy N+2. bạn xem có khắc phục được nỗi này không. xin cảm ơn bạn nhiềuBạn trích nhầm bài rùi. Em đâu có phải là "Thầy" hu hu. Mà N+hà =Nhà mừ
Như kiểu thế này ámình đưa lên ví dụ như này: trong Từ điển từ "Nhà" không có;" hà"=2 muốn tra từ nhà như từ điển nhưng không có. Hàm của mình lại lấy N+2. bạn xem có khắc phục được nỗi này không. xin cảm ơn bạn nhiều
Nó kiểu như vậy. nhưng bỏ dấu phẩy điNhư kiểu thế này á
Tùng, beng .......... Nam Định tỉnh, Hải Hậu huyện, Hải Nam xã...........
Xong mình đọc sang tiếng Hán á
Vậy giống mấy "Cụ" nhà mình đọc sớ rồi. Bạn thử xemNó kiểu như vậy. nhưng bỏ dấu phẩy đi
Cám ơn bạn nhé. nó đã toàn viện. nhưng tra tầm mấy nghìn từ cảm giác nó chạy hơi chậmVậy giống mấy "Cụ" nhà mình đọc sớ rồi. Bạn thử xem
Bạn tải lại file bài trên nha. Cái này nó chậm là đúng rồi vì hàm chồng hàm màCám ơn bạn nhé. nó đã toàn viện. nhưng tra tầm mấy nghìn từ cảm giác nó chạy hơi chậm
bài bao nhiêu bạn ơiBạn tải lại file bài trên nha. Cái này nó chậm là đúng rồi vì hàm chồng hàm mà
Bạn xem có nhanh hơn được tẹo nào không. Có bao nhiêu hàm của Thầy ndu96081631 đưa vào đây hếtbài bao nhiêu bạn ơi
Cám ơn bạn nhiều nha. bạn đã giúp mình rất nhiềuBạn xem có nhanh hơn được tẹo nào không. Có bao nhiêu hàm của Thầy ndu96081631 đưa vào đây hết
Mình thử 3457 dòng thấy cũng tạm ổn (File Test)
Bạn cho mình hỏi tý. có cách nào làm chọn chữ như ví dụ mình gửi lên không. nếu được xin bạn hướng dẫnBạn xem có nhanh hơn được tẹo nào không. Có bao nhiêu hàm của Thầy ndu96081631 đưa vào đây hết
Mình thử 3457 dòng thấy cũng tạm ổn (File Test)
Cái này không được đâu. Vì phải có đầu vào thì mới có đầu ra. Chứ như file đính kèm thì biết răng mừ làmBạn cho mình hỏi tý. có cách nào làm chọn chữ như ví dụ mình gửi lên không. nếu được xin bạn hướng dẫn
đầu vào là các ô màu vàng ấy. còn đầu ra cứ đánh chữ nào thì nó hiện chữ cho mình chọn được. bạn xem có ý tưởng nào khôngCái này không được đâu. Vì phải có đầu vào thì mới có đầu ra. Chứ như file đính kèm thì biết răng mừ làm
Híc. Đầu vào có 1048576 dòng. trong đó ai biết nó là cái gì mà ghépđầu vào là các ô màu vàng ấy. còn đầu ra cứ đánh chữ nào thì nó hiện chữ cho mình chọn được. bạn xem có ý tưởng nào không
nó đúng là như vậy rồi. nhưng có cách nào khi ta gõ nó hiện lên để ta chọn 1 chữ thôi có được không. chứ không phải dùng ctHíc. Đầu vào có 1048576 dòng. trong đó ai biết nó là cái gì mà ghép
Tạm tạm hiểu thui. Bạn xem thử hàm Cái Ấy Là cái Đó trong file
Cài này thì Thầy em chưa dạy hu hu ...nó đúng là như vậy rồi. nhưng có cách nào khi ta gõ nó hiện lên để ta chọn 1 chữ thôi có được không. chứ không phải dùng ct
]cái này có lẽ là không thể làm được. xin cảm ơn bạn nhiềuCài này thì Thầy em chưa dạy hu hu ...
Cũng có thể làm được. Nhưng tôi ngán cái vụ "thêm tý nữa" lắm. Ở đây chỉ có cái cô bé kia là siêng làm từng bước một thôi.]cái này có lẽ là không thể làm được. xin cảm ơn bạn nhiều
hóngCũng có thể làm được. Nhưng tôi ngán cái vụ "thêm tý nữa" lắm. Ở đây chỉ có cái cô bé kia là siêng làm từng bước một thôi.
bác VetMini biết thì hỗ trợ em týCũng có thể làm được. Nhưng tôi ngán cái vụ "thêm tý nữa" lắm. Ở đây chỉ có cái cô bé kia là siêng làm từng bước một thôi.
hì bác xem hướng dẫn hộ. em đang hóng chờ bácKhi nào tôi tin là không còn "tý nữa" thì tôi làm.
bác VetMini xin bác hướng dẫn ạ.Khi nào tôi tin là không còn "tý nữa" thì tôi làm.