Excel - Khắc phục lỗi #VALUE với chức năng TÌM


11

Trong ô A1 tôi đã nhập "Apple". Trong B2 tôi nhập công thức =FIND("Apple",A:A). Tuy nhiên tôi cứ bị #VALUElỗi. Bất cứ ai có thể giải thích điều này và làm thế nào để tôi vượt qua nó?



1
Vui lòng giải thích những gì bạn đang cố gắng thực hiện để chúng tôi có thể giúp bạn. FINDđược sử dụng để định vị một chuỗi văn bản trong một tập hợp văn bản nhất định, sau đó trả về vị trí của nó trong chuỗi văn bản. Bạn có thể đang sử dụng chức năng sai, tùy thuộc vào những gì bạn đang cố gắng làm.
CharlieRB

Về cơ bản, tôi đang cố gắng tìm kiếm một chuỗi văn bản trong một cột. Vị trí của văn bản trong cột không cố định. Tôi có nên sử dụng bất kỳ chức năng nào khác không và tôi sẽ sai ở FINDđâu?
Gh0sT

Hàm FIND hoạt động nếu tôi định nhập công thức vào ô B1 ... lạ!
Gh0sT

1
Thông thường bạn áp dụng FINDcho một ô duy nhất - nếu bạn sử dụng =FIND("Apple",A:A)trong B2excel thực sự trả về một "mảng" các giá trị .... nhưng cái bạn thấy trong ô sẽ là kết quả từ cột A ô trên cùng một hàng, vì vậy nếu A2 không chứa "Apple", bạn nhận được #VALUE!, nhưng trong B1 bạn nhận được một số - vẫn tốt nhất để sử dụng một ô .....
barry houdini

Câu trả lời:


4

Nếu bạn muốn tìm ô đầu tiên (hàng) trong Cột Acó chứa từ táo táo, có thể là một phần của một từ lớn hơn (ví dụ:

=MATCH("*apple*", A:A, 0)

Và vì điều này trả lời phần tôi nên sử dụng thay vào đó ... Tôi đánh dấu đây là câu trả lời ... cảm ơn bạn!
Gh0sT

21

Tìm vẻ ngoài trong một ô, không phải là một phạm vi ô. Thành phần cú pháp trong văn bản đang xem xét một chuỗi cụ thể, nhưng một phạm vi ô không phải là một chuỗi. Bạn có thể đạt được điều này với một mảng, nhưng cách tiếp cận đơn giản nhất là tạo cột tìm kiếm; tạo một cột bên cạnh cột mà bạn muốn tìm kiếm và thêm công thức vào mỗi ô liền kề, vì vậy trong B2, câu lệnh bên trong sẽ là A2.

=FIND("Apple",A1)


Tôi có cảm giác bạn đang cố gắng tìm số lượng phiên bản của từ Apple. Nếu điều này đúng, bạn có thể sử dụng công thức này:

=COUNTIF(A:A,"Apple")

Nhưng điều này sẽ chỉ cung cấp cho bạn một số lượng tất cả các từ của Apple trong cột A, trong đó Apple là toàn bộ nội dung của ô đó.


Nếu bạn muốn đếm tất cả các trường hợp trong đó một ô chứa Apple, ngay cả khi nó cũng chứa các từ khác (ví dụ: Apple Pie) thì bạn cần quay lại câu lệnh TÌM của bạn trong một cột thêm và sử dụng câu lệnh IF, có thể giống như điều này:

=IF(ISERROR(FIND("Apple",$A2)),0,1)

Điều này sẽ trả về 0 nếu câu lệnh FIND gây ra lỗi và nếu không sẽ trả về 1. Sau đó, bạn có thể chỉ cần tính tổng cột đó để lấy số lượng ô có chữ Apple ở đâu đó trong đó.


Cảm ơn lời giải thích của bạn ... điều này trả lời phần mà tôi đã sai với TÌM.
Gh0sT

0

Phân tích giá trị trong một ô bằng cách sử dụng chức năng Tìm và khắc phục #VALUE!kết quả

Chọn giá trị trước khi tìm thấy "&"

=IF(IFERROR(FIND("&",B:B),0)>0,MID(B:B,1,FIND("&",B:B)-1),TRIM(B:B))

Chọn giá trị sau khi tìm thấy "&"

=IF(IFERROR(FIND("&",B:B),0)>0,MID(B:B,FIND("&",B:B)+1,99),"")

Giải trình

  1. Kiểm tra lỗi TÌM và thay thế bằng 0
  2. Kiểm tra bằng cách sử dụng bên ngoài Nếu
  3. Giải quyết nếu có kết quả

Ví dụ 1

=IF(IFERROR(FIND("&",B:B),0)>0,MID(B:B,FIND("&",B:B)+1,99),"")
  • Tế bào chứa Mary & David
  • Giá trị trở thành 6 cho tìm kiếm
  • Bắt đầu từ vị trí để nhận giá trị bên phải
  • Kết quả là "David"

Ví dụ: 2

  • Tế bào chứa Mary
  • Giá trị trở thành 0
  • Kết quả là null

Ví dụ: 3

Chọn giá trị trước dấu "&"

=IF(IFERROR(FIND("&",B:B),0)>0,MID(B:B,1,FIND("&",B:B)-1),TRIM(B:B))
  • Tế bào chứa Mary & David
  • Kết quả là Mary

1
Bạn có thể thêm một số bối cảnh cho câu trả lời của bạn? Nó không rõ ràng về cách nó giải quyết câu hỏi ban đầu.
Burgi

@Burgi - Ngược lại, nó rất rõ ràng. Paul đã khắc phục Find()thói quen bực bội của hàm để trả về lỗi nếu văn bản tìm kiếm không tồn tại trong chuỗi tìm kiếm. Đây là một câu trả lời có giá trị mà bạn nên nâng cao nó, như tôi vừa mới thấy, thay vì hạ thấp nó. (Nó cũng trả lời câu hỏi ban đầu của OP, mặc dù theo một cách khác.)
InteXX

@InteXX nếu bạn lưu ý nhận xét đã được thực hiện vào tháng 2 năm 2016 và đã có một chỉnh sửa được thực hiện ngay sau đó. Nếu bạn nghĩ rằng bình luận của tôi không còn cần thiết, bạn nên gắn cờ nó.
Burgi

@Burgi - Đó là một chỉnh sửa khá tốt. Và tha thứ cho tôi ... Tôi đã lần lượt nói rằng bạn "nên" làm việc này hay việc khác. Tôi cũng cho rằng bạn là người downvoter, điều này cũng không đúng. Nếu bạn lưu ý đến tuyên bố trong hồ sơ của tôi, bạn sẽ thấy rằng việc hạ cấp xuống và gắn cờ là những thứ mà tôi chọn không tham gia. Nhưng cảm ơn bạn đã cung cấp duyên dáng của bạn.
InteXX
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.