giúp em hàm tìm và thay thế ngẫu nhiên

Liên hệ QC
Status
Không mở trả lời sau này.
1/ Bạn không biết (hoặc chưa biết) viết Hoa đầu câu, đầu đoạn văn,... hoặc máy của bạn không thể viết chữ Hoa?
2/ Chuyện này có thể xử nó bằng VBA, nhưng bạn không muốn dùng VBA nên đành chịu.
Em là người bán hàng ko fai văn phòng, nên ko thông thạo về office lắm, nên sai sót gì mong anh chị bỏ qua ạ
Vì là ko học về office nên cần về vấn đề gì cũng mong anh chị giúp em hàm excel em lưu lại rùi cần copy chạy ạ, code VBA em càng ko biết gì luôn ạ,
 
"Là người bán hàng" không có nghĩa là bạn sử dụng từ viết tắt mà không biết rằng mình đang viết tắt?
Bạn cứ nhìn lại, nếu những từ ngữ mình viết có hể dùng trong báo cáo nộp cho sếp thì nó là chuẩn. Nếun còn sợ nó không lịch sự với sếp thì nó là chưa chuẩn.
 
Em là người bán hàng ko fai văn phòng, nên ko thông thạo về office lắm, nên sai sót gì mong anh chị bỏ qua ạ
Vì là ko học về office nên cần về vấn đề gì cũng mong anh chị giúp em hàm excel em lưu lại rùi cần copy chạy ạ, code VBA em càng ko biết gì luôn ạ,
Nếu chỉ nói mà tôi không làm thì bạn cho rằng tôi nói suông.
Gởi bạn 1 Hàm tự tạo bằng VBA, nếu bạn dùng được thì dùng.
Cấu trúc của Hàm:
LungTungBeng(Chuỗi ban đầu; Ký tự cần thay; Chuỗi những ký tự cần thay ngẫu nhiên)
Ví dụ:
Chuỗi ban đầu: A2
Ký tự cần thay: "." (Dấu Chấm)
Chuỗi những ký tự cần thay, cách nhau dấu Chấm Phẩy: ".;,;,,;..;.. ;';' ;'';'' ;a;b;c;d;e;f"
Công thức ô C2:
PHP:
=LungTungBeng(A2;".";".;,;,,;..;.. ;';' ;'';'' ;a;b;c;d;e;f")
 

File đính kèm

  • vd3.xlsm
    19.3 KB · Đọc: 9
"Là người bán hàng" không có nghĩa là bạn sử dụng từ viết tắt mà không biết rằng mình đang viết tắt?
Bạn cứ nhìn lại, nếu những từ ngữ mình viết có hể dùng trong báo cáo nộp cho sếp thì nó là chuẩn. Nếun còn sợ nó không lịch sự với sếp thì nó là chưa chuẩn.
Em thực sự ko biết là viết tắt gì anh, anh cứ nói rõ anh,
Em ko học office, nên em hiểu thế nào mô tả vậy anh.
 
Tôi chỉ đưa lên ý kiến dùng hàm choose để thực hiện cái vụ chọn ngẫu nhiên.
Vấn đề của thớt như thế nào tôi không có hứng. Đã không biết cách ăn nói rõ ràng còn viết tắt tùm lum.

Em viết bài vẫn xưng hô anh chị dạ thưa đàng hoàng dù em ko biết ai lớn ai lớn nhỏ, không hề nói năng khiếm nhã mất lịch sự với ai
Em chỉ sai là ko viết hoa đầu câu, em đi dạo mấy bài cũng thấy có mấy bài ko viết hoa đầu câu, cái này có thể nhắc nhẹ anh để sửa, vì ko fai anh em nào cũng dân chuyên văn phòng để ý từ chữ từng câu từ, thì anh em sẽ sữa thui,

"Đã không biết cách ăn nói ....."
"Bạn cứ nhìn lại, nếu những từ ngữ mình viết có hể dùng trong báo cáo nộp cho sếp thì nó là chuẩn. Nếun còn sợ nó không lịch sự với sếp thì nó là chưa chuẩn. "
Em sai cái gì "nặng" mà anh dùng từ ngữ quá mức vậy anh ? nếu ko muốn nói là chửi xúc phạm người khác vậy anh ?
Anh em sai gì thì cứ góp ý thắng để họ rút kinh nghiệm sữa chữa, với lại forum này để anh học hỏi và chia sẽ khác xa với việc báo cáo "xếp", với lại em cũng nói rõ em chỉ là nhân viên đi bán hàng bình thường nên nhiều khi trình bày sai sót, khác với việc "cố tình" mất lịch sự người khác, đằng này anh cứ nói bóng gió chửi người khác vậy anh ?
 
Lần chỉnh sửa cuối:
Em viết bài vẫn xưng hô anh chị dạ thưa đàng hoàng dù em ko biết ai lớn ai lớn nhỏ, không hề nói năng khiếm nhã mất lịch sự với ai
Em chỉ sai là ko viết hoa đầu câu, em đi dạo mấy bài cũng thấy có mấy bài ko viết hoa đầu câu, cái này có thể nhắc nhẹ anh để sửa, vì ko fai anh em nào cũng dân chuyên văn phòng để ý từ chữ từng câu từ, thì anh em sẽ sữa thui,


Em sai cái gì "nặng" mà anh dùng từ ngữ quá mức vậy anh ? nếu ko muốn nói là chửi xúc phạm người khác vậy anh ?
ko và dc là viết tắt. Riêng ko thì cho tới tận bài cuối cùng mà tôi trích ở trên bạn vẫn dùng.
Anh em sai gì thì cứ góp ý thắng để họ rút kinh nghiệm sữa chữa, với lại forum này để anh học hỏi và chia sẽ khác xa với việc báo cáo "xếp", với lại em cũng nói rõ em chỉ là nhân viên đi bán hàng bình thường nên nhiều khi trình bày sai sót, khác với việc "cố tình" mất lịch sự người khác, đằng này anh cứ nói bóng gió chửi người khác vậy anh ?
Bác VetMini góp ý nghiêm khắc thì đúng. Nhưng bạn cho đó là câu chửi thì không đúng. Gay gắt không có nghĩa là chửi.
 
Bảo em "Đã không biết cách ăn nói ....."
So sánh em với việc báo cáo xếp ko lịch sự "Bạn cứ nhìn lại, nếu những từ ngữ mình viết có hể dùng trong báo cáo nộp cho sếp thì nó là chuẩn. Nếun còn sợ nó không lịch sự với sếp thì nó là chưa chuẩn. "
Em nói rùi em người bán hàng bình thường, làm gì có cơ hội viết báo cáo xếp, với lại hay chát với khách hàng thành ra quen tay mất, hiếm có room nào nghiêm khắc như thế thành ra em không để ý,
với lại đó chỉ vô tình. Nếu chỉ đơn giản là viết tắt "viết hoa" "ko" "dc" thì nhắc nhẹ anh em để biết sửa, không phải là em nói năng không lịch sự ai đó, sao phải nói bóng gió, nói quá mức nặng tới người khác như vậy anh ?
 
Không nói bóng gió thì nói thẳng đây:
Yêu cầu của bạn rắc rối lắm. Nó không thể dùng cái ngôn ngữ mà bạn quen ở mấy cái "room" gì đó mà nói chuyện được.
Bạn cần về học lại cách trình bày vấn đề cho thật rõ ràng. Học cách ra ví dụ và trình bày ví dụ. May ra lúc ấy có người hiểu mà đưa ra giải đáp.

Chớ có đổ thừa do nghiêm khắc, khó khăn gì cả. Ở đây còn 4 người khác cũng chẳng hiểu bạn muốn gì.
 
Không nói bóng gió thì nói thẳng đây:
Yêu cầu của bạn rắc rối lắm. Nó không thể dùng cái ngôn ngữ mà bạn quen ở mấy cái "room" gì đó mà nói chuyện được.
Bạn cần về học lại cách trình bày vấn đề cho thật rõ ràng. Học cách ra ví dụ và trình bày ví dụ. May ra lúc ấy có người hiểu mà đưa ra giải đáp.

Chớ có đổ thừa do nghiêm khắc, khó khăn gì cả. Ở đây còn 4 người khác cũng chẳng hiểu bạn muốn gì.
"Đã không biết cách ăn nói ....."
"Bạn cứ nhìn lại, nếu những từ ngữ mình viết có hể dùng trong báo cáo nộp cho sếp thì nó là chuẩn. Nếun còn sợ nó không lịch sự với sếp thì nó là chưa chuẩn. "
Cái này chẳng qua là sai cách trình bày trong room, đằng này anh còn so sánh là "không lịch sự với xếp", thà anh nhắc nhở trực tiếp anh biết sửa ngay, anh em tôn trọng, em chưa mất lịch sự hay khiếm nhã với ai, nhưng anh mà anh tìm cớ tìm chuyện để bắt bẻ để chửi bóng chửi gió xúc phạm người khác là người mất lịch sự trước, thế anh không phải là người sai ak ?
Anh em vào room là để chia sẽ giúp đỡ học hỏi lẫn nhau, anh em bỏ công sức bỏ thời gian ra giúp người khác, anh em rất quí, cảm ơn rất nhiều, chứ không phải là đi tìm kẻ hở sai chính tả rùi chửi người khác anh nhé, em cũng 35 tuổi khổng phải nhỏ, chắc anh cũng không phải nhỏ, anh sống nói chuyện sao để anh tôn trọng nhé
 
Lý luận giỏi lắm.
Mang cái kỹ năng này áp dụng vào cách trình bày câu hỏi thì vấn đề đã được giải quyết lâu rồi.
 
Theo tôi:
Thứ nhất, bạn @lala_qn nên chấp nhận là đã viết tắt (kiểu chat như ko, dc), ban đầu có tình trạng không viết hoa đầu câu, và chấp nhận sự góp ý (nghiêm khắc cũng tốt mà. Tôi gần 60 nhưng hễ sai thì ai nghiêm khắc với tôi cũng chịu)
Thứ hai, bạn nên hiểu thêm hỏi & giải thích quá ngắn cũng là 1 dạng viết tắt, không đủ ý cho các thành viên khác trả lời.
Thứ ba, bạn lấy ý của anh @VetMini hàm Choose, sửa lại 1 chút là dùng được (thí dụ Choose(RandBetween(1, 10) thay vì 7, phía sau liệt kê đủ 10 ký hiệu ngẫu nhiên, bao gồm cả dấu chấm không khoảng trắng. (10 hay bao nhiêu là do bạn quy định chứ không bắt buộc)
 
Theo tôi:
Thứ nhất, bạn @lala_qn nên chấp nhận là đã viết tắt (kiểu chat như ko, dc), ban đầu có tình trạng không viết hoa đầu câu, và chấp nhận sự góp ý (nghiêm khắc cũng tốt mà. Tôi gần 60 nhưng hễ sai thì ai nghiêm khắc với tôi cũng chịu)
Thứ hai, bạn nên hiểu thêm hỏi & giải thích quá ngắn cũng là 1 dạng viết tắt, không đủ ý cho các thành viên khác trả lời.
Thứ ba, bạn lấy ý của anh @VetMini hàm Choose, sửa lại 1 chút là dùng được (thí dụ Choose(RandBetween(1, 10) thay vì 7, phía sau liệt kê đủ 10 ký hiệu ngẫu nhiên, bao gồm cả dấu chấm không khoảng trắng. (10 hay bao nhiêu là do bạn quy định chứ không bắt buộc)
Dạ vẫn chưa ra được như kết quả như vd3 em up kèm ạ
 
Code của hàm:
PHP:
Function ReplaceRnd(MyStr As String, Rep As String, Optional Replacement)
Dim Tmp, LenStr As Long, i As Long, X As String
If IsMissing(Replacement) Then Replacement = ".; ,;, ;.,;..; , "
    LenStr = Len(MyStr)
    Tmp = Split(Replacement, ";")
    For i = 1 To LenStr
        If Mid(MyStr, i, 1) = Rep Then
            Randomize
            X = Tmp(Int(Rnd() * (UBound(Tmp) + 1)))
            ReplaceRnd = ReplaceRnd & X
        Else
            ReplaceRnd = ReplaceRnd & Mid(MyStr, i, 1)
        End If
    Next
End Function
Cách dùng
=ReplaceRnd(A2,".")
Muốn gì khác thì thay hoặc thêm vào code chỗ Then Replacement = ".; ,;, ;.,;..; , ", hoặc gõ vào tham số của hàm
=ReplaceRnd(A2,".","a;b;c ;!;@")

1570779886694.png
 
Code của hàm:
PHP:
Function ReplaceRnd(MyStr As String, Rep As String, Optional Replacement)
Dim Tmp, LenStr As Long, i As Long, X As String
If IsMissing(Replacement) Then Replacement = ".; ,;, ;.,;..; , "
    LenStr = Len(MyStr)
    Tmp = Split(Replacement, ";")
    For i = 1 To LenStr
        If Mid(MyStr, i, 1) = Rep Then
            Randomize
            X = Tmp(Int(Rnd() * (UBound(Tmp) + 1)))
            ReplaceRnd = ReplaceRnd & X
        Else
            ReplaceRnd = ReplaceRnd & Mid(MyStr, i, 1)
        End If
    Next
End Function
Cách dùng
=ReplaceRnd(A2,".")
Muốn gì khác thì thay hoặc thêm vào code chỗ Then Replacement = ".; ,;, ;.,;..; , ", hoặc gõ vào tham số của hàm
=ReplaceRnd(A2,".","a;b;c ;!;@")

View attachment 226471
Dạ em chạy thử thấy kí tự là dấu "." và số có thể tìm và thay thế kí tự khác được rùi anh
Dùng phím gì để thay đổi nhanh các ngẫu nhiên đó anh nhỉ ?
Em muốn thêm tìm chữ hoặc cụm chữ để thay thế với anh nhé
vd: Tìm "ar" thay thế "ar;Ar;aR; ar;ar ;AR"
Tìm "em la" thay thế "Hoang Lan;Tran Hoang;Le Hoa;Vi Vi;Pham Hoang"
Cảm ơn anh nhiều ạ !
 
Lần chỉnh sửa cuối:
Điền "ar" tham số 2, điền "ar;Ar;aR; ar;ar ;AR" vào tham số 3
 
Điền "ar" tham số 2, điền "ar;Ar;aR; ar;ar ;AR" vào tham số 3
Nhờ anh xem dùm em file với ạ, tại em không biết gì về code ạ
Nhờ anh chỉnh dùm em sẵn trong code các trường hợp tìm 1 kí tự hoặc 1 từ, hoặc 1 cụm từ để thay thế, còn trên bảng tỉnh chỉ chỉnh sữa hàm là chạy được luôn ạ, tại em không biết gì về code ạ, cảm ơn anh !
 

File đính kèm

  • vd4.xlsm
    14.9 KB · Đọc: 3
Chỉnh sửa tham số ngay trong công thức trên sheet chứ đâu cần sửa code
thí dụ C2 =ReplaceRnd(A2,".","a;b;c ;!;@")
sửa thành =ReplaceRnd(A2,"ar", "ar;Ar;aR; ar;ar ;AR")
 
Chỉnh sửa tham số ngay trong công thức trên sheet chứ đâu cần sửa code
thí dụ C2 =ReplaceRnd(A2,".","a;b;c ;!;@")
sửa thành =ReplaceRnd(A2,"ar", "ar;Ar;aR; ar;ar ;AR")
dạ em nhập công thức như anh gởi chạy nó không ra ngẫu nhiên, anh xem lại hộ em ạ
 
Hàm viết lại: tham số Rep dài tuỳ ý
PHP:
Function ReplaceRnd(MyStr As String, Rep As String, Optional Replacement)
Application.Volatile True
Dim Tmp, LenStr As Long, i As Long, X As String
Dim LenRep As Long, LenCurrent As Long
If IsMissing(Replacement) Then Replacement = ".; ,;, ;.,;..; , "
    LenStr = Len(MyStr)
    LenRep = Len(Rep)
    LenCurrent = 0
    Tmp = Split(Replacement, ";")
    For i = 1 To LenStr
        If Mid(MyStr, i, LenRep) = Rep Then
            Randomize
            X = Tmp(Int(Rnd() * (UBound(Tmp) + 1)))
            ReplaceRnd = Left(ReplaceRnd, LenCurrent) & X
            i = i + LenRep - 1
        Else
            ReplaceRnd = ReplaceRnd & Mid(MyStr, i, 1)
        End If
        LenCurrent = Len(ReplaceRnd)
    Next
End Function
 

File đính kèm

  • vd4.xlsm
    15.5 KB · Đọc: 3
Status
Không mở trả lời sau này.
Web KT
Back
Top Bottom