Note: The other languages of the website are Google-translated. Back to English

Làm thế nào để trích xuất từ ​​đầu tiên / cuối cùng / thứ n từ chuỗi văn bản trong Excel?

Bạn đã bao giờ gặp phải vấn đề mà bạn cần trích xuất một từ nhất định từ chuỗi văn bản trong một trang tính chưa? Ví dụ: bạn có dải chuỗi văn bản sau đây cần thiết để lấy từ đầu tiên / cuối cùng hoặc từ thứ n từ chúng, ở đây tôi có thể nói về một số cách hiệu quả để bạn giải quyết nó.


Trích xuất từ ​​đầu tiên hoặc họ từ chuỗi văn bản bằng Công thức

Nếu bạn cần trích xuất từ ​​đầu tiên từ danh sách các chuỗi văn bản, các công thức sau có thể giúp bạn.

Để trích xuất từ ​​đầu tiên, vui lòng nhập công thức bên dưới vào một ô trống, sau đó kéo chốt Tự động điền của ô này vào phạm vi bạn cần.

= IF (ISERR (FIND ("", A2)), "", LEFT (A2, FIND ("", A2) -1))

Để trích xuất từ ​​cuối cùng từ mỗi ô, vui lòng áp dụng công thức sau:

= IF (ISERR (FIND ("", A2)), "", RIGHT (A2, LEN (A2) -FIND ("*", SUBSTITUTE (A2, "", "*", LEN (A2) -LEN ( SUBSTITUTE (A2, "", ""))))))

Và bây giờ bạn sẽ thấy từ đầu tiên hoặc từ cuối cùng được trích xuất từ ​​mỗi ô.

Ghi chú: Trong các công thức trên, A2 cho biết ô bạn sẽ trích xuất từ ​​đầu tiên hoặc từ cuối cùng.

Khó nhớ các công thức phức tạp dài? Công cụ tuyệt vời giúp bạn trích xuất Word thứ nith chỉ vài lần nhấp chuột!

Các công thức dài ở trên chỉ có thể trích xuất từ ​​đầu tiên và từ cuối cùng, nhưng sẽ vô ích khi trích xuất từ ​​thứ n được chỉ định, nói từ thứ hai, từ thứ sáu, v.v. Ngay cả khi bạn có thể tìm ra công thức để giải quyết vấn đề, công thức phải quá phức tạp để ghi nhớ và áp dụng. Ở đây, tính năng Trích xuất từ ​​thứ n trong ô của Kutools cho Excel được khuyến nghị và nó sẽ giúp bạn trích xuất từ ​​thứ n dễ dàng nhất có thể!


Kutools cho Excel - Bao gồm hơn 300 công cụ tiện dụng cho Excel. Bản dùng thử miễn phí đầy đủ tính năng 30-ngày, không cần thẻ tín dụng! Get It Now

Trích xuất từ ​​thứ n từ chuỗi văn bản với chức năng do người dùng xác định

Nếu bạn muốn trích xuất từ ​​thứ hai, thứ ba hoặc bất kỳ từ thứ n nào từ chuỗi văn bản, bạn có thể tạo một hàm do người dùng xác định để xử lý nó.

1. Giữ ALT + F11 phím để mở Cửa sổ Microsoft Visual Basic for Applications.

2. Nhấp chuột Chèn > Mô-đunvà dán mã sau vào Mô-đun cửa sổ.

Function FindWord(Source As String, Position As Integer)
'Update 20131202
Dim arr() As String
arr = VBA.Split(Source, " ")
xCount = UBound(arr)
If xCount < 1 Or (Position - 1) > xCount Or Position < 0 Then
    FindWord = ""
Else
    FindWord = arr(Position - 1)
End If
End Function

3. Sau đó lưu mã, trong ví dụ này, tôi sẽ nhận được từ thứ ba từ chuỗi, vì vậy hãy nhập công thức này = findword (A2,3) vào ô trống B2, sau đó kéo chốt Tự động điền của ô này vào phạm vi bạn cần. Xem ảnh chụp màn hình:

LƯU Ý Trong công thức trên, A2 là ô mà bạn muốn trích xuất từ, số 3 cho biết từ thứ ba trong chuỗi mà bạn sẽ trích xuất và bạn có thể thay đổi chúng khi cần.


Trích xuất từng từ từ chuỗi văn bản và liệt kê chúng theo chiều ngang hoặc chiều dọc

Phương pháp này sẽ giới thiệu Kutools cho Excel's Chia ô tiện ích để trích xuất từng từ từ các ô chuỗi văn bản, sau đó liệt kê các từ được trích xuất theo chiều ngang hoặc chiều dọc dựa trên nhu cầu của bạn.

Kutools cho Excel - Bao gồm hơn 300 công cụ tiện dụng cho Excel. Bản dùng thử miễn phí đầy đủ tính năng 30-ngày, không cần thẻ tín dụng! Dùng thử miễn phí ngay!

1. Chọn các ô chuỗi văn bản mà bạn sẽ trích xuất các từ của chúng và nhấp vào Kutools > Hợp nhất & Tách > Chia ô.

2. Trong hộp thoại Mở Ô Tách, chỉ định kiểu tách trong Kiểu phần, kiểm tra Không gian tùy chọn trong Chỉ định dấu phân tách phần và nhấp vào Ok cái nút. Xem ảnh chụp màn hình:

3. Bây giờ chỉ định phạm vi đích mà bạn sẽ xuất các từ được trích xuất vào và nhấp vào OK nút

Nếu bạn đã kiểm tra Chia thành các cột trong hộp thoại Chia ô ở trên, mọi từ được trích xuất từ ​​mọi chuỗi văn bản và được liệt kê theo chiều dọc.

Nếu bạn đã kiểm tra Chia thành hàng trong hộp thoại Split Cells ở trên, mọi từ được trích xuất từ ​​mọi chuỗi văn bản và được liệt kê theo chiều ngang.


Trích xuất từ ​​thứ n từ chuỗi văn bản trong Excel bằng một công cụ tuyệt vời

Nếu bạn đã cài đặt Kutools cho Excel, bạn có thể sử dụng Trình trợ giúp công thức> Trích xuất từ ​​thứ n trong tính năng ô để nhanh chóng trích xuất từ ​​thứ n từ ô được chỉ định một cách dễ dàng.

Kutools cho Excel - Bao gồm hơn 300 công cụ tiện dụng cho Excel. Bản dùng thử miễn phí đầy đủ tính năng 30-ngày, không cần thẻ tín dụng! Dùng thử miễn phí ngay!

1. Chọn ô bạn sẽ đặt từ được trích xuất và nhấp vào Kutools > Công thức trợ giúp > Công thức trợ giúp để kích hoạt tính năng này.

2. Trong hộp thoại Trình trợ giúp công thức, vui lòng thực hiện như sau:
(1) Chọn bản văn từ Loại công thức danh sách thả xuống;
(2) Nhấp để đánh dấu Trích xuất từ ​​thứ n trong ô trong Chọn một công thức hộp danh sách;
(3) Trong Pin , chỉ định ô mà bạn sẽ trích xuất từ;
(4) Trong Thứ N hộp, chỉ định số lượng.

3. Nhấn vào Ok cái nút. Nếu cần, hãy kéo Xử lý Tự động điền của ô công thức và sao chép công thức sang các ô khác.


Demo: trích xuất từng từ từ chuỗi văn bản và liệt kê chúng theo chiều ngang hoặc chiều dọc


Kutools cho Excel bao gồm hơn 300 công cụ tiện dụng cho Excel, miễn phí dùng thử không giới hạn trong 30 ngày. Tải xuống và dùng thử miễn phí ngay bây giờ!

Các bài liên quan:


Các công cụ năng suất văn phòng tốt nhất

Kutools cho Excel giải quyết hầu hết các vấn đề của bạn và tăng 80% năng suất của bạn

  • Tái sử dụng: Chèn nhanh công thức phức tạp, biểu đồ và bất cứ thứ gì bạn đã sử dụng trước đây; Mã hóa ô với mật khẩu; Tạo danh sách gửi thư và gửi email ...
  • Thanh siêu công thức (dễ dàng chỉnh sửa nhiều dòng văn bản và công thức); Bố cục đọc (dễ dàng đọc và chỉnh sửa số lượng ô lớn); Dán vào Dải ô đã Lọchữu ích. Cảm ơn !
  • Hợp nhất các ô / hàng / cột mà không làm mất dữ liệu; Nội dung phân chia ô; Kết hợp các hàng / cột trùng lặp... Ngăn chặn các ô trùng lặp; So sánh các dãyhữu ích. Cảm ơn !
  • Chọn trùng lặp hoặc duy nhất Hàng; Chọn hàng trống (tất cả các ô đều trống); Tìm siêu và Tìm mờ trong Nhiều Sổ làm việc; Chọn ngẫu nhiên ...
  • Bản sao chính xác Nhiều ô mà không thay đổi tham chiếu công thức; Tự động tạo tài liệu tham khảo sang Nhiều Trang tính; Chèn Bullets, Hộp kiểm và hơn thế nữa ...
  • Trích xuất văn bản, Thêm Văn bản, Xóa theo Vị trí, Xóa không gian; Tạo và In Tổng số phân trang; Chuyển đổi giữa nội dung ô và nhận xéthữu ích. Cảm ơn !
  • Siêu lọc (lưu và áp dụng các lược đồ lọc cho các trang tính khác); Sắp xếp nâng cao theo tháng / tuần / ngày, tần suất và hơn thế nữa; Bộ lọc đặc biệt bằng cách in đậm, in nghiêng ...
  • Kết hợp Workbook và WorkSheets; Hợp nhất các bảng dựa trên các cột chính; Chia dữ liệu thành nhiều trang tính; Chuyển đổi hàng loạt xls, xlsx và PDFhữu ích. Cảm ơn !
  • Hơn 300 tính năng mạnh mẽ. Hỗ trợ Office / Excel 2007-2021 và 365. Hỗ trợ tất cả các ngôn ngữ. Dễ dàng triển khai trong doanh nghiệp hoặc tổ chức của bạn. Đầy đủ tính năng Dùng thử miễn phí 30 ngày. Bảo đảm hoàn lại tiền trong 60 ngày.
tab kte 201905

Tab Office mang lại giao diện Tab cho Office và giúp công việc của bạn trở nên dễ dàng hơn nhiều

  • Cho phép chỉnh sửa và đọc theo thẻ trong Word, Excel, PowerPoint, Publisher, Access, Visio và Project.
  • Mở và tạo nhiều tài liệu trong các tab mới của cùng một cửa sổ, thay vì trong các cửa sổ mới.
  • Tăng 50% năng suất của bạn và giảm hàng trăm cú nhấp chuột cho bạn mỗi ngày!
officetab dưới cùng
Nhận xét (38)
Chưa có xếp hạng. Hãy là người đầu tiên xếp hạng!
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Mã vba đó thật tuyệt vời, cảm ơn rất nhiều.
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Chức năng do người dùng xác định này thật tuyệt vời! Cảm ơn rất nhiều vì đã chia sẻ nó.
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Cảm ơn rất nhiều! Làm việc tốt! :-)
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Điều này SIÊU hữu ích, tôi tự hỏi liệu có ai biết về một danh sách có thể tải xuống hoặc một bản sao và có thể dán các chức năng hữu ích làm bằng tay như "FindWord" mà tôi có thể sử dụng không.
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Xin chào, tôi chỉ đang tự hỏi tôi có thể chèn thêm gì nữa vào công thức Visual Basic có thể trích xuất và dấu phẩy hoặc dấu gạch ngang ngay sau dữ liệu .. ví dụ: Fortin-
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Xin chào, Điều này là tuyệt vời. Nó hoạt động rất tốt và giảm căng thẳng của chúng tôi, tiết kiệm rất nhiều thời gian trong hoạt động này. Cảm ơn tất cả những người đã làm việc này và chia sẻ ...
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Tốt một. Điều này hoạt động rất tốt
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Xin chào, Điều này thực sự tiết kiệm rất nhiều thời gian. Cảm ơn bạn đã chia sẻ Có thể ai đó cũng gợi ý cách chúng ta có thể trích xuất các từ bằng vba theo cách ngược lại, ví dụ: từ cuối cùng là 1, từ thứ hai từ phải sang trái là 2, v.v. Điều này sẽ được nhiều đánh giá cao.
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Điều này không hoạt động đúng cách trên một chuỗi nguồn được tạo thành từ các từ không phải là từ (như tên nhà cung cấp theo sau là số bộ phận)
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
làm thế nào chúng ta có thể thay đổi phông chữ cho từ thứ n trong một ô
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Nhiều đánh giá cao. Nó đã giúp tôi rất nhiều.
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Xin chào, Cảm ơn vì đoạn mã của bạn. Nó truyền cảm hứng cho tôi để mở rộng một chút. Với các dòng tiếp theo, bạn có thể chọn: từ cuối cùng (0), một nhưng cuối cùng (-1), thứ hai đến cuối cùng (-2), v.v. Bất kể số từ. Hàm FindWord (Nguồn dưới dạng chuỗi, Vị trí là Số nguyên) 'Cập nhật 20150504 Dim arr () As String arr = VBA.Split (Nguồn, "") xCount = UBound (arr) Chọn Trường hợp Vị trí Trường hợp -xCount Tới 0 FindWord = arr (xCount + Vị trí) Trường hợp 1 Đến (xCount + 1) FindWord = arr (Vị trí - 1) Trường hợp khác FindWord = "" Kết thúc Chọn Kết thúc Hàm
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Xin chào, chỉ là một bổ sung cho mã ngày hôm qua. Điều này thêm một dòng bổ sung để điều chỉnh các khoảng trống dư thừa trong chuỗi nguồn: arr = VBA.Split (WorksheetFunction.Trim (Nguồn), "") liên quan đến, Allart
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Cảm ơn, Alan, điều này thật tuyệt, cảm ơn! :)
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Cảm ơn bạn rất nhiều !!
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Xin chào .. Cảm ơn mã của bạn, tôi có các câu danh sách và một trong số đó chỉ có 1 từ và mã của bạn không hoạt động nếu chỉ có 1 từ ..
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Tôi không thể lấy mã cho từ đầu tiên hoạt động nếu một số danh sách của tôi chỉ có một từ trong ô. ví dụ từ đầu tiên ---> giây đầu tiên ---> [null] từ cuối cùng ---> cuối cùng
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Hãy thử điều này (xem câu trả lời của tôi ở trên): Hàm FindWord (Nguồn dưới dạng chuỗi, Vị trí dưới dạng số nguyên) 'nhận thứ nhất, thứ 1, cuối cùng (2), thứ hai đến cuối cùng (-0), v.v., từ một chuỗi' Cập nhật 2 Dim arr ( ) As String arr = VBA.Split (WorksheetFunction.Trim (Nguồn), "") xCount = UBound (arr) Chọn Case Vị trí Trường hợp -xCount Đến 20150505 FindWord = arr (Vị trí + xCount) Trường hợp 0 Đến xCount + 1 FindWord = arr (Vị trí - 1) Trường hợp Khác FindWord = "" Kết thúc Lựa chọn
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Hi geeks, tôi có một ô như thế này: 1 ABCD; 2 DEDF; 1 DED # 3d; 4 FDWDS; 1 ED Và tôi muốn trích xuất ký tự sau 1. Vì vậy, tôi muốn có kết quả như sau: ABCD; DED # 3d; ED
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Tôi có 64bit Excel 2013 và thiếu addin Morefunc. Dựa trên đoạn mã trên, tôi đã đưa ra sự thay thế này cho chức năng WMID của Morefunc. Tôi sẽ rất biết ơn nếu ai đó giỏi chuyên môn hơn tôi có thể thực hiện bất kỳ công việc thu dọn nào. Hàm WMid1 (Nguồn dưới dạng chuỗi, Vị trí tùy chọn là số nguyên, Số từ tùy chọn dưới dạng số nguyên, Dấu phân cách tùy chọn dưới dạng chuỗi) Dim arr () Như chuỗi Dim xCount As Integer Dim wCount As Integer Dim w Đầu tiên As Integer Dim w Cuối cùng As Integer If Position = 0 Then Position = 1 If WordCount = 0 Then WordCount = 1 If Separator = "" Then Separator = "" arr = VBA.Split (Trim (Source), Separator) xCount = UBound (arr) + 1 If Position <1 Then wFirst = Application. Max (xCount + Position - WordCount + 1, 0) wLast = xCount + Position Else wFirst = Position - 1 wLast = Application.Min (xCount - 1, Position + WordCount - 2) Kết thúc Nếu xCount <2 Hoặc Abs (Vị trí) > xCount Sau đó WMid1 = "" Khác WMid1 = arr (wFirst) Đối với wCount = wFirst + 1 Tới wLast WMid1 = WMid1 & Dấu phân cách & arr (wCount) Kết thúc Tiếp theo Nếu WMid1 = Trim (WMid1) Kết thúc Hàm
Không có bình luận nào được đăng ở đây
Tải thêm
Để lại ý kiến ​​của bạn
Đăng với tư cách khách
×
Đánh giá bài viết này:
0   Nhân vật
Các vị trí được đề xuất

Kết nối với chúng tôi

Bản quyền © 2009 - www.extendoffice.com. | Đã đăng ký Bản quyền. cung cấp bởi ExtendOffice. | BẢN ĐỒ CHI NHÁNH
Microsoft và logo Office là các nhãn hiệu hoặc nhãn hiệu đã đăng ký của Microsoft Corporation tại Hoa Kỳ và / hoặc các quốc gia khác.
Được bảo vệ bởi Sectigo SSL