Help Code Viết chữ hoa đầu từ sau ký tự quy định.. (1 người xem)

Liên hệ QC

Người dùng đang xem chủ đề này

anhlavip_10a4

Thành viên mới
Tham gia
18/5/12
Bài viết
11
Được thích
1
Hiện tại mình cầm định dạng dữ liệu như liệu như sau:

Định dạng dữ liệu gốc:


Định dạng cần chuyển sang:


Tức là sẽ chuyển toàn bộ code theo dạng chữ biết hoa chữ đầu dòng. viết hoa chữ "Xe" và viết hoa chữ "Bất". (Cứ đứng sau dấu ";" là viết hoa)

Mình không rành về code nên ko viết được. Nhưng mình nghĩ sẽ làm như sau:

- Lấy giá trị trong ô excel
- Chặt chuỗi trên đưa vào mảng theo ký tự ";"
- Sau đó chuyển từng ô trong mảng thành chữ được viết hoa chữ cái đầu tiên.
- rồi trả lại giá trị cho excel.

Thank mọi người đã giups đỡ.
 
Lần chỉnh sửa cuối:
Hiện tại mình cầm định dạng dữ liệu như liệu như sau:

Định dạng dữ liệu gốc:



Định dạng cần chuyển sang:



Tức là sẽ chuyển toàn bộ code theo dạng chữ biết hoa chữ đầu dòng. viết hoa chữ "Xe" và viết hoa chữ "Bất". (Cứ đứng sau dấu ";" là viết hoa)

Mình không rành về code nên ko viết được. Nhưng mình nghĩ sẽ làm như sau:

- Lấy giá trị trong ô excel
- Chặt chuỗi trên đưa vào mảng theo ký tự ";"
- Sau đó chuyển từng ô trong mảng thành chữ được viết hoa chữ cái đầu tiên.
- rồi trả lại giá trị cho excel.

Thank mọi người đã giups đỡ.
Với dữ liệu trong cột A, thử với code này xem:
PHP:
Public Sub GPE()
Dim Rng(), Arr(), I As Long, J As Long, K As Long, L As Long, Tem As String, Txt As String
    Rng = Sheet1.Range(Sheet1.[A1], Sheet1.[A65000].End(xlUp).Offset(1)).Value
ReDim Arr(1 To UBound(Rng, 1), 1 To 1)
    For I = 1 To UBound(Rng, 1)
        Rng(I, 1) = Replace(Rng(I, 1), "; ", ";")
        K = K + 1
        L = Len(Rng(I, 1))
        Txt = UCase(Left(Rng(I, 1), 1))
        For J = 2 To L
            If Mid(Rng(I, 1), J - 1, 1) = ";" Then
                Tem = " " & UCase(Mid(Rng(I, 1), J, 1))
                Txt = Txt & Tem
            Else
                Txt = Txt & Mid(Rng(I, 1), J, 1)
            End If
        Next J
            Arr(K, 1) = Txt
    Next I
Sheet1.[A1].Resize(K, 1) = Arr
End Sub
 
Upvote 0
Thank bạn có gì để mình thử, mà mình muốn tạo tổ hợp phím tắt thì như nào bạn, ???
 
Upvote 0
Sao mình xài code của bạn mà chả thấy thay đổi hết luôn, chả lẽ cách mình dùng bị sai ...

Dữ liệu ban đầu của mình trong 1 ô excel như này:

HTML:
  GIỚI  THIỆU | HTTP://SACHGIAODUC.VN/?EPI=ABOUT ; DỊCH VỤ |  HTTP://SACHGIAODUC.VN/?EPI=SERVICE ; SẢN PHẨM |  HTTP://SACHGIAODUC.VN/?EPI=PRODUCT ; TIN TỨC |  HTTP://SACHGIAODUC.VN/?EPI=NEWS ; HỖ TRỢ |  HTTP://SACHGIAODUC.VN/?EPI=CONSULTING ; TUYỂN DỤNG | HTTP://SACHGIAODUC.VN/?EPI=RECRUITMENT  ; LIÊN HỆ | HTTP://SACHGIAODUC.VN/?EPI=CONTACT ; SƠ ĐỒ TỔ CHỨC |  HTTP://SACHGIAODUC.VN/?EPI=ABOUT&CAT=2 ; ĐỘI NGŨ LÃNH ĐẠO |  HTTP://SACHGIAODUC.VN/?EPI=ABOUT&CAT=3

Giờ mình muốn nó định dạng cụ thể như này thì code như bạn.

HTML:
Giới  thiệu | http://sachgiaoduc.vn/?epi=about ; Dịch vụ |  http://sachgiaoduc.vn/?epi=service ; Dản phẩm |  http://sachgiaoduc.vn/?epi=product ; Tin tức |  http://sachgiaoduc.vn/?epi=news ; Hỗ trợ |  http://sachgiaoduc.vn/?epi=consulting ; Tuyển dụng | http://sachgiaoduc.vn/?epi=recruitment  ; Liên hệ | http://sachgiaoduc.vn/?epi=contact ; Sơ đồ tổ chức |  http://sachgiaoduc.vn/?epi=about&cat=2 ; Đội ngũ lãnh đạo |  http://sachgiaoduc.vn/?epi=about&cat=3 ;
 
Upvote 0
Sao mình xài code của bạn mà chả thấy thay đổi hết luôn, chả lẽ cách mình dùng bị sai ...
Bạn đưa file của bạn lên đây cho dễ! Code dù viết ngon cở nào cũng phải có CSDL phù hợp mới chạy được
(Nếu bạn biết tự mình sửa code thì không có gì để nói nữa cả)
 
Upvote 0
Bạn đưa file của bạn lên đây cho dễ! Code dù viết ngon cở nào cũng phải có CSDL phù hợp mới chạy được
(Nếu bạn biết tự mình sửa code thì không có gì để nói nữa cả)
Dữ liệu mẫu trong khung đính kèm đây .... hy vọng có người giúp dc mình, mình đang cần lắm. Thank ALL %#^#$
 

File đính kèm

Upvote 0
Dữ liệu mẫu trong khung đính kèm đây .... hy vọng có người giúp dc mình, mình đang cần lắm. Thank ALL %#^#$
Nếu dữ liệu đúng như trong bài, bạn thử cái này xem
Kết quả mình đặt ở cell [A13] trở đi, bạn muốn đặt chỗ nào cũng được, cứ theo cú pháp trong cell [A13]
Thân
 

File đính kèm

Upvote 0
Nếu dữ liệu đúng như trong bài, bạn thử cái này xem
Kết quả mình đặt ở cell [A13] trở đi, bạn muốn đặt chỗ nào cũng được, cứ theo cú pháp trong cell [A13]
Thân

code của bạn concogia hình như đã được rồi, tôi chỉ tò mò xem kết quả thôi chứ không "nghiền ngẫm" code.
Nhưng tôi nghĩ nếu sửa được chút thì hay hơn.
Nhiều khi ta nên đánh giá liệu "một cái gì đấy" có quan trọng lắm về mặt đúng đắn của dữ liệu, lường được khả năng cho phép có thể sẩy ra.
Tôi viết thư và tôi thường để các từ cách nhau 1 dấu cách. Nhưng nhiều khi lơ đãng hoặc "ngón tay run" (già rồi mà) nên gõ 2 dấu cách. Thư có còn giá trị không? Dĩ nhiên còn.
Tôi nghi rằng trong dữ liệu của người hỏi thì việc sau dấu ";" có 1 hay 2 dấu cách có lẽ không ảnh hưởng tới tính đúng đắn của dữ liệu. Vậy nếu ta lường được tình huống trong cuộc sống và không giả thiết chắc chắn là sẽ chỉ có 1 dấu cách thì code của ta sẽ chỉ càng thân thiện với người dùng mà thôi.
 
Upvote 0
code của bạn concogia hình như đã được rồi, tôi chỉ tò mò xem kết quả thôi chứ không "nghiền ngẫm" code.
Nhưng tôi nghĩ nếu sửa được chút thì hay hơn.
Nhiều khi ta nên đánh giá liệu "một cái gì đấy" có quan trọng lắm về mặt đúng đắn của dữ liệu, lường được khả năng cho phép có thể sẩy ra.
Tôi viết thư và tôi thường để các từ cách nhau 1 dấu cách. Nhưng nhiều khi lơ đãng hoặc "ngón tay run" (già rồi mà) nên gõ 2 dấu cách. Thư có còn giá trị không? Dĩ nhiên còn.
Tôi nghi rằng trong dữ liệu của người hỏi thì việc sau dấu ";" có 1 hay 2 dấu cách có lẽ không ảnh hưởng tới tính đúng đắn của dữ liệu. Vậy nếu ta lường được tình huống trong cuộc sống và không giả thiết chắc chắn là sẽ chỉ có 1 dấu cách thì code của ta sẽ chỉ càng thân thiện với người dùng mà thôi.
Đúng là có trường hợp có vài dấu cách thi còn tùy, nhưng trường hợp này với mình thì bắt buộc bạn ah: cần có cấu trúc là: "Urlname | urllink ; Urlname | urllink .... "

Nên cũng hơi vất vả với nó ......
 
Upvote 0
Nếu dữ liệu đúng như trong bài, bạn thử cái này xem
Kết quả mình đặt ở cell [A13] trở đi, bạn muốn đặt chỗ nào cũng được, cứ theo cú pháp trong cell [A13]
Thân
Thank bạn nhiều lắm .... nhưng cho mình hỏi chút là mình muốn tạo macro + phím tắt ..... sau đó chọn ô và dùng phím tắt thì nó thay đổi luôn dữ liệu trong ô đấy, thì làm như nào vậy bạn, mình mù tịt về cái code này ... @@
 
Upvote 0
Thank bạn nhiều lắm .... nhưng cho mình hỏi chút là mình muốn tạo macro + phím tắt ..... sau đó chọn ô và dùng phím tắt thì nó thay đổi luôn dữ liệu trong ô đấy, thì làm như nào vậy bạn, mình mù tịt về cái code này ... @@
Hổng phải Concogia trả lời bạn được hông?
Chọn 1 ô hoặc nhiều ô rồi ấn Ctrl+M thử xem.
----------------
Chỉnh lại 1 tí:
Thay dòng thứ 8 trong code bằng dòng này nhé
PHP:
Txt = Txt & " " & UCase(Mid(Str, I, 1))
 

File đính kèm

Lần chỉnh sửa cuối:
Upvote 0
code của bạn concogia hình như đã được rồi, tôi chỉ tò mò xem kết quả thôi chứ không "nghiền ngẫm" code.
Nhưng tôi nghĩ nếu sửa được chút thì hay hơn.
Nhiều khi ta nên đánh giá liệu "một cái gì đấy" có quan trọng lắm về mặt đúng đắn của dữ liệu, lường được khả năng cho phép có thể sẩy ra.
Tôi viết thư và tôi thường để các từ cách nhau 1 dấu cách. Nhưng nhiều khi lơ đãng hoặc "ngón tay run" (già rồi mà) nên gõ 2 dấu cách. Thư có còn giá trị không? Dĩ nhiên còn.
Tôi nghi rằng trong dữ liệu của người hỏi thì việc sau dấu ";" có 1 hay 2 dấu cách có lẽ không ảnh hưởng tới tính đúng đắn của dữ liệu. Vậy nếu ta lường được tình huống trong cuộc sống và không giả thiết chắc chắn là sẽ chỉ có 1 dấu cách thì code của ta sẽ chỉ càng thân thiện với người dùng mà thôi.
Hihi, dù sao cũng thank bạn một phát, nhưng đúng là bạn lo xa quá, mình đã nói trong bài
Nếu dữ liệu đúng như trong bài, bạn thử cái này xem
tức là mình đã loại trừ các trường hợp khác, thay vì bạn giải thích các vấn đề mà mình loại trừ, thì bạn có thể viết một code cho cái mà bạn cho là
...đúng đắn của dữ liệu, lường được khả năng cho phép có thể sẩy ra....
như vậy hay hơn cho mình vì mình học được thêm cái mới ( xem thử bạn ....lường được bi nhiêu trường hợp) và cho chủ topic một kinh nghiệm là khi hỏi phải lường trước những tình huống xảy ra
Tôi viết thư và tôi thường để các từ cách nhau 1 dấu cách. Nhưng nhiều khi lơ đãng hoặc "ngón tay run" (già rồi mà) nên gõ 2 dấu cách. Thư có còn giá trị không? Dĩ nhiên còn.
Nhìn dữ liệu thì biết rằng cái này hông phải do chủ topic nhập tay nên không có chuyện ....."run tay". Mà nếu có "run tay" thì do lỗi của chủ topic, mình hông chịu trách nhiệm
Híc, híc, híc
 
Upvote 0
Hihi, dù sao cũng thank bạn một phát, nhưng đúng là bạn lo xa quá, mình đã nói trong bài

tức là mình đã loại trừ các trường hợp khác, thay vì bạn giải thích các vấn đề mà mình loại trừ, thì bạn có thể viết một code cho cái mà bạn cho là

như vậy hay hơn cho mình vì mình học được thêm cái mới ( xem thử bạn ....lường được bi nhiêu trường hợp) và cho chủ topic một kinh nghiệm là khi hỏi phải lường trước những tình huống xảy ra

Nhìn dữ liệu thì biết rằng cái này hông phải do chủ topic nhập tay nên không có chuyện ....."run tay". Mà nếu có "run tay" thì do lỗi của chủ topic, mình hông chịu trách nhiệm
Híc, híc, híc

Thì tôi đã nói là với dữ liệu chính xác 1 dấu cách thì code của bạn làm được mà.
Tôi không nói code sai. Chỉ nói là nếu làm được thêm nữa thì chỉ "tổ" tốt hơn mà thôi.
Tôi không nói là bạn phải lường trước được, càng không nói là người hỏi phải lường trước được. Ý tôi là nếu bạn tự lường được thì chỉ "tổ" tốt hơn thôi. Không lường được cũng chả chết ai. Lường được ít cũng không ai có quyền trách, lường được đến đâu thì lường.
Thôi ta chấm dứt ở đây vì tôi đã "nghe" được nốt nhạc mỉa mai trong bài của bạn rồi
 
Lần chỉnh sửa cuối:
Upvote 0
Đúng là có trường hợp có vài dấu cách thi còn tùy, nhưng trường hợp này với mình thì bắt buộc bạn ah: cần có cấu trúc là: "Urlname | urllink ; Urlname | urllink .... "

Nên cũng hơi vất vả với nó ......

Đã dừng chân thì góp vui chút. Cũng chả kiểm tra gì. Gọi là "đổi món" chút ít
Góp vui thôi nhé, đừng dùng. Code cua bạn concogia thỏa mãn yêu cầu của bạn rồi.
 

File đính kèm

Upvote 0
Web KT

Bài viết mới nhất

Back
Top Bottom