Cách lấy 1 phần trong chuỗi, xử lý trong excel làm thế nào? (1 người xem)

Liên hệ QC

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

liemnv1402

Thành viên mới
Tham gia
10/5/10
Bài viết
2
Được thích
0
Cách lấy 1 phần trong chuỗi, xử lý trong excel làm thế nào?
Các anh chị giúp tôi nhé.

VD: Có chuỗi là: Nguyễn Viết Liêm (a0904689958z@gmail.com)

Tôi muốn lấy ra: a0904689958z@gmail.com từ chuỗi trên làm thế nào các anh chị ?

gửi cho tôi qua y meo: a0904689958z@gmail.com nhé.
Thaks!
 
Lần chỉnh sửa cuối:
Cách lấy 1 phần trong chuỗi, xử lý trong excel làm thế nào?
Các anh chị giúp tôi nhé.

VD: Có chuỗi là: Nguyễn Viết Liêm (a0904689958z@gmail.com)

Tôi muốn lấy ra: a0904689958z@gmail.com từ chuỗi trên làm thế nào các anh chị ?

gửi cho tôi qua y meo: a0904689958z@gmail.com nhé.
Thaks!
VD tại ô A1=Nguyễn Viết Liêm (a0904689958z@gmail.com)
Tại ô B1 Bạn nhập công thức sau:
Mã:
B1 =SUBSTITUTE(RIGHT(A1,LEN(A1)-FIND("(",A1)),")","")
Tùy theo định dạng của máy Bạn thay dấu phẩy "," thành dấu chấm phẩy ";" nhé!
 
Cách lấy 1 phần trong chuỗi, xử lý trong excel làm thế nào?
Các anh chị giúp tôi nhé.

VD: Có chuỗi là: Nguyễn Viết Liêm (a0904689958z@gmail.com)

Tôi muốn lấy ra: a0904689958z@gmail.com từ chuỗi trên làm thế nào các anh chị ?

gửi cho tôi qua y meo: a0904689958z@gmail.com nhé.
Thaks!

Công thức của bạn MinhCong tốt rồi,
Thêm một cách nữa:
PHP:
=MID(A1,FIND("(",A1)+1,FIND(")",A1)-FIND("(",A1)-1)
 
Cách lấy 1 phần trong chuỗi, xử lý trong excel làm thế nào?
Các anh chị giúp tôi nhé.

VD: Có chuỗi là: Nguyễn Viết Liêm (a0904689958z@gmail.com)

Tôi muốn lấy ra: a0904689958z@gmail.com từ chuỗi trên làm thế nào các anh chị ?

gửi cho tôi qua y meo: a0904689958z@gmail.com nhé.
Thaks!
Đúng vấn đề mình đang quan tâm, các bro giúp mình với nhé :)
MÌnh đang cần lọc danh sách mail trong chuỗi mà bi' chưa giải quyết dc.
VD dẫy email sau làm thế nào lọc ra danh sách tùng mail đc ??? Thanks các bro nhiều :)
,<> ";>, "Nguyen Xuan Son" <xuan-son.nguyen@polytechnique.org>;nhapx@vnu.edu.vn; taita@vnu.edu.vn; nnthanh@vnu.edu.vn; nhson@vnu.edu.vn; anhnv@vnu.edu.vn;;> binhnt@vnu.edu.vn; dongtvp@vnu.edu.vn; ducvm@vnu.edu.vn; hand@vnu.edu.vn; hoandd@vnu.edu.vn;;> huyennt@vnu.edu.vn; locnv@vnu.edu.vn; namlt@vnu.edu.vn; ngocpb@vnu.edu.vn; nont@vnu.edu.vn;;> ntmphuong@vnu.edu.vn; ntntrang@vnu.edu.vn; trongtv@vnu.edu.vn; thinhht@vnu.edu.vn;;> tuent@vnu.edu.vn; thientc@vnu.edu.vn; dungcc@vnu.edu.vn; haudb@vnu.edu.vn; huett_htqt@vnu.edu.vn;;> huytn@vnu.edu.vn; phuongbh@vnu.edu.vn; anhtk@vnu.edu.vn; nguyentuananh@vnu.edu.vn;;> bachp@vnu.edu.vn; chiltk@vnu.edu.vn; chauvtn@vnu.edu.vn;
 
Đúng vấn đề mình đang quan tâm, các bro giúp mình với nhé :)
MÌnh đang cần lọc danh sách mail trong chuỗi mà bi' chưa giải quyết dc.
VD dẫy email sau làm thế nào lọc ra danh sách tùng mail đc ??? Thanks các bro nhiều :)
,<> ";>, "Nguyen Xuan Son" <xuan-son.nguyen@polytechnique.org>;nhapx@vnu.edu.vn; taita@vnu.edu.vn; nnthanh@vnu.edu.vn; nhson@vnu.edu.vn; anhnv@vnu.edu.vn;;> binhnt@vnu.edu.vn; dongtvp@vnu.edu.vn; ducvm@vnu.edu.vn; hand@vnu.edu.vn; hoandd@vnu.edu.vn;;> huyennt@vnu.edu.vn; locnv@vnu.edu.vn; namlt@vnu.edu.vn; ngocpb@vnu.edu.vn; nont@vnu.edu.vn;;> ntmphuong@vnu.edu.vn; ntntrang@vnu.edu.vn; trongtv@vnu.edu.vn; thinhht@vnu.edu.vn;;> tuent@vnu.edu.vn; thientc@vnu.edu.vn; dungcc@vnu.edu.vn; haudb@vnu.edu.vn; huett_htqt@vnu.edu.vn;;> huytn@vnu.edu.vn; phuongbh@vnu.edu.vn; anhtk@vnu.edu.vn; nguyentuananh@vnu.edu.vn;;> bachp@vnu.edu.vn; chiltk@vnu.edu.vn; chauvtn@vnu.edu.vn;
B1:
Cái này bạn thử dùng chức năng Text to columns... sau đó chọn Delimited---->Chọn Next---> hộp thoại xuất hiện

--->Tích chọn Other và điền (;) sau đó chọn Next --->0k.
B2: bạn copy vùng vừa thực hiện bước 1 sau đó---->Paste Special.... tích vào TRANSPOSE để chuyển về cột xem sao.
b3: vì khi dùng Text to... sau khi tách có một số mail có chứa >chiltk@.... bạn có thể dùng SUBSTITUTE (...,">"," ") để làm mất dấu ">"
Pm : cách này thủ công thui, còn dùng hàm thì đợi tiếp mọi ng trả lời
 
nhân tiện cho mình hỏi luôn cách lấy ký tự thứ trong 1 chuỗi

Ví dụ: text: "Giấy Ivory400 720x680 12000 tờ"
Dùng công thức nào tách 3 dữ liệu: Ivory400, 720x680 và 12000 (không dùng Text to colum nhé)

Cám ơn các bác đã quan tâm.
 
nhân tiện cho mình hỏi luôn cách lấy ký tự thứ trong 1 chuỗi

Ví dụ: text: "Giấy Ivory400 720x680 12000 tờ"
Dùng công thức nào tách 3 dữ liệu: Ivory400, 720x680 và 12000 (không dùng Text to colum nhé)

Cám ơn các bác đã quan tâm.

Bạn gửi nhiều dữ liệu lên đi xem hết các kiểu như thế nào để làm cho tổng quát , một cái thì dùng công thức làm gì? Nhé !
 
Đây bác ạ, dữ liệu nhiều lắm nhưng đa số là thế này
Cần phải tách từ chỗ kích thước ra làm 2 nữa để có thể tính ra trọng lượng của đống giấy.
 

File đính kèm

nhân tiện cho mình hỏi luôn cách lấy ký tự thứ trong 1 chuỗi

Ví dụ: text: "Giấy Ivory400 720x680 12000 tờ"
Dùng công thức nào tách 3 dữ liệu: Ivory400, 720x680 và 12000 (không dùng Text to colum nhé)

Cám ơn các bác đã quan tâm.
Giả sử dữ liệu của bạn nằm tại A1 trở xuống... Vậy ta làm như sau:
1> Đặt name
- Đặt con trỏ tại dòng 1 rồi vào menu Insert\Name\Define và đặt 1 name
PHP:
Arr =EVALUATE("{""" & SUBSTITUTE(Sheet1!$A1," ",""";""") & """}")
2> Công thức
3 giá trị mà bạn cần được trả về từ 3 công thức sau:
PHP:
=INDEX(Arr,2)
=INDEX(Arr,3)
=INDEX(Arr,4)
 

File đính kèm

Đây bác ạ, dữ liệu nhiều lắm nhưng đa số là thế này
Cần phải tách từ chỗ kích thước ra làm 2 nữa để có thể tính ra trọng lượng của đống giấy.
Lúc đầu bạn hỏi khác... giờ đưa dữ liệu lên lại khác xa với những gì đã hỏi ---> Chết người ta còn gì
Hic...
 

File đính kèm

hic, bác nhìn kỹ lại cột E rồi giúp nốt em cái phần kích thước để tính ra cân nặng!
Em vẫn chưa xử lý được.
 
Có nhưng chưa đủ bác ạ, em vẫn phải ghi lại một cách thủ công kích thước khổ giấy vì giữa chiều dài và chiều rộng có chữ "x" ở giữa (ví dụ 60x80) thì em ko biết cách để nó tự lấy 60*80 được.
 
Có nhưng chưa đủ bác ạ, em vẫn phải ghi lại một cách thủ công kích thước khổ giấy vì giữa chiều dài và chiều rộng có chữ "x" ở giữa (ví dụ 60x80) thì em ko biết cách để nó tự lấy 60*80 được.
Ah... tôi hiểu rồi (nói 1 lần làm luôn có phải khỏe hơn không?)
Xem file mới này (chú ý các name trong Define name nhé)
 

File đính kèm

Mình có một câu hỏi về tách chuỗi như thế này:
chuỗi: abc2456xyz9874568ppkh4587985.....
Tách riêng các phần 2456 ra. (nhiều phần số: 2456 ; 9874568 ...)
tách riêng các phần abc ra. (nhiều phần chữ)
Trong đó abc có thể gồm nhiều ký tự.
2456 có thể gồm nhiều số.
 
Mình có một câu hỏi về tách chuỗi như thế này:
chuỗi: abc2456xyz9874568ppkh4587985.....
Tách riêng các phần 2456 ra. (nhiều phần số: 2456 ; 9874568 ...)
tách riêng các phần abc ra. (nhiều phần chữ)
Trong đó abc có thể gồm nhiều ký tự.
2456 có thể gồm nhiều số.
Yêu cầu này quá dễ nếu dùng VBA
PHP:
Function ExtractStr(Text As String, Sep As String, iChoose As Boolean) As String
  With CreateObject("VBScript.RegExp")
    .Global = True
    .Pattern = IIf(iChoose, "\D", "\d")
    ExtractStr = .Replace(Text, " ")
  End With
  ExtractStr = Replace(WorksheetFunction.Trim(ExtractStr), " ", Sep)
End Function
- Giả sử dữ liệu của bạn nằm tại cell A1
- Để tách lấy phần số, gõ vào B1 công thức : =ExtractStr($A1,"; ",TRUE)
- Để tách lấy phần chữ, gõ vào C1 công thức : =ExtractStr($A1,"; ",FALSE)
 

File đính kèm

- Để tách lấy phần số, gõ vào B1 công thức : =ExtractStr($A1,"; ",TRUE)
- Để tách lấy phần chữ, gõ vào C1 công thức : =ExtractStr($A1,"; ",FALSE)
Cám ơn bác nhé! Em có chút ý kiến là thay true = số <>0 và False = 0 kết quả vẫn không đổi.
Cho em hỏi thêm nữa là: với cái đơn giản hơn:
abc12345
Trong VBA, em muốn tách riêng phần 12345 thành 1 biến mới để sử dụng.
Bác làm cái kết cấu dễ hiểu được không ạ! Em đang tập viết hàm :D
 
Cám ơn bác nhé! Em có chút ý kiến là thay true = số <>0 và False = 0 kết quả vẫn không đổi.
Cho em hỏi thêm nữa là: với cái đơn giản hơn:
abc12345
Trong VBA, em muốn tách riêng phần 12345 thành 1 biến mới để sử dụng.
Bác làm cái kết cấu dễ hiểu được không ạ! Em đang tập viết hàm :D
Nếu chỉ tách số thôi thì sửa hàm trên lại thành:
PHP:
Function ExtractStr(Text As String) As Double
  On Error Resume Next
  With CreateObject("VBScript.RegExp")
    .Global = True
    .Pattern = "\D"
    ExtractStr = .Replace(Text, "")
  End With
End Function
Càng đơn giản
 
Cám ơn bác nhé!
Để em hỏi rõ hơn bằng chính hàm em đang làm bác nhé:
Hàm đây:
Public Function kichthuoc(a As String, b As String, c As String) As String
'Ten ba kich thuoc co the xuat hien trong cong thuc tinh KL va DT
Dim e, f As Boolean
Dim k As Double
If b = "" Then
e = False
ElseIf k = Str(Right(b, 2))= 0 Then
e = False
Else
e = True
End If
If c = "" Then
f = False
ElseIf c = 0 Then
f = False
Else
f = True
End If
If e = True And f = True Then
kichthuoc = a + "x" + b + "x" + c
ElseIf e = True And f = False Then
kichthuoc = a + "x" + b
ElseIf e = False And f = True Then
kichthuoc = a + "x" + c
Else
kichthuoc = a
End If
End Function
Kết quả trả về của hàm này là ghép nối 3 giá trị trong 3 ô a, b, c thành một ô duy nhất với dấu x ở giữa các giá trị trong ô a, b, c.
VD:
a: V
b:60
c: 12
sẽ trả về kết quả là: Vx60x12
Tuy nhiên, em gặp trường hợp nếu cho b và c cũng đều có chữ thì kết quả lại sai :(.
Em khắc phục bằng cách dùng biến k tách riêng phần số của b ra.
Biến k mình sẽ ghi như thế nào để nó tách riêng phần số của b ra vậy ạ!
Em đang tập viết hàm, bác có thể dựa vào hàm em đang viết được không ạ?
Cám ơn bác một lần nữa.
 
Lần chỉnh sửa cuối:
Cám ơn bác nhé!
Để em hỏi rõ hơn bằng chính hàm em đang làm bác nhé:
Hàm đây:
Kết quả trả về của hàm này là ghép nối 3 giá trị trong 3 ô a, b, c thành một ô duy nhất với dấu x ở giữa các giá trị trong ô a, b, c.
VD:
a: V
b:60
c: 12
sẽ trả về kết quả là: Vx60x12
Tuy nhiên, em gặp trường hợp nếu cho b và c cũng đều có chữ thì kết quả lại sai :(.
Em khắc phục bằng cách dùng biến k tách riêng phần số của b ra.
Biến k mình sẽ ghi như thế nào để nó tách riêng phần số của b ra vậy ạ!
Em đang tập viết hàm, bác có thể dựa vào hàm em đang viết được không ạ?
Cám ơn bác một lần nữa.
Tôi đang thắc mắc, tại sao hàm của bạn không là như vầy nhỉ:
PHP:
Public Function kichthuoc(a As String, b As String, c As String) As String
  Dim Tmp As String
  a = Replace(a, " ", vbBack)
  b = Replace(b, " ", vbBack)
  c = Replace(c, " ", vbBack)
  Tmp = a + " " + b + " " + c
  Tmp = WorksheetFunction.Trim(Tmp)
  Tmp = Replace(Tmp, " ", "x")
  kichthuoc = Replace(Tmp, vbBack, " ")
End Function
 
Cám ơn bác nhé!
Để em hỏi rõ hơn bằng chính hàm em đang làm bác nhé:
Hàm đây:
Kết quả trả về của hàm này là ghép nối 3 giá trị trong 3 ô a, b, c thành một ô duy nhất với dấu x ở giữa các giá trị trong ô a, b, c.
VD:
a: V
b:60
c: 12
sẽ trả về kết quả là: Vx60x12
Tuy nhiên, em gặp trường hợp nếu cho b và c cũng đều có chữ thì kết quả lại sai :(.
Em khắc phục bằng cách dùng biến k tách riêng phần số của b ra.
Biến k mình sẽ ghi như thế nào để nó tách riêng phần số của b ra vậy ạ!
Em đang tập viết hàm, bác có thể dựa vào hàm em đang viết được không ạ?
Cám ơn bác một lần nữa.

xin cung cấp cho bạn 1 hàm cực kỳ đơn giản nhé
code:
PHP:
Public Function kichthuoc(a, b, c)
    kichthuoc = Trim(a) & IIf(Trim(b) <> "", "x" & Trim(b), "") & IIf(Trim(c) <> "", "x" & Trim(c), "")
End Function
 
xin cung cấp cho bạn 1 hàm cực kỳ đơn giản nhé
code:
PHP:
Public Function kichthuoc(a, b, c)
    kichthuoc = Trim(a) & IIf(Trim(b) <> "", "x" & Trim(b), "") & IIf(Trim(c) <> "", "x" & Trim(c), "")
End Function
Đâu có được chứ
Nếu a = "" thì hàm của bạn cho kết quả = xbxc à? (mà lý ra nó phải là bxc)
 
Đâu có được chứ
Nếu a = "" thì hàm của bạn cho kết quả = xbxc à? (mà lý ra nó phải là bxc)
Đó là mình làm theo câu hỏi của Xung_Doanh, do bạn ấy không đề cập tới a được phép có giá trị rỗng.
Còn nếu bạn muốn phân tích các thuật giải thì mình sẵn sàng, còn nếu nói như bạn thì hàm của mình còn tốt hơn nhiều so với hàm của bạn viết đấy. Bạn thử lấy hàm của bạn truyền vào các giá trị a,b,c đều là các giá trị rỗng thử xem sao nhé.
 
Đó là mình làm theo câu hỏi của Xung_Doanh, do bạn ấy không đề cập tới a được phép có giá trị rỗng.
Còn nếu bạn muốn phân tích các thuật giải thì mình sẵn sàng, còn nếu nói như bạn thì hàm của mình còn tốt hơn nhiều so với hàm của bạn viết đấy. Bạn thử lấy hàm của bạn truyền vào các giá trị a,b,c đều là các giá trị rỗng thử xem sao nhé.
Xin chỉ giáo giùm: Nó tốt chổ nào?
Nếu a, b, c đều = rổng thì hàm của tôi sẽ trả về giá trị rổng và hàm của bạn cũng thế!
--------
Giờ bạn thử sửa lại hàm của bạn sao cho giá trị nào rổng cũng tính được xem thế nào?
Tôi rất muốn học hỏi những giải thuật mới
 
mình vẫn chưa hiểu lắm. Mong mọi người giúp đỡ tách cái chuỗi này với.Tách cái chữ phần đỏ.

HTN - LÀM SAO TÁCH CÁI NÀY RA - FJTL
TIYHPW - LAM SAO DE TACH - ALJFOIULAK2354
 
mình vẫn chưa hiểu lắm. Mong mọi người giúp đỡ tách cái chuỗi này với.Tách cái chữ phần đỏ.

HTN - LÀM SAO TÁCH CÁI NÀY RA - FJTL
TIYHPW - LAM SAO DE TACH - ALJFOIULAK2354

Cho chuỗi trên tại A1, dùng tạm:
=TRIM(LEFT(RIGHT(A1,LEN(A1)-FIND("-",A1)),FIND("-",RIGHT(A1,LEN(A1)-FIND("-",A1)-1))))
 
Thế tách abc123 từ abc123dfdsfgsdfg như thế nào vậy? Thanks!!!
 
Mình có vấn đề này, nhờ các bạn giúp mình với.
Vd mình có 3 ô:
03/2013/TT-BXD
19/2013/QĐ-TTg
28/2013/NĐ-CP
Giờ muốn kiểm tra xem nội dung chuỗi của ô đó là TT thì ghi "Thông Tư", QĐ thì ghi "Quyết Định", NĐ thì ghi là "Nghị Định"
thì làm sao nhỉ?
 

File đính kèm

Mình có vấn đề này, nhờ các bạn giúp mình với.
Vd mình có 3 ô:
03/2013/TT-BXD
19/2013/QĐ-TTg
28/2013/NĐ-CP
Giờ muốn kiểm tra xem nội dung chuỗi của ô đó là TT thì ghi "Thông Tư", QĐ thì ghi "Quyết Định", NĐ thì ghi là "Nghị Định"
thì làm sao nhỉ?

Chuổi màu đỏ ở trên là QUYẾT ĐỊNH hay THÔNG TƯ (vì nó vừa có QĐ lại vừa có TT)
 
Chuổi màu đỏ ở trên là QUYẾT ĐỊNH hay THÔNG TƯ (vì nó vừa có QĐ lại vừa có TT)
Em trả lời thay bạn đó.
Chữ TTg là Thủ tướng đó bác.
Đó là quy định viết tắt đánh số hiệu văn bản của Nhà nước mà em học mót được hii
 
Mình có vấn đề này, nhờ các bạn giúp mình với.
Vd mình có 3 ô:
03/2013/TT-BXD
19/2013/QĐ-TTg
28/2013/NĐ-CP
Giờ muốn kiểm tra xem nội dung chuỗi của ô đó là TT thì ghi "Thông Tư", QĐ thì ghi "Quyết Định", NĐ thì ghi là "Nghị Định"
thì làm sao nhỉ?
Nếu quy luất của số văn bản như vậy thì thử làm cách này xem sao, tuy dài nhưng cũng tạm ổn.
 

File đính kèm

Em trả lời thay bạn đó.
Chữ TTg là Thủ tướng đó bác.
Đó là quy định viết tắt đánh số hiệu văn bản của Nhà nước mà em học mót được hii

Nếu vậy thì nhập công thức này vào B1:
Mã:
=LOOKUP(2,1/COUNTIF(A1,{"*","*NĐ-*","*QĐ-*","*TT-*"}),{"Đếch biết","Nghị định","Quyết định","Thông tư"})
----------------------------------
Nếu quy luất của số văn bản như vậy thì thử làm cách này xem sao, tuy dài nhưng cũng tạm ổn.
Cái chổ mà anh Ba Tê ghi là: "Má ơi! Cái gì dzậy?" em đoán là Công - Tai - Nơ (01/2013/L-CTN)
Ẹc... Ẹc...
 
Lần chỉnh sửa cuối:
Nếu vậy thì nhập công thức này vào B1:
Mã:
=LOOKUP(2,1/COUNTIF(A1,{"*","*NĐ-*","*QĐ-*","*TT-*"}),{"Đếch biết","Nghị định","Quyết định","Thông tư"})
----------------------------------

Cái chổ mà anh Ba Tê ghi là: "Má ơi! Cái gì dzậy?" em đoán là Công - Tai - Nơ (01/2013/L-CTN)
Ẹc... Ẹc...
Công thức của bác và bác bate hay thật.
Em lại xin dịch có thể chữ L là Luật hoặc là bạn đó ghi thiếu chữ.
Còn CTN chắc là Cấp thoát nước
Sau dấu - là cơ quan ban hành Thông tư, Nghị định đó.
 
Công thức của bác và bác bate hay thật.
Em lại xin dịch có thể chữ L là Luật hoặc là bạn đó ghi thiếu chữ.
Còn CTN chắc là Cấp thoát nước
Sau dấu - là cơ quan ban hành Thông tư, Nghị định đó.
Cám ơn các anh chị và các bạn đã giúp đỡ, mình làm được rồi,
văn bản số 01/2013/L-CTN là Lệnh, CTN viết tắt của Chủ tịch nước đó.
 
Tiện đây mình xin hỏi 1 câu hỏi:
Giả sử ở ô A1, mình có chuỗi text: SAT, 28 Sep
Mình muốn ô A2 hiện ra kết quả:
- Nếu ô A1 có ghi SAT hoặc SUN thì A2 sẽ trả về giá trị Weekend.
- Nếu ô A1 có các giá trị ngày còn lại trong tuần (MON, TUE,...) thì A2 sẽ trả về giá trị Weekday,
Thanks.
 
Tiện đây mình xin hỏi 1 câu hỏi:
Giả sử ở ô A1, mình có chuỗi text: SAT, 28 Sep
Mình muốn ô A2 hiện ra kết quả:
- Nếu ô A1 có ghi SAT hoặc SUN thì A2 sẽ trả về giá trị Weekend.
- Nếu ô A1 có các giá trị ngày còn lại trong tuần (MON, TUE,...) thì A2 sẽ trả về giá trị Weekday,
Thanks.
Nếu dữ liệu tại Á của bạn là dạng Date thì dùng công thức sau
Mã:
=IF(OR(WEEKDAY(A1)=1,WEEKDAY(A1)=7),"Weekend","Weekday")
Nếu là Text thì xài tạm cái này
Mã:
=IF(OR(IFERROR(SEARCH("Sat",A1,1),0),IFERROR(SEARCH("Sun",A1,1),0)),"Weekend","Weekday")
 
Nếu dữ liệu tại Á của bạn là dạng Date thì dùng công thức sau
Mã:
=IF(OR(WEEKDAY(A1)=1,WEEKDAY(A1)=7),"Weekend","Weekday")
Nếu là Text thì xài tạm cái này
Mã:
=IF(OR(IFERROR(SEARCH("Sat",A1,1),0),IFERROR(SEARCH("Sun",A1,1),0)),"Weekend","Weekday")

Nếu A1 là Date thì =IF(WEEKDAY(A1, 2) > 5, ....
Nếu A1 là Text thì =IF(COUNTIF(A1,"S*"), ...
 
Kính gởi Thầy ndu96081631,
Nhân topic này, con có file này kính nhờ Thầy giúp con với – trong File đính kèm đây ạ, cột A, B, D cố định, cột C lộn xộn – con muốn lọc từ cột C để đưa giá trị vào cột D (acc) và giá trị cột D này sẽ trả về giá trị tương ứng với cột B bằng chính account của người này đã được lọc từ cột C (nếu có) – trường hợp không có trả về rỗng

Thầy giúp con với Thầy nhé
Con cảm ơn Thầy nhiều ơi là nhiều
Con mong tin Thầy lắm ạ
Con chuotpt3
 

File đính kèm

Kính gởi Thầy ndu96081631,
Nhân topic này, con có file này kính nhờ Thầy giúp con với – trong File đính kèm đây ạ, cột A, B, D cố định, cột C lộn xộn – con muốn lọc từ cột C để đưa giá trị vào cột D (acc) và giá trị cột D này sẽ trả về giá trị tương ứng với cột B bằng chính account của người này đã được lọc từ cột C (nếu có) – trường hợp không có trả về rỗng

Thầy giúp con với Thầy nhé
Con cảm ơn Thầy nhiều ơi là nhiều
Con mong tin Thầy lắm ạ
Con chuotpt3
Công thức tại D4:
Mã:
=IF(COUNTIF($C$4:$C$20,"*"&B4&"*"),B4,"")
Kéo fill xuống
(đoán đại, hên thì trúng)
 
Con cảm ơn Thầy ndu96081631 lắm ạ – Đúng như con mô tả .........

Nhưng Sếp con đang cần thông tin như File đây Thầy: từ 1 cột lộn xộn "Trần Quang Vinhvinhtq12@gmail.com" – tách thành 2 cột: 1 cột account = "vinhtq12@gmail.com" và 1 cột Full name = "Trần Quang Vinh"

Con đính kèm File đây Thầy ơi.

Thầy giúp con với ạ – con cảm ơn Thầy nhiều lắm
Con chuotpt3
 

File đính kèm



Nhưng Sếp con đang cần thông tin như File đây Thầy: từ 1 cột lộn xộn "Trần Quang Vinhvinhtq12@gmail.com" – tách thành 2 cột: 1 cột account = "vinhtq12@gmail.com" và 1 cột Full name = "Trần Quang Vinh"

Đã xem qua file! Lộn xộn kiểu đó, đừng nói là công thức, cho dù dùng VBA cũng không biết có làm được không nữa
 

......
Nhưng Sếp con đang cần thông tin như File đây Thầy: từ 1 cột lộn xộn "Trần Quang Vinhvinhtq12@gmail.com" – tách thành 2 cột: 1 cột account = "vinhtq12@gmail.com" và 1 cột Full name = "Trần Quang Vinh"
......
Thử cái mớ lộn xộn ( nhưng cũng có tí tẹo quy luật) này bằng VBA xem sao, chưa lường được hết các trường hợp ( vì mới....thử & các ký tự hổng biết lấy đủ chưa nữa), dữ liệu in ít như trong bài thì .....hình như được+-+-+-++-+-+-++-+-+-+
Thân
 

File đính kèm

Dạ ... con cảm ơn Thầy concogia và Thầy ndu96081631 ........
Đúng ý sếp con rồi ạ ........
:<> :<> :<> :<> :<> :<> :<> :<> :<> :<> :<>
 
Phân tích chuỗi Trần Quang Vinhvinhtq12@gmail.com
- Nếu loại phần domain ra thì còn lại tên và tên mail. (Trần Quang Vinhvinhtq12)
- Nếu tách theo " " thì được chuỗi cuối cùng là tên cộng vài ký tự (Vinhvinhtq12)
- Nếu loại chữ số ra thì còn lại chỉ ký tự tên và họ viết tắt (Vinhvinhtq)
- Nếu trừ số ký tự viết tắt thì còn lại 2 lần tên (Vinhvinh)
- Chia 2 thì còn lại tên
- Join trở lại thì được họ tên

Mã:
Function LayTen(ByVal s As String) As String
[COLOR=#008000]' lấy tên ra từ chuỗi dạng Trần Quang Vinhvinhtq12@gmail.com[/COLOR]
Dim hoTen, ten
Dim i As Integer
hoTen = Split(Split(s, "@")(0), " ") [COLOR=#008000]' loại bỏ phần sau dấu @ và tách ra từng từ[/COLOR]
ten = hoTen(UBound(hoTen))
For i = 0 To 9[COLOR=#008000] ' loại các ký tự dạng chữ số[/COLOR]
  ten = Replace(ten, i, "")
Next i
[COLOR=#008000]' lưu ý: ubound(hoTen) cũng là số từ của họ và đệm[/COLOR]
ten = Left(ten, (Len(ten) - UBound(hoTen)) / 2)
hoTen(UBound(hoTen)) = ten
LayTen = Join(hoTen, " ")
End Function
 
Lần chỉnh sửa cuối:
Giup em file này với các thầy ơi. Nội dung là em muốn lọc tên xã ở file này. Có 18 xã tất cả. Khi lọc xong cho sang 1 cột
 

File đính kèm

kính gởi các anh chị,

Em có 1 file như file đính kèm, xin hỏi anh chị làm sao để tách chỉ lấy địa chỉ E-mail thôi. đừng bắt em copy từng cái nhé! xin cảm ơn!
 

File đính kèm

kính gởi các anh chị,

Em có 1 file như file đính kèm, xin hỏi anh chị làm sao để tách chỉ lấy địa chỉ E-mail thôi. đừng bắt em copy từng cái nhé! xin cảm ơn!
Dữ liệu của bạn khá lung tung, ko biết file thật có còn tình huống nào ko, Nếu còn thì gửi thêm dữ liệu lên rồi mới tính đến chuyện lọc ra được chính xác
 

File đính kèm

Bạn thử CT này ở ô B1 nhe!!!!!
Mã:
B1=IF(ISERR(--MID(A1,FIND(",,,,",A1)+4,5)>10^4),"",LEFT(A1,FIND(",,,,",A1)-1))
Rồi fill xuống!!!
 
Các anh chị cao thủ excel, đọc các bài toán excel trong topic, các anh chị làm hay quá. Em đọc và làm theo rất thích ạ.
Hôm nay, em có bài toán excel mọi người giúp em tìm ra lời giải với, em cảm ơn nhiều ạ.

Gía trị ô
A1: http://www.youtube.com/watch?v=xILx6kr3ObY,,,,114219,1 year ago
A2: http://www.youtube.com/watch?v=3OPzs9CTPNA,,,,134659,3 years ago
A3: http://www.youtube.com/watch?v=pEQAB459ZS8,,,,233,1 year ago

YÊU CẦU:
1. LẤY PHẦN SỐ: giữa 4 dấu phẩy(,,,,) và 1 dấu phẩy(,) ; đó là 114219(A1); 134659(A2); 233(A3)..., để sau đó em lấy số này so với 10000, rồi dãy kí tự nào nào có giá trị số hơn thì em lại làm bước 2
2. Dãy nào thỏa mãn thì TÁCH LẤY PHẦN LINK youtube(phần trước 4 dấu phẩy) ra khỏi dãy kí tự.

EM CẢM ƠN RẤT NHIỀU KHI NHẬN ĐƯỢC SỰ GIÚP ĐỠ CỦA MỌI NGƯỜI :D
Em có phần tệp đính kèm bên dưới ạ! ^^
Dữ liệu của bạn một số địa chỉ từ dòng 1 đến dòng 51 không đúng như trong vd của bạn, nên mình sẽ làm từ dòng 52 trở xuống, còn phần ở trên nếu bạn muốn không báo lỗi thì cài thêm hàm IFERROR nửa nghe. Tại ô I52 bạn gõ công thức như sau:
Mã:
=IF(--MID(A52,FIND(",,,,",A52,1)+4,FIND(",",A52, FIND(",,,,",A52,1)+4)-FIND(",,,,",A52,1)-4)>10000,LEFT(A52,FIND(",,,,",A52,1)-1),"")
Fill CT xuống dưới.
 

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

Back
Top Bottom