Lỗi giá trị #VALUE! khi dùng hàm SUMIF (1 người xem)

Liên hệ QC

Người dùng đang xem chủ đề này

phanoanh2583

Thành viên mới
Tham gia
15/2/12
Bài viết
31
Được thích
2
Kính chào các cao thủ GGE
khi em lấy nguồn từ file1 sang file2 bằng hàm sumif lúc em enter nó chạy bình thường, nhưng có những lúc em mở file2 ra mà không mở file1 là nó báo lỗi giá trị, tuy nhiên không phải lúc nào nó cũng bắt mở song song 2 file như thế
có bác nào biết lỗi do đâu không chỉ giúp em với
 
Lần chỉnh sửa cuối:
bạn đổi sang khung lớn, gửi file lên thì mới xem được. Miêu tả thế chịu thôi.
 
Kính chào các cao thủ GGE
khi em lấy nguồn từ file1 sang file2 bằng hàm Vlookup lúc em enter nó chạy bình thường, nhưng có những lúc em mở file2 ra mà không mở file1 là nó báo lỗi giá trị, tuy nhiên không phải lúc nào nó cũng bắt mở song song 2 file như thế
có bác nào biết lỗi do đâu không chỉ giúp em với

*Để lấy dữ liệu từ 2 file với nhau bằng Vlookup như bạn nói, thì bắt buộc 2 file phải mở,
* Trường hợp file 2 đóng, file 1 bạn mở lên vẫn hiện kết quả, đây là kết quả nó lần mở file trước --> bạn chỉ cần edit link,update value hay ấn enter tại ô có công thức, thì kết quả sẽ là #NA, hoặc #Value gì đó

* Còn nếu bạn muốn lấy dữ liệu ở file đóng có thểm tham khảo hàm Getdata( tác giả : anhtuan1066 )như sau :

Function GetData(sFile As String, sSheet As String, sAddr As String)
Dim pLink As String, iR As Long, iC As Long, Arr
If Len(Dir(sFile)) Then
Arr
= Range(sAddr)
pLink = "'" & Replace(sFile, Dir(sFile), "[" & Dir(sFile) & "]") & sSheet & "'!"
For iR = 1 To Range(sAddr).Rows.Count
For iC = 1 To Range(sAddr).Columns.Count
Arr
(iR, iC) = ExecuteExcel4Macro(pLink & Range(sAddr).Cells(iR, iC).Address(, , 2))
Next iC
Next iR
GetData
= Arr
End
If
End Function
Khi đó hàm vlookup có thể viết như sau :
= Vlookup( A1,Getdata(" ten duong dan","ten sheet","vung du lieu "),2,0)

 
Lần chỉnh sửa cuối:
sheet TonBTP trong KH VTC T04 hay bị lỗi cột I và J ạ
 

File đính kèm

*Để lấy dữ liệu từ 2 file với nhau bằng Vlookup như bạn nói, thì bắt buộc 2 file phải mở,



Hổng có vụ đó nhà nha!
VLOOKUP cho phép lấy dữ liệu từ file đang đóng. File nguồn có mở hay không không quan trọng
Khi mở file có công thức dùng VLOOKUP liên kết đến file khác, Excel sẽ hỏi ta có Update hay không (để cập nhật mới)
Chỉ vậy thôi
----------------------
sheet TonBTP trong KH VTC T04 hay bị lỗi cột I và J ạ
File của bạn là dùng SUMIF chứ có phải là VLOOKUP đâu
(tiêu đề hỏi VLOOKUP, thực tế là SUMIF)
 
Lần chỉnh sửa cuối:
Hổng có vụ đó nhà nha!
VLOOKUP cho phép lấy dữ liệu từ file đang đóng. File nguồn có mở hay không không quan trọng
Khi mở file có công thức dùng VLOOKUP liên kết đến file khác, Excel sẽ hỏi ta có Update hay không (để cập nhật mới)
Chỉ vậy thôi

Em cũng vừa test lại, --> em nhầm cái vụ vlookup này ,
Không biết mấy cái hàm math ,index,Lookup có được như vầy không nhỉ?<----- để em test xem như thế nào ?

Kết quả test : ok
 
Lần chỉnh sửa cuối:
sheet TonBTP trong KH VTC T04 hay bị lỗi cột I và J ạ

Mình xin nói thêm về lỗi trong file KH VTC T04
Để hết lỗi, bạn thay SUMIF thành SUMPRODUCT là được
Ví dụ:
- Mở 2 file lên, xem công thức tại J7 hiện tại là:
Mã:
=SUMIF('[KHSXT04 CK2.XLS]CAP VTC'!$B$9:$B$223,B7,'[KHSXT04 CK2.XLS]CAP VTC'!$I$9:$I$223)
- Bạn sửa nó thành:
Mã:
=SUMPRODUCT(('[KHSXT04 CK2.XLS]CAP VTC'!$B$9:$B$223=B7)*('[KHSXT04 CK2.XLS]CAP VTC'!$I$9:$I$223))
Với công thức này, không cần mở file KHSXT04 CK2.XLS thì kết quả vẫn chính xác
-------------
Lưu ý chung: Những hàm nào có khả năng hoạt động trên Array đều có thể lấy dữ liệu từ file đang đóng.
Từ đó suy ra rằng hàm SUMIF, COUNTIF, OFFSET... đều không thể làm việc với file đang đóng (vì đối số các hàm này phải là Range)
 
Lần chỉnh sửa cuối:
Mình xin nói thêm về lỗi trong file KH VTC T04
Để hết lỗi, bạn thay SUMIF thành SUMPRODUCT là được
Ví dụ:
- Mở 2 file lên, xem công thức tại J7 hiện tại là:
Mã:
=SUMIF('[KHSXT04 CK2.XLS]CAP VTC'!$B$9:$B$223,B7,'[KHSXT04 CK2.XLS]CAP VTC'!$I$9:$I$223)
- Bạn sửa nó thành:
Mã:
=SUMPRODUCT(('[KHSXT04 CK2.XLS]CAP VTC'!$B$9:$B$223=B7)*('[KHSXT04 CK2.XLS]CAP VTC'!$I$9:$I$223))
Với công thức này, không cần mở file KHSXT04 CK2.XLS thì kết quả vẫn chính xác
-------------
Lưu ý chung: Những hàm nào có khả năng hoạt động trên Array đều có thể lấy dữ liệu từ file đang đóng.
Từ đó suy ra rằng hàm SUMIF, COUNTIF, OFFSET... đều không thể làm việc với file đang đóng (vì đối số các hàm này phải là Range)


dear Thầy

Em đang quản lý 1 file excel cũng bị tương tự và nhờ bài này mà em khắc phục được nhưng do dữ liệu em dài nên bị 1 lỗi sau:

- Nếu em dung =SUMPRODUCT((L6:L1607=B5)*X6:X1607 thì hiển thị bị lỗi
nhưng nếu em bắt đầu =SUMPRODUCT((L1253:L1607=B5)*X1253:X1607 thì lệnh này ok

có phải SUMPRODUCT vẫn bị hạn chế về số dòng phải không thầy?


Regards
 
Anh ơi hiện giờ e đang gặp phải vấn đền là e dùng file vba để chạy hàm array nên khi sử dụng hàm sumif và sumifs thì nó bảo lỗi #value! giờ e phải làm sao để chạy đc hàm sumif và sumifs bình thường mà ko ảnh hưởng đến hàm array ạ.
 
Anh ơi hiện giờ e đang gặp phải vấn đền là e dùng file vba để chạy hàm array nên khi sử dụng hàm sumif và sumifs thì nó bảo lỗi #value! giờ e phải làm sao để chạy đc hàm sumif và sumifs bình thường mà ko ảnh hưởng đến hàm array ạ.

Bạn đưa file bị lỗi lên mới biết được vì sao.
 
Mình xin nói thêm về lỗi trong file KH VTC T04
Để hết lỗi, bạn thay SUMIF thành SUMPRODUCT là được
Ví dụ:
- Mở 2 file lên, xem công thức tại J7 hiện tại là:
Mã:
=SUMIF('[KHSXT04 CK2.XLS]CAP VTC'!$B$9:$B$223,B7,'[KHSXT04 CK2.XLS]CAP VTC'!$I$9:$I$223)
- Bạn sửa nó thành:
Mã:
=SUMPRODUCT(('[KHSXT04 CK2.XLS]CAP VTC'!$B$9:$B$223=B7)*('[KHSXT04 CK2.XLS]CAP VTC'!$I$9:$I$223))
Với công thức này, không cần mở file KHSXT04 CK2.XLS thì kết quả vẫn chính xác
-------------
Lưu ý chung: Những hàm nào có khả năng hoạt động trên Array đều có thể lấy dữ liệu từ file đang đóng.
Từ đó suy ra rằng hàm SUMIF, COUNTIF, OFFSET... đều không thể làm việc với file đang đóng (vì đối số các hàm này phải là Range)
Tuyệt vời ông mặt trời. Cám ơn bạn nhiều.
 
Web KT

Bài viết mới nhất

Back
Top Bottom