Tìm số kí tự theo vùng!

Liên hệ QC

nhat chi mai

Thành viên gắn bó
Tham gia
22/11/11
Bài viết
1,832
Được thích
9
Chào Anh(Chị) em có một bài tập nhỏ nhưng làm mãi không ra, giờ gửi lên nhờ Anh(Chị) giúp đỡ.
Yêu cầu đề bài trong file đính kèm...Em cảm ơn
 

File đính kèm

  • Điền số kí hiệu theo vùng.xls
    25.5 KB · Đọc: 17
Chào Anh(Chị) em có một bài tập nhỏ nhưng làm mãi không ra, giờ gửi lên nhờ Anh(Chị) giúp đỡ.
Yêu cầu đề bài trong file đính kèm...Em cảm ơn
Bạn sử dụng công thức sau cho ô C2 và fill xuống dưới:
Mã:
=IF(A2="",C1,MID(A2,FIND(".",A2)+1,LEN(A2)))
Nếu cần thiết phải chuyển kết quả thành số thì bạn có thể *1, /1, ^1, +0, -0,... vào tham số thứ 3 của hàm IF.
 
Bạn sử dụng công thức sau cho ô C2 và fill xuống dưới:
Mã:
=IF(A2="",C1,MID(A2,FIND(".",A2)+1,LEN(A2)))
Nếu cần thiết phải chuyển kết quả thành số thì bạn có thể *1, /1, ^1, +0, -0,... vào tham số thứ 3 của hàm IF.

Em cảm ơn, nhưng nếu dùng công thức như vậy chỉ dùng được vùng I.1 là đầy đủ, còn các vùng kia chỉ trả được mỗi hàng có số liệu, các hàng trống lại trả về 0.HUHU
file đây ạ!
p/s cột số kí tự là em lấy ví dụ thôi, chứ không phải ô tham chiếu đâu ạ!
 

File đính kèm

  • Điền số kí hiệu theo vùng1.xls
    30 KB · Đọc: 8
Chỉnh sửa lần cuối bởi điều hành viên:
Em cảm ơn, nhưng nếu dùng công thức như vậy chỉ dùng được vùng I.1 là đầy đủ, còn các vùng kia chỉ trả được mỗi hàng có số liệu, các hàng trống lại trả về 0.HUHU
file đây ạ!
Tại bạn đặt công thức ở cột D đấy chứ. Bạn copy công thức y như vậy cho vào cột C xem nào, bài trên mình có nói rõ là công thức dành cho ô C2 mà.
 
.......................................................................
 
Chỉnh sửa lần cuối bởi điều hành viên:
Chào Anh(Chị) em có một bài tập nhỏ nhưng làm mãi không ra, giờ gửi lên nhờ Anh(Chị) giúp đỡ.
Yêu cầu đề bài trong file đính kèm...Em cảm ơn
Bài này có thể không dùng công thức cũng được.
Dùng phương pháp chọn hết vùng dữ liệu, bấm Ctrl +G, chọn special > blank để điền các ô trống bằng dữ liệu của ô trên. Sau đó dùng Ctrl + H để thay thế chuỗi "*." bằng chuỗi rỗng.

Có thể áp dụng cho lần sau nếu không nghĩ ra công thức...
 
Bài này có thể không dùng công thức cũng được.
Dùng phương pháp chọn hết vùng dữ liệu, bấm Ctrl +G, chọn special > blank để điền các ô trống bằng dữ liệu của ô trên. Sau đó dùng Ctrl + H để thay thế chuỗi "*." bằng chuỗi rỗng.

Có thể áp dụng cho lần sau nếu không nghĩ ra công thức...

Em có Một thắc mắc thêm là nếu mà số thứ tự là I.1.1 NẾU dùng công thức trên sẽ trả về giá trị 1.1, nhưng em muốn chỉ có 1 thôi, làm thế nào ạ?
Em lấy ví dụ một vùng kết quả trả về trong file

(GIÚP EM LẤY CÔNG THỨC TRONG FILE ZIP Ạ)
Em cảm ơn nhiều ạ!+-+-+-+
 

File đính kèm

  • ví dụ kết quả.zip
    37.8 KB · Đọc: 20
Chỉnh sửa lần cuối bởi điều hành viên:
Em có Một thắc mắc thêm là nếu mà số thứ tự là I.1.1 NẾU dùng công thức trên sẽ trả về giá trị 1.1, nhưng em muốn chỉ có 1 thôi, làm thế nào ạ?

Thử vầy xem:
Mã:
=TRIM(RIGHT(SUBSTITUTE(LOOKUP("zzz",$A$2:$A2),".",REPT(" ",255)),255))
 
Em có Một thắc mắc thêm là nếu mà số thứ tự là I.1.1 NẾU dùng công thức trên sẽ trả về giá trị 1.1, nhưng em muốn chỉ có 1 thôi, làm thế nào ạ?
Vậy thì có thể kết hợp đông tây y để chữa.
1. Dùng công thức bài số 2. Copy dán giá trị.
2. Dùng phương pháp Ctrl +H để xử chuỗi ".*"
 
Lần chỉnh sửa cuối:
Vẫn chưa đúng Anh ạ, ô I.10.9 nó phải trả về là 10 chứ không phải là 10.9 ạ

Nói không rõ ràng gì cả, cứ tưởng lấy số sau cùng
Cái này xem:
Mã:
=TRIM(MID(SUBSTITUTE(LOOKUP("zzz",$A$10:$A10),".",REPT(" ",255)),255,255))
Công thức gõ tại B10 nhé
 
Nói không rõ ràng gì cả, cứ tưởng lấy số sau cùng
Cái này xem:
Mã:
=TRIM(MID(SUBSTITUTE(LOOKUP([B][COLOR=#ff0000]"zzz"[/COLOR][/B],$A$10:$A10),".",[B][COLOR=#ff0000]REPT(" ",255)),255,255)[/COLOR][/B])
Công thức gõ tại B10 nhé

Thưa Thầy đã ra kết quả chuẩn, nhưng em không hiểu chỗ màu đỏ, Thầy giải thích giùm ạ.
Em cảm ơn Thầy nhiều.
 
Thưa Thầy đã ra kết quả chuẩn, nhưng em không hiểu chỗ màu đỏ, Thầy giải thích giùm ạ.
Em cảm ơn Thầy nhiều.

Biến dấu "." thành 255 khoảng trắng, xong Mid từ vị trí thứ 255 đi tới 255 ký tự nữa
Còn LOOKUP("zzz",.....) ---> Ví dụ ta có LOOKUP("zzz",$A$10:$A20) thì kết quả hàm này sẽ lấy giá trị cuối cùng trong A10:A20 mà nó tìm thấy
Ẹc... Ẹc... vậy thôi
 
Lần chỉnh sửa cuối:
Biến dấu "." thành 255 khoảng trắng, xong Mid từ vị trí thứ 255 đi tới 255 ký nữa
Còn LOOKUP("zzz",.....) ---> Ví dụ ta có LOOKUP("zzz",$A$10:$A20) thì kết quả hàm này sẽ lấy giá trị cuối cùng trong A10:A20 mà nó tìm thấy
Ẹc... Ẹc... vậy thôi

Thầy cho em hỏi luôn, 255 ký tự trắng mình phải đếm sao ạ? mà biết làm sao được 255 kí tự?
 
Biến dấu "." thành 255 khoảng trắng, xong Mid từ vị trí thứ 255 đi tới 255 ký nữa
Còn LOOKUP("zzz",.....) ---> Ví dụ ta có LOOKUP("zzz",$A$10:$A20) thì kết quả hàm này sẽ lấy giá trị cuối cùng trong A10:A20 mà nó tìm thấy
Ẹc... Ẹc... vậy thôi
Hàm LOOKUP("zzz",$A$10:$À10) ==> trả về giá trị của ô cuối cùng có dữ liệu là Text trong vùng phải không anh?
 
Nếu giả sử trong trường hợp CSDL mà dài gấp 4 lần trong file nguyencanh160890 GỬI thì khoảng trắng như thế nào ạ? chưa hiểu nên phiền Thầy quá.
 
Nếu giả sử trong trường hợp CSDL mà dài gấp 4 lần trong file nguyencanh160890 GỬI thì khoảng trắng như thế nào ạ? chưa hiểu nên phiền Thầy quá.

Tổng quát ta dùng hàm LEN luôn, dữ liệu dài bao nhiêu ta tạo bấy nhiêu khoảng trắng
Ví dụ công thức này:
Mã:
=TRIM(MID(SUBSTITUTE([COLOR=#ff0000]Cell giá trị[/COLOR],".",REPT(" ",[COLOR=#0000cd]255[/COLOR])),[COLOR=#0000cd]255[/COLOR],[COLOR=#0000cd]255[/COLOR]))
Sẽ sửa thành:
Mã:
=TRIM(MID(SUBSTITUTE([COLOR=#ff0000]Cell giá trị[/COLOR],".",REPT(" ",[COLOR=#0000cd]LEN([/COLOR][COLOR=#ff0000]Cell giá trị[/COLOR]))),[COLOR=#0000cd]LEN([/COLOR][COLOR=#ff0000]Cell giá trị[/COLOR][COLOR=#0000cd])[/COLOR],[COLOR=#0000cd]LEN([/COLOR][COLOR=#ff0000]Cell giá trị[/COLOR])))
 
Web KT
Back
Top Bottom