Nhờ mọi người tạo giùm cái hàm dịch ngược điểm (3 người xem)

  • Thread starter Thread starter albe
  • Ngày gửi Ngày gửi
Liên hệ QC

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

albe

Thành viên mới
Tham gia
21/5/09
Bài viết
1
Được thích
0
Thông thường khi đã có các điểm thành phần thì chúng ta dễ dàng lập được công thức tính điểm trung bình. Tôi bỗng nảy ra vấn đề nếu từ điểm trung bình chúng ta có thể tạo ra 1 hàm để làm xuất hiện lại các điểm thành phần không? đòi hỏi các điểm này được xếp một cách nhẫu nhiên và theo 1 điều kiện nào đó chẳng hạn, ví dụ không có điểm dưới 5.
Cụ thể tôi có 4 cột điểm: cột hệ số 1, cột hệ số 2, cột hệ số 3, cột trung bình là 7,3. Lập hàm như thế nào để tự xuất hiện các điểm hệ số 1, hệ số 2, hệ số 3 một cách ngẫu nhiên (không có điểm dưới 5). Mong các bạn cùng thảo luận và cho ý kiến giúp minh? Xin cảm ơn!!!
 
Cho mình hỏi chút, vậy mục đích của bạn tạo ra hàm này để làm gì? **~**
 
Những nghiệm giả lập như sau,

hs1 | hs1 | hs2 | hs3 | tb
5.5|6.5|7.5|8| 7.29
6|6|7.5|8| 7.29
5|7|7.5|8| 7.29
5.5|6.5|9|7| 7.29
6|6|9|7| 7.29
5|7|9|7| 7.29
|:-=|@$@!^%|!$@!!|--=0

?!?
 
Để nghiên cứu chơi về khả năng của Excel trong việc phân tích và tìm giải pháp, ta dùng SOLVER nhé
Xem thí nghiệm dưới đây
PHP:
Sub Solver()
  SolverReset
  SolverAdd "$A$2", 3, "$G$1"  '<--- Set diem tai cell A2 >= G1
  SolverAdd "$B$2", 3, "$G$1"  '<--- Set diem tai cell B2 >= G1
  SolverAdd "$C$2", 3, "$G$1"  '<--- Set diem tai cell C2 >= G1
  SolverOk "$D$2", 3, Range("G2").Value, "$A$2:$C$2"
  SolverSolve True
  Range("A2:C2").NumberFormat = "0.00"
End Sub
Hy vọng các bạn nghiên cứu và dùng nó vào mục đích có ý nghĩa!
 

File đính kèm

Lần chỉnh sửa cuối:
Mình test thử và thấy là khi gõ điểm trung bình từ 7.8 trở lên thì cho kết quả là điểm hệ số 3 lớn hơn 10. !$@!!
 
Mình test thử và thấy là khi gõ điểm trung bình từ 7.8 trở lên thì cho kết quả là điểm hệ số 3 lớn hơn 10. !$@!!
Vâng! Quên ràng buột điều kiện <=10
Bạn sửa lại code như sau:
PHP:
Private Sub Worksheet_Change(ByVal Target As Range)
  If Target.Address = "$G$2" Then
    Application.ScreenUpdating = False
    SolverReset
    SolverAdd "$A$2", 3, "$G$1"
    SolverAdd "$B$2", 3, "$G$1"
    SolverAdd "$C$2", 3, "$G$1"
    SolverAdd "$A$2", 1, "10"
    SolverAdd "$B$2", 1, "10"
    SolverAdd "$C$2", 1, "10"
    SolverOk "$D$2", 3, Range("G2").Value, "$A$2:$C$2"
    SolverSolve True
    Range("A2:D2").NumberFormat = "0.00"
    Application.ScreenUpdating = True
  End If
End Sub
 

File đính kèm

Lần chỉnh sửa cuối:
Đây là phương trình nhiều nghiệm, nếu dùng Solver thuần tuý thì chỉ chỉnh được 1 giá trị gốc thôi. Nhưng mục đích công việc này có vẻ không đàng hoàng lắm.
 
Đây là phương trình nhiều nghiệm, nếu dùng Solver thuần tuý thì chỉ chỉnh được 1 giá trị gốc thôi. Nhưng mục đích công việc này có vẻ không đàng hoàng lắm.
Vâng! Tôi cũng cảm giác thế thầy à!
Có điều chúng ta nghiên cứu Excel chỉ nói đến giải pháp và những khả năng mà Excel có thể làm được!
Ai, làm gì, mục đích thế nào ta không thể can thiệp được (cũng giống như ý nghĩa của chương trình Cr@ck pass không phải với mục đích phá hoại)
Hơn nữa: MS đưa ra các công cụ để giúp ta "nhẹ nhàng" hơn trong công việc ---> Ta mang nó làm cái gì, bác Bill cũng không thể khống chế nổi!
 
Vâng! Tôi cũng cảm giác thế thầy à!
Có điều chúng ta nghiên cứu Excel chỉ nói đến giải pháp và những khả năng mà Excel có thể làm được!
Ai, làm gì, mục đích thế nào ta không thể can thiệp được (cũng giống như ý nghĩa của chương trình Cr@ck pass không phải với mục đích phá hoại)
Hơn nữa: MS đưa ra các công cụ để giúp ta "nhẹ nhàng" hơn trong công việc ---> Ta mang nó làm cái gì, bác Bill cũng không thể khống chế nổi!

Thống nhất ý kiến bác, nếu vậy có thể dùng thủ tục kiểu như sau:
- Lấy giá trị điểm trung bình cho cộng hoặc trừ giá trị Random cho các điểm môn học (trừ 1 môn cuối cùng).
- Còn điểm môn học cuối tính từ điểm trung bình và các điểm kia ra thôi.

Khó nhất là điểm lẻ thôi: vì thường chấm là 9 hoặc 9.5, nếu tuỳ tiện nhập điểm trung bình thì khó có thể tính được điểm từng môn học theo kiểu kia.
 
Dùng macro với thuật toán theo kiểu tìm số điện thoại đẹp có thể liệt kê ra tất cả đáp án.
Thì dụ với cả 3 cột điểm và cả điểm trung bình đều làm tròn 1 số lẻ, ta có 1 số kết quả như sau:
Điểm TB | Số lượng KQ|
5​
|
4​
|
5,1​
|
25​
|
5,2​
|
64​
|
5,3​
|
121​
|
5,4​
|
196​
|
8,0​
|
2405​
|
10,0​
|
6​
|

Vấn đề là có nên đưa file lên hay không?
 
Lần chỉnh sửa cuối:
Web KT

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

Back
Top Bottom