Liệt kê các giá trị số trong chuỗi ký tự.

Liên hệ QC

nguyenmtuan

Thành viên chính thức
Tham gia
17/6/16
Bài viết
78
Được thích
4
Xin chào mọi người,
Mình có 1 vấn đề muốn nhờ mọi người giúp đỡ,
Chả là mình có dữ liệu dạng hàng như file đính kèm,
giờ mình muốn tại ô D4 liệt kê được các ký tự số (các dữ liệu số này luôn đứng đầu) của dữ liệu tại cột B, D, F, H, J, L, N, P, R... (cứ cách 1 cột 1), cái mà không hiện trùng lặp (ví dụ chỉ hiện 1 lần số 1 hoặc 1 lần số 12). Và tại ô E4 mình muốn hiện giá trị liệt kê nhỏ nhất của ô D4.
Mong các bạn chỉ bảo.
Cám ơn nhiều.
 

File đính kèm

Xin chào mọi người,
Mình có 1 vấn đề muốn nhờ mọi người giúp đỡ,
Chả là mình có dữ liệu dạng hàng như file đính kèm,
giờ mình muốn tại ô D4 liệt kê được các ký tự số (các dữ liệu số này luôn đứng đầu) của dữ liệu tại cột B, D, F, H, J, L, N, P, R... (cứ cách 1 cột 1), cái mà không hiện trùng lặp (ví dụ chỉ hiện 1 lần số 1 hoặc 1 lần số 12). Và tại ô E4 mình muốn hiện giá trị liệt kê nhỏ nhất của ô D4.
Mong các bạn chỉ bảo.
Cám ơn nhiều.
1/ Giá trị nhỏ nhất:
Mã:
E4=AGGREGATE(15,6,--SUBSTITUTE(SUBSTITUTE(B1:R1,"months","month"),"month",""),1)
Enter.
2/ Liệt kê các số:
Mã:
D4=JoinText(";",--SUBSTITUTE(IF(MATCH(B1:R1,B1:R1,)=COLUMN($A:$Z),SUBSTITUTE(B1:R1,"months","month")),"month",""))
Ctrl+Shift+Enter.

Thân
 

File đính kèm

PhuLien1902.png
@phulien1902

Đi du lịch ở đâu vui quá! quên anh em rồi hả!? :)

Thân
/-*+//-*+//-*+/

tại ô D4 liệt kê được các ký tự số (các dữ liệu số này luôn đứng đầu) của dữ liệu tại cột B, D, F, H, J, L, N, P, R... (cứ cách 1 cột 1), cái mà không hiện trùng lặp (ví dụ chỉ hiện 1 lần số 1 hoặc 1 lần số 12). Và tại ô E4 mình muốn hiện giá trị liệt kê nhỏ nhất của ô D4.
Bổ sung thêm cách: nếu bạn muốn liệt kê từ nhỏ đến lớn tại ô D4, thì dùng:
Mã:
D4=JoinText(";",SMALL(IFERROR(--SUBSTITUTE(IF(MATCH(B1:R1,B1:R1,)=COLUMN($A:$Z),SUBSTITUTE(B1:R1,"months","month")),"month",""),""),ROW(1:20)))
Kết thúc bằng Ctrl+Shift+Enter.
Mã:
E4=--LEFT(D5,FIND(";",D5)-1)
Chỉ Enter.

Thân
 

File đính kèm

View attachment 217824
@phulien1902

Đi du lịch ở đâu vui quá! quên anh em rồi hả!? :)

Thân
/-*+//-*+//-*+/


Bổ sung thêm cách: nếu bạn muốn liệt kê từ nhỏ đến lớn tại ô D4, thì dùng:
Mã:
D4=JoinText(";",SMALL(IFERROR(--SUBSTITUTE(IF(MATCH(B1:R1,B1:R1,)=COLUMN($A:$Z),SUBSTITUTE(B1:R1,"months","month")),"month",""),""),ROW(1:20)))
Kết thúc bằng Ctrl+Shift+Enter.
Mã:
E4=--LEFT(D5,FIND(";",D5)-1)
Chỉ Enter.

Thân
Cám ơn bác nhiều,
Bây giờ mình phát sinh thêm 1 vấn đề là ở cột A có các số tham chiếu (file đính kèm) tương ứng với các nhịp, Giờ mình muốn khi nhập giá gị ở cột A vào ô C15 thì ở ô D15 trả về các số tháng như ở trên và ở ô E15 trả về số nhỏ nhất trọng ô D15. Mong mọi người giúp đỡ.
Cám ơn các bác.
 

File đính kèm

Lần chỉnh sửa cuối:
Cám ơn bác nhiều,
Bây giờ mình phát sinh thêm 1 vấn đề là ở cột A có các số tham chiếu (file đính kèm) tương ứng với các nhịp, Giờ mình muốn khi nhập giá gị ở cột A vào ô C15 thì ở ô D15 trả về các số tháng như ở trên và ở ô E15 trả về số nhỏ nhất trọng ô D15. Mong mọi người giúp đỡ.
Cám ơn các bác.
Bài này chắc viết cho nó 1 hàm ( muốn tách thành 2 cũng được)
Chọn 2 cell [D17] & [E17] nhập
Mã:
=tim(A1:U8,C17)
Xong bấm Ctr + Shift+ Enter
Thân
 

File đính kèm

Bài này chắc viết cho nó 1 hàm ( muốn tách thành 2 cũng được)
Chọn 2 cell [D17] & [E17] nhập
Mã:
=tim(A1:U8,C17)
Xong bấm Ctr + Shift+ Enter
Thân
Cám ơn bác,
Nhưng giờ cái ô trả kết quả C15, D15, E15 nó ở sheet 2 (sheet khác) thì phải thêm câu lệnh như thế nào vậy bác?
 
Cám ơn bác,
Nhưng giờ cái ô trả kết quả C15, D15, E15 nó ở sheet 2 (sheet khác) thì phải thêm câu lệnh như thế nào vậy bác?
Không thêm bớt gì cả bạn à, muốn kết quả ở đâu, sheet nào cũng được, cứ nhập công thức theo cú pháp trong bài là "ok", bạn cứ thử đi nhé
Thân
 
Không thêm bớt gì cả bạn à, muốn kết quả ở đâu, sheet nào cũng được, cứ nhập công thức theo cú pháp trong bài là "ok", bạn cứ thử đi nhé
Thân
Không được bác ạ.
Ý em là vùng data vẫn ở sheet 1 nhưng vùng trả kết quả ở sheet 2 và C15, D15, E15 ở sheet 1 có thể ở 1 vị trí A1, B1, C1 trong sheet 2.
Bác chỉ giúp em với vì cái VBA này em gà lắm.
 
Không được bác ạ.
Ý em là vùng data vẫn ở sheet 1 nhưng vùng trả kết quả ở sheet 2 và C15, D15, E15 ở sheet 1 có thể ở 1 vị trí A1, B1, C1 trong sheet 2.
Bác chỉ giúp em với vì cái VBA này em gà lắm.
Bạn xem trong bài, công thức ở sheet 2, sheet 3
Thân
 

File đính kèm

Có thể bạn vướng chỗ Ctrl + Shift + Enter. Xài em này đi cho dễ hiểu
Thân
 

File đính kèm

Trong công thức:
=tim($A$1:$U$8,$C$23,COLUMN(A:A))
Thì vùng $A$1:$U$8 là vùng dữ liệu của bạn, rộng hay nhỏ hơn bạn khai báo vào chỗ đó
Thân
Cám ơn bạn rất nhiều, mình đã hiểu và áp dụng thành công theo yêu cầu của mình dựa trên giúp đỡ của bạn.
 
Web KT

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

Back
Top Bottom