Tạo listbox động nhưng bị lỗi khi dùng hàm offset

Liên hệ QC

bongtrangxm

Thành viên mới
Tham gia
17/3/18
Bài viết
22
Được thích
4
Giới tính
Nam
Xin chào mọi người.
nhờ mọi người kiểm tra giúp mình đang bị lỗi gì và do đâu mà không tạo được listbox động.
Mình cần làm list box động với 2 cấp nhưng khi tạo thì không sử dụng được.
Cụ thể : Mình tạo 4 năm động như bên dưới.
Name AA =OFFSET(Setup!$A$2,0,0,COUNTA(Setup!$A$2:$A$10),1)
Name BB =OFFSET(Setup!$B$2,0,0,COUNTA(Setup!$B$2:$B$10),1)
Name CC =OFFSET(Setup!$C$2,0,0,COUNTA(Setup!$C$2:$C$10),1)
Name Select =OFFSET(Setup!$D$2,0,0,COUNTA(Setup!$D$2:$D$10),1)
Taij H1 minh để listbox cấp 1 với Ref: =Select
Tại J1 mình để listbox cấp 2 với Ref: =INDIRECT($H$1).
Mình không biết đang bị lỗi gì.Rất mong mọi người giúp đỡ.
cám ơn mọi người.
 

File đính kèm

  • List_box_dynamic.xlsx
    9.2 KB · Đọc: 14
Xin chào mọi người.
nhờ mọi người kiểm tra giúp mình đang bị lỗi gì và do đâu mà không tạo được listbox động.
Mình cần làm list box động với 2 cấp nhưng khi tạo thì không sử dụng được.
Cụ thể : Mình tạo 4 năm động như bên dưới.
Name AA =OFFSET(Setup!$A$2,0,0,COUNTA(Setup!$A$2:$A$10),1)
Name BB =OFFSET(Setup!$B$2,0,0,COUNTA(Setup!$B$2:$B$10),1)
Name CC =OFFSET(Setup!$C$2,0,0,COUNTA(Setup!$C$2:$C$10),1)
Name Select =OFFSET(Setup!$D$2,0,0,COUNTA(Setup!$D$2:$D$10),1)
Taij H1 minh để listbox cấp 1 với Ref: =Select
Tại J1 mình để listbox cấp 2 với Ref: =INDIRECT($H$1).
Mình không biết đang bị lỗi gì.Rất mong mọi người giúp đỡ.
cám ơn mọi người.
Bạn đặt tên đặc biệt (tên trùng với những lệnh trong Excel) nên bị lỗi, Bạn sửa tên Select thành SelectK thử xem.
 
Xin chào mọi người.
nhờ mọi người kiểm tra giúp mình đang bị lỗi gì và do đâu mà không tạo được listbox động.
Mình cần làm list box động với 2 cấp nhưng khi tạo thì không sử dụng được.
Cụ thể : Mình tạo 4 năm động như bên dưới.
Name AA =OFFSET(Setup!$A$2,0,0,COUNTA(Setup!$A$2:$A$10),1)
Name BB =OFFSET(Setup!$B$2,0,0,COUNTA(Setup!$B$2:$B$10),1)
Name CC =OFFSET(Setup!$C$2,0,0,COUNTA(Setup!$C$2:$C$10),1)
Name Select =OFFSET(Setup!$D$2,0,0,COUNTA(Setup!$D$2:$D$10),1)
Taij H1 minh để listbox cấp 1 với Ref: =Select
Tại J1 mình để listbox cấp 2 với Ref: =INDIRECT($H$1).
Mình không biết đang bị lỗi gì.Rất mong mọi người giúp đỡ.
cám ơn mọi người.
Cái đó gọi là Validation chứ đâu phải ListBox.
 
Bạn đặt tên đặc biệt (tên trùng với những lệnh trong Excel) nên bị lỗi, Bạn sửa tên Select thành SelectK thử xem.
Hi @giaiphap .
Nếu sửa lại name khác Select thì được một cấp.
Nhưng cấp thứ 02(=INDIRECT($H$1)) thì Excel lại không hiểu. Cái trường hợp này là bị gì nhỉ ?
@be09 : Đúng là validation chứa ko phải Listbox :)
Mình có xem file của bạn. Mục đích cảu mình là đặt name động vì dữ liệu đầu vào không cố định và luôn thay đổi. cám ơn bạn rất nhiều
 
File này khi chọn ở H1 mà có thấy J1 xuất hiện list tương ứng đâu bác nhỉ??? chỉ giáo hộ em với :(
Bạn đưa file mẫu thực tế của bạn lên mới thấy nhiều trường hợp tổng quát, còn file của bạn ở trên chỉ có 1 giá trị nên không tổng quát được.
 

File đính kèm

  • List_box_dynamic.xlsx
    9.2 KB · Đọc: 7
Bài #9 thì có khác gì bài #1, mà bài #1 thì đã được giải ở bài #5
Mà bài #5 thì không đạt yêu cầu của bạn, trong khi dữ liệu thật lại không đưa lên.
Hì hì gần tới giờ cơm rùi đó :p
Bài 5 tạo Table nữa là xong, dữ liệu thay đổi hay thêm bao nhiều là tùy, nhưng chủ Topic không biết nhấn nút, nên đành để vậy.
 
................................Để tối về ngâm cứu 2 cái công thức trong name.
Góp ý cho bạn:
1/ Nên đưa File với tiêu đề là thực tế lên, nêu cái cần và mong muốn làm sao cho nhanh, gọn, lẹ.

2/ Theo tôi thì dùng 1 UserForm với ListBox thì bạn có thể nhập liệu được cùng lúc nhiều thứ, nhiều cột, nếu có đơn vị tính hoặc giá thì gán luôn. Bạn có thể tham khảo File Nhập liệu từ ListBox trong bài 4, của link sau:
http://www.giaiphapexcel.com/diendan/threads/tẠo-userform-tÌm-kiẾm-nhẬp-liỆu.133926/

 
Lần chỉnh sửa cuối:
Góp ý cho bạn:
1/ Nên đưa File với tiêu đề là thực tế lên, nêu cái cần và mong muốn làm sao cho nhanh, gọn, lẹ.

2/ Theo tôi thì dùng 1 UserForm với ListBox thì bạn có thể nhập liệu được cùng lúc nhiều thứ, nhiều cột, nếu có đơn vị tính hoặc giá thì gán luôn. Bạn có thể tham khảo File Nhập liệu từ ListBox trong bài 4, của link sau:
http://www.giaiphapexcel.com/diendan/threads/tẠo-userform-tÌm-kiẾm-nhẬp-liỆu.133926/
@be09: Cám ơn bạn nhiều nhưng có lẽ nhu cầu của mình không giống như bài trên.
Mình chỉ cần locjk validate theo từng vùng bằng name động để áp dụng với mỗi vùng khác nhau thôi.
@giaiphap : Sao mình sử dụng giống name động bạn làm mà nó lại không chạy nhỉ.
Bạn có thể giải thích hàm Count(offset(ListC,,,1000)) trong file bạn làm được ko. Mình làm mà nó count toàn ra 0.
Xem file lại giúp mình với. cảm ơn bạn nhiều.
 

File đính kèm

  • Tracking report_Final.xlsm
    24.4 KB · Đọc: 17
@be09: Cám ơn bạn nhiều nhưng có lẽ nhu cầu của mình không giống như bài trên.
Mình chỉ cần locjk validate theo từng vùng bằng name động để áp dụng với mỗi vùng khác nhau thôi.
@giaiphap : Sao mình sử dụng giống name động bạn làm mà nó lại không chạy nhỉ.
Bạn có thể giải thích hàm Count(offset(ListC,,,1000)) trong file bạn làm được ko. Mình làm mà nó count toàn ra 0.
Xem file lại giúp mình với. cảm ơn bạn nhiều.
Bạn sửa công thức name List_Select_Region lại như sau:
Mã:
=OFFSET(Setup!$A$3;;MATCH(By_Region!$D$5;Setup!$A$2:$E$2;0)-1;COUNTA(OFFSET(List_Region;;;1000))-1)
Còn hàm Count là đếm số (Do file ở #9 của bạn là số mà), còn file thực tế của bạn không phải số nên sửa lại là CountA.
 
Bạn sửa công thức name List_Select_Region lại như sau:
Mã:
=OFFSET(Setup!$A$3;;MATCH(By_Region!$D$5;Setup!$A$2:$E$2;0)-1;COUNTA(OFFSET(List_Region;;;1000))-1)
Còn hàm Count là đếm số (Do file ở #9 của bạn là số mà), còn file thực tế của bạn không phải số nên sửa lại là CountA.
Hiểu rồi ?
Do mình không phân biệt được count và counta à.
cám ơn bạn rất nhiều.
 
Lần chỉnh sửa cuối:
Hi bạn @giaiphap ,
Vì khi lọc trước đây có một vài vấn đề khi phải chia nhỏ theo vùng quản lý(không chia được theo kết quả mỗi người quản lý) nên cùng một yêu cầu như trước nhưng dữ liệu các cột trong vùng mình bỏ ra từng sheet(nhằm dễ chia nhỏ ra theo kết quả mỗi vùng).
Mình sử dụng hàm choose và indirect để tham chiếu động đến từng sheet nhưng bị lỗi.
Ban kiểm tra và xem giúp mình bị sai ở chỗ nào không trong file đính kèm nhé ?
Cám ơn bạn rất nhiều.
 

File đính kèm

  • Tracking report_Final_SplitSheet.xlsm
    29.8 KB · Đọc: 7
Web KT
Back
Top Bottom