Phạm vi có tên Excel động bỏ qua các công thức trống


1

Trong cột Atôi có một công thức đối chiếu hai cột khác với nhau.

=IF(ISBLANK(B5),"", B5&" "&C5)

Sau đó, trong Trình quản lý tên, một phạm vi có tên động sẽ được sử dụng cho danh sách thả xuống xác thực dữ liệu.

=OFFSET(Projects!$A$5,0,0,COUNTA(Projects!$A:$A),1)

Tuy nhiên, điều này vẫn đang đếm tất cả các ô có công thức, ngay cả khi chúng trống. Tôi đã thử sử dụng COUNTIFđể đếm các ô trống.

=OFFSET(Projects!$A$5,0,0,COUNTIF(Projects!$A:$A, "<>"),1)

Nhưng điều này vẫn bao gồm mọi ô có công thức, ngay cả khi nó "trống".

Có cách nào để có được phạm vi được đặt tên để bỏ qua các công thức trả về trống không?

CHỈNH SỬA

Dưới đây là một ví dụ về cách dữ liệu trong bit đầu tiên trông như thế nào. (bắt đầu ở hàng 5 vì vậy hãy giữ đúng với ví dụ)

               A                      B          C
5 =IF(ISBLANK(B5),"", B5&" "&C5)   Director     123
6 =IF(ISBLANK(B6),"", B6&" "&C6)   Officer      321
7 =IF(ISBLANK(B7),"", B7&" "&C7)

Tiếp tục xuống hàng 1000. Cột A bị ẩn và người dùng chỉ sửa đổi dữ liệu trong B và C. Các giá trị thường được thêm hoặc xóa, do đó số lượng mục trong B và C thay đổi liên tục

Sau đó, đối với DNR của tôi, tôi đang cố gắng sử dụng trong một trang tính khác, tôi đã thiết lập Phạm vi được đặt tên có tên là JobTitle bằng cách sử dụng như sau.

=OFFSET(Projects!$A$5,0,0,COUNTIF(Projects!$A5:$A1000, "<>"),1)

Công việc hiện tại của tôi là đếm các ô không trống trong cột B

=OFFSET(Projects!$A$5,0,0,COUNTIF(Projects!$B5:$B1000, "<>"),1)

Hiện đang hoạt động, tuy nhiên để tham khảo trong tương lai tôi muốn biết cách tạo DNR từ cột A.


Vì công thức trong cột Aphụ thuộc vào Bviệc có dữ liệu, tôi đã thay đổi DNR để đếm nếu cột Bkhông trống. =OFFSET(Projects!$A$5,0,0,COUNTIF(Projects!$B5:$B1000, "<>"),1)đó là một công việc phù hợp xung quanh. Nhưng vẫn muốn biết làm thế nào đếm công thức không hài lòng là trống.
Tim Wilkinson

Tôi không làm theo những gì bạn đang cố gắng thực hiện. Bạn đang cố gắng trả về các giá trị của công thức nếu có kết quả, nếu không hãy để trống? Tại sao bạn đang sử dụng OFFSET?
CharlieRB

Nó được sử dụng trong Trình quản lý tên được sử dụng cho danh sách thả xuống xác thực dữ liệu ở nơi khác.
Tim Wilkinson

Đừng cố gắng nghĩ về toàn bộ quá trình cùng một lúc. Trước tiên, bạn đang cố gắng chỉ trả về kết quả của các công thức trong cột A, đúng không? Tại sao bạn đang sử dụng OFFSET?
CharlieRB

Đúng, toàn bộ cột A là công thức và tôi chỉ muốn kết quả mà bạn có thể "nhìn thấy". Tôi đang sử dụng OFFSETvì đó là cách tạo DNR, excel-easy.com/examples/dynamic-named-range.html
Tim Wilkinson

Câu trả lời:


2

Tôi sẽ định nghĩa JobTitle thay vì:

=Projects!$A$5:INDEX(Projects!$A5:$A$1000,COUNTIF(Projects!$A5:$A$1000,"?*"))

trong đó, bằng cách sử dụng INDEXthay thế OFFSET, làm giảm bớt sự biến động của việc xây dựng.

Lưu ý rằng COUNTIFphần dựa trên giả định rằng các giá trị trong phạm vi Projects!$A5:$A$1000là văn bản, không phải là số. Tuy nhiên, cho rằng mỗi giá trị trong phạm vi này được dẫn xuất thông qua nối chuỗi, tuy nhiên, tôi sẽ tưởng tượng rằng giả định này là một giá trị hợp lý.

Trân trọng


1

Thay vì
COUNTA(Projects!$A:$A)
sử dụng
COUNTIF(Projects!$A:$A,"<>"&"").

Hàm COUNTA đếm số lượng ô không trống trong một phạm vi.

Một ô chứa công thức, ngay cả khi nó trả về ""không trống.

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.