Trích xuất nhiều số từ chuỗi Excel

Điều chúng tôi muốn làm ở đây là trích xuất các số từ chuỗi văn bản hỗn hợp. Và để làm điều đó, chúng tôi sẽ sử dụng công thức sau

=TEXTJOIN(“”,TRUE,IFERROR((MID(CELL,ROW(INDIRECT(“1. ”&LEN(CELL))),1)*1),””))

Ở đâu

Ô - đề cập đến ô chứa chuỗi văn bản hỗn hợp mà từ đó chúng tôi sẽ trích xuất các số

  • Chọn một ô trống nơi bạn muốn hiển thị kết quả của công thức. Tốt nhất, nó phải liền kề với ô mà các số sẽ được trích xuất (bây giờ chúng tôi sẽ chọn ô B2)
  • Sao chép-dán công thức trên vào ô đã chọn. Đảm bảo thay thế CELL bằng ô mà các số sẽ được trích xuất

Trích xuất nhiều số từ chuỗi Excel
Trích xuất nhiều số từ chuỗi Excel

  • Vì đây là một công thức mảng, chỉ cần nhấn ENTER sẽ không làm được. Bạn sẽ phải nhấn tổ hợp phím Ctrl + Shift + Enter. Sau đó, công thức sẽ trả về một giá trị chỉ chứa các số từ ô tham chiếu

Trích xuất nhiều số từ chuỗi Excel
Trích xuất nhiều số từ chuỗi Excel

  • Sao chép công thức vào các ô còn lại (bạn có thể sử dụng núm điều khiển điền hoặc chức năng sao chép-dán để thực hiện việc này)

Trích xuất nhiều số từ chuỗi Excel
Trích xuất nhiều số từ chuỗi Excel

Khá đơn giản, phải không? . txt để bạn có thể dễ dàng truy cập vào nó

Công thức hoạt động như thế nào?

Hãy bắt đầu từ chức năng bên trong

LEN – hàm này trả về độ dài của chuỗi được biểu thị bằng một giá trị số. Nó đếm số ký tự trong chuỗi. Ví dụ: nếu bạn sử dụng hàm LEN trên “asfeas79874”, bạn sẽ nhận được “11”

GIÁN TIẾP – hàm này trả về một tham chiếu đến một phạm vi giá trị

ROW – hàm này trả về một dãy số của một tham chiếu. Công thức cho đến nay là =ROW(INDIRECT(“1. ”&LEN(CELL))). Công thức này sẽ trả về một chuỗi số với độ dài của chuỗi làm tham chiếu

MID – chức năng này trích xuất các ký tự trong một chuỗi. Vai trò của nó trong công thức là trả về giá trị #VALUE. lỗi cho các ký tự văn bản, giữ nguyên các ký tự số

IFERROR – hàm này trả về một kết quả hoặc công thức thay thế cho các lỗi trong công thức. Vai trò của nó trong công thức là thay thế #VALUE. lỗi với một khoảng trống

TEXTJOIN – chức năng này kết hợp văn bản từ nhiều phạm vi hoặc chuỗi. Vai trò của nó trong công thức là kết hợp các ký tự còn lại trong chuỗi (là các số)

Trích xuất số từ chuỗi văn bản hỗn hợp trong Excel (Dành cho Excel 2007, 2010 và 2013)

Thật không may, chức năng TEXTJOIN không khả dụng trong các phiên bản Excel cũ hơn. Tuy nhiên, có một cách giải quyết cho vấn đề này

Tuy nhiên, công thức sẽ dài hơn đáng kể (và phức tạp hơn. )

Chúng tôi sẽ sử dụng kết hợp các hàm sau để trích xuất các số từ các chuỗi văn bản hỗn hợp

  • NẾU
  • TỔNG
  • LEN
  • THAY THẾ
  • TÓM TẮT
  • GIỮA
  • LỚN
  • MỤC LỤC
  • ISNUMBER
  • HÀNG NGANG

Đó là rất nhiều chức năng. Nhưng đợi đã. Bạn chưa xem công thức

=IF(SUM(LEN(CELL)-LEN(SUBSTITUTE(CELL, {“0″,”1″,”2″,”3″,”4″,”5″,”6″,”7″,” . $”&LEN(CELL))),1))* ROW(INDIRECT(“$1. $”&LEN(CELL))),0), ROW(INDIRECT(“$1. $”&LEN(CELL))))+1,1) * 10^ROW(INDIRECT(“$1. $”&LEN(CELL)))/10),””)

Ở đâu

Ô - đề cập đến ô chứa chuỗi văn bản hỗn hợp mà từ đó chúng tôi sẽ trích xuất các số

Như bạn có thể thấy, công thức dài và phức tạp. Tôi khuyên bạn nên lưu nó vào Notepad. txt để bạn có quyền truy cập vào nó

Trích xuất các số từ một chuỗi văn bản hỗn hợp

Chúng tôi sẽ sử dụng cùng một tập dữ liệu

Trích xuất nhiều số từ chuỗi Excel
Trích xuất nhiều số từ chuỗi Excel

  • Chọn một ô trống nơi bạn muốn hiển thị kết quả của công thức. Tốt nhất, nó phải liền kề với ô mà các số sẽ được trích xuất (bây giờ chúng tôi sẽ chọn ô B2)
  • Sao chép-dán công thức trên vào ô đã chọn. Đảm bảo thay thế CELL bằng ô mà các số sẽ được trích xuất

Trích xuất nhiều số từ chuỗi Excel
Trích xuất nhiều số từ chuỗi Excel

  • Mặc dù đây là công thức mảng nhưng bạn chỉ cần nhấn phím ENTER sau khi nhập công thức (bạn vẫn nhấn tổ hợp phím Ctrl + Shift + Enter nếu muốn). Sau đó, công thức sẽ trả về một giá trị chỉ chứa các số từ ô tham chiếu

Trích xuất nhiều số từ chuỗi Excel
Trích xuất nhiều số từ chuỗi Excel

  • Sao chép công thức vào các ô còn lại (bạn có thể sử dụng núm điều khiển điền hoặc các hàm sao chép-dán để thực hiện việc này)

Trích xuất nhiều số từ chuỗi Excel
Trích xuất nhiều số từ chuỗi Excel

Sử dụng VBA để trích xuất số từ chuỗi văn bản hỗn hợp trong Excel

Nếu bạn cảm thấy thoải mái khi sử dụng VBScript, bạn có thể muốn thử phương pháp này. Lợi ích của việc sử dụng phương pháp này là nó hoạt động với nhiều phiên bản Excel (kể cả những phiên bản cũ hơn)

Mã mà chúng tôi sẽ sử dụng như sau

Function ExtractNumbers(CellRef As String)

Dim StringLength As Integer

StringLength = Len(CellRef)

For i = 1 To StringLength

If IsNumeric(Mid(CellRef, i, 1)) Then Result = Result & Mid(CellRef, i, 1)

Next i

ExtractNumbers = Result

End Function

Sao chép mã này

  • Mở tab Nhà phát triển. Sau đó bấm vào nút Visual Basic. Thao tác này sẽ mở cửa sổ VBA

Trích xuất nhiều số từ chuỗi Excel
Trích xuất nhiều số từ chuỗi Excel

  • Nhấp vào Chèn sau đó chọn Mô-đun

Trích xuất nhiều số từ chuỗi Excel
Trích xuất nhiều số từ chuỗi Excel

  • Trong cửa sổ Mô-đun, dán mã mà bạn đã sao chép ở trên

Trích xuất nhiều số từ chuỗi Excel
Trích xuất nhiều số từ chuỗi Excel

  • Mã bây giờ đã sẵn sàng để chạy

Trích xuất các số từ một chuỗi văn bản hỗn hợp

Chúng tôi sẽ sử dụng cùng một tập dữ liệu

Trích xuất nhiều số từ chuỗi Excel
Trích xuất nhiều số từ chuỗi Excel

  • Chọn một ô trống nơi bạn muốn hiển thị kết quả của công thức. Tốt nhất, nó phải liền kề với ô mà các số sẽ được trích xuất (bây giờ chúng tôi sẽ chọn ô B2)
  • Nhập công thức =ExtractNumbers(CELL). Điều này sẽ chạy mã mà bạn vừa thêm qua cửa sổ VBA. Đảm bảo thay đổi CELL bằng ô mà bạn sẽ trích xuất số từ đó

Trích xuất nhiều số từ chuỗi Excel
Trích xuất nhiều số từ chuỗi Excel

  • Nhấn Enter Công thức sau đó sẽ trả về một giá trị chỉ chứa các số từ ô tham chiếu

Trích xuất nhiều số từ chuỗi Excel
Trích xuất nhiều số từ chuỗi Excel

  • Sao chép công thức vào các ô còn lại (bạn có thể sử dụng núm điều khiển điền hoặc các hàm sao chép-dán để thực hiện việc này)

Trích xuất nhiều số từ chuỗi Excel
Trích xuất nhiều số từ chuỗi Excel

Để có sẵn mã này cho bạn, bạn có thể lưu sổ làm việc bạn đang làm việc dưới dạng. xls hoặc. tập tin xlsm. Bạn cũng có thể lưu mã trong sổ làm việc macro cá nhân của mình nếu có

Phần kết luận

Và chúng tôi đã có nó. Mặc dù không có chức năng chuyên dụng để trích xuất số từ chuỗi văn bản hỗn hợp trong Excel, nhưng bạn vẫn có thể sử dụng các phương pháp trên để thực hiện việc này

Bạn thậm chí có thể thêm nó dưới dạng một chức năng bằng mã VBA

Một lần nữa, nếu bạn dự định sử dụng các phương pháp này cho nhiều sổ làm việc, tôi khuyên bạn nên lưu các công thức ở đâu đó trên máy tính của mình để bạn có thể truy cập chúng một cách dễ dàng.