-
Tại sao khi lập công thức trong query lại hiểu là tham số
trunghoa1967 > 26-08-13, 05:32 PM
Mình đang gặp khó khăn như sau nhờ các bạn giúp đỡ:
Mình làm phầm mềm QLdiem cho học sinh THCS nhưng đến query TinhTB mình thêm cột DTB dùng để tính điểm trung bình của môn học, mô tả cụ thể như sau:
Các cột hs11,hs12,hs13,hs14,hs15,hs16 là các cột điểm hệ số 1
Các cột hs21,hs22,hs23,hs24 là các cột điểm hệ số 2
Cột hs3 là điểm thi hệ số 3
Để tính điểm trung bình môn học, mình thêm các cột phụ: hh11: (IIF([hs11]>=(0),"1","0")),...(IIF([hs21]>=(0),"2","0")),..,(IIF([hs3]>=(0),"3","0"))
Nhưng khi thêm cột DTB: ([hs11]*1+[hs12]*1+[hs13]*1+[hs14]*1+[hs15]*1+[hs16]*1+[hs21]*2+[hs22]*2+[hs23]*2+[hs24]*2+[hs3]*3)/([hh11]+[hh12]+[hh13]+[hh14]+[hh15]+[hh16]+[hh21]+[hh22]+[hh23]+[hh24]+[hh3]) thì khi mở query bị hiểu là tham số và kết quả ở mẫu là chuối số chứ không cộng lại nên kết quả bị sai
Mình định gửi kèm theo file đang làm nhưng không biết cách đính kèm. Nhờ các bạn chỉ giúp. -
RE: Tại sao khi lập công thức trong query lại hiểu là tham số
danhxetnghiem > 26-08-13, 06:06 PM
(26-08-13, 05:32 PM)trunghoa1967 Đã viết: Mình đang gặp khó khăn như sau nhờ các bạn giúp đỡ:
Mình làm phầm mềm QLdiem cho học sinh THCS nhưng đến query TinhTB mình thêm cột DTB dùng để tính điểm trung bình của môn học, mô tả cụ thể như sau:
Các cột hs11,hs12,hs13,hs14,hs15,hs16 là các cột điểm hệ số 1
Các cột hs21,hs22,hs23,hs24 là các cột điểm hệ số 2
Cột hs3 là điểm thi hệ số 3
Để tính điểm trung bình môn học, mình thêm các cột phụ: hh11: (IIF([hs11]>=(0),"1","0")),...(IIF([hs21]>=(0),"2","0")),..,(IIF([hs3]>=(0),"3","0"))
Nhưng khi thêm cột DTB: ([hs11]*1+[hs12]*1+[hs13]*1+[hs14]*1+[hs15]*1+[hs16]*1+[hs21]*2+[hs22]*2+[hs23]*2+[hs24]*2+[hs3]*3)/([hh11]+[hh12]+[hh13]+[hh14]+[hh15]+[hh16]+[hh21]+[hh22]+[hh23]+[hh24]+[hh3]) thì khi mở query bị hiểu là tham số và kết quả ở mẫu là chuối số chứ không cộng lại nên kết quả bị sai
Mình định gửi kèm theo file đang làm nhưng không biết cách đính kèm. Nhờ các bạn chỉ giúp.
Bạn có thể úp file đính kèm lên google drive rồi chia sẽ link lên đây
Còn về công thức bạn viết vậy thì nó sai, theo mình mới đọc qua thấy mâu thuẩn ô hh11, không thể chia cho ô hh11 được mà là chia cho cả biểu thước nằm trong ô hh11, hình như là ô hh11 bạn gắn vào 1 hàm đúng không? nếu đúng thì nếu bạn chia bất cứ cái nào cho ô hh11 thì phải chia cho biểu thức trong ô. nhưng mà biểu thức này cũng không đúng rồi bạn, bạn nên up file lên để mọi người cùng xem -
RE: Tại sao khi lập công thức trong query lại hiểu là tham số
Noname > 26-08-13, 06:14 PM
Mình không xem, nhiều, chỉ thấy 1 đoạn thế này
Mã:IIF([hs11]>=(0),"1","0")
Đoạn code trên có nghĩa là: Nếu ô hs11 lớn hơn 0 thì biểu thức này trả về chuỗi có giá trị là "1", ngược lại, biểu thức này là một chuỗi có giá trị "0"
Ở dưới bạn lại đem các chuỗi này nhân chia, đương nhiên là không được.
Chưa kể phát biểu IIF của cột hh11 cũng cần phải xem lại. Bạn cần đọc lại tài liệu về phát biểu IIF, sửa file của mình lại, post lên rồi hỏi tiếp. -
RE: Tại sao khi lập công thức trong query lại hiểu là tham số
trunghoa1967 > 27-08-13, 10:34 AM
Đây là file đính kèm, nhờ các bạn xem và sửa giúp!
https://docs.google.com/file/d/0B0tcOP4e...sp=sharing -
RE: Tại sao khi lập công thức trong query lại hiểu là tham số
Xuân Thanh > 27-08-13, 11:42 AM
HeSo11 :IIF([hs11]>0, [hs11],0)
Như thế mới tính toán được
Hoặc dùng NZ(đã trả lời ở topic khác rồi nhưng không chịu đọc)
Heso11 : NZ([hs11])
Nếu hs11>0 thì Heso11 = hs11, ngược lại HeSo11 = 0. lấy các Heso11... để tính toán
Thân mến -
RE: Tại sao khi lập công thức trong query lại hiểu là tham số
thquanks > 28-08-13, 05:21 PM
Bạn thêm hàm Val truoc các [hh11] ----- là tính tổng được mà:
VD: Val([hh11]) + Val([hh12] + .... -
RE: Tại sao khi lập công thức trong query lại hiểu là tham số
thquanks > 29-08-13, 12:28 PM
-
RE: Tại sao khi lập công thức trong query lại hiểu là tham số
trunghoa1967 > 25-09-13, 04:53 PM
Xin làm phiền bạn thquanks:
Trước hết xin cảm ơn bạn, nhưng bạn ơi bản sửa của bạn gửi về mình mở thử Queries Tinh TB thì vẫn bị lỗi (không hiểu giá trị hh11,...). Nhờ bạn xử lý dùm mình.