Tạo bảng chọn câu ngẫu nhiên và thay đổi "mặt cười" (2 người xem)

Liên hệ QC

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

giang127

Thành viên hoạt động
Tham gia
24/12/07
Bài viết
138
Được thích
8
Các bạn ơi, mình có chút khó khăn với 2 file excel này. Mong các bạn giúp mình nha. |||||

File thứ nhất : "Giai do.xls"

Mình có 4 câu hỏi 1, 2, 3 , 4 theo như trong file.
Nút "Trả lời" dùng để bắt đầu, sau khi chọn theo kiểu "lần lượt" hoặc là "ngẫu nhiên"

Bây giờ mình muốn:

Với trường hợp chọn "Ngẫu nhiên"

- Khi click nút "Tiếp" sẽ hiện ra 1 câu hỏi ngẫu nhiên từ 1 đến 4 ở ô C3 và nội dung câu hỏi bên cạnh
- Hộp thoại Msgbox sẽ hiện ra, trả lời Đúng được + 10 điểm, Sai thì không được điểm nào
- Ấn "Tiếp" lần nữa thì ra câu hỏi ngẫu nhiên tiếp theo, cho đến hết. Các câu hỏi rồi thì thôi không hỏi lại nữa.

Với trường hợp chọn "Lần lượt"

- Cũng tương tự, chỉ có điều là theo tuần tự từ câu 1 đến 4


File thứ hai : "Giai do 2.xls"

Vẫn với bài toán 4 câu đố trên, nhưng mà mình muốn, nếu trả lời đúng thì sẽ được hình mặt cười 3 (Mình có đánh số trong file đính kèm)
Trả lời sai thì bị giảm 1 nấc, còn lại mặt cười 2, sai nữa thì 1, sai nữa cũng chỉ 1 thôi.
Cái ảnh cạnh phần điểm số sẽ thay đổi trong 3 hình mặt cười này.



CẢM ƠN CÁC BẠN NHÌU NHA !! -\\/.

Nếu làm xong mà File lớn quá không up lên diễn đàn được thì gửi dùm cho tớ vào hòm thư:
mymemory127@yahoo.com.vn

Cảm ơn 1 lần nữa -=.,,

View attachment Giai do.xls

View attachment Giai do 2.rar
 
Mời xem trong file đính kèm

PHP:
Option Explicit
Dim Ngau As Byte, Bon As Byte

Private Sub CommandButton1_Click()
 Dim Cau As Byte, Tiep As Byte, VTr As Byte
 Dim Sh As Worksheet, Rng As Range, sRng As Range
 Const StrC As String = "0123456789":                    Dim MyStr As String
 
 Sheets("S1").Select
 
 Set Sh = Sheets("CSDL"):        Cau = [A2].Value
 Set Rng = Sh.Range(Sh.[A1], Sh.[A999].End(xlUp))
 If Left([G6].Value, 1) = "L" Then
   Tiep = IIf(Cau = 9, 1, Cau + 1)
 Else
   Tiep = Cau - 1
   VTr = InStr(1, StrC, Tiep)
   MyStr = Left(StrC, VTr - 1) & Mid(StrC & " ", VTr + 1)
   Tiep = Mid(MyStr, 1 + Int(8 * Rnd()), 1)
   If Tiep = Cau Then Tiep = IIf(Cau < 9, Cau + 1, 1)
 End If
 Set sRng = Rng.Find(Tiep, , xlFormulas, xlWhole)
 If Not sRng Is Nothing Then
   [B2].Value = sRng.Offset(, 1).Value
   [B4].Resize(, 5).Value = sRng.Offset(, 2).Resize(, 5).Value
   [A2].Value = IIf(Tiep < 9, Tiep, 1)
 End If
 [a4].Select
End Sub

Mã:
[B]Private Sub Worksheet_Activate()[/B]
   Randomize:                       Ngau = 1 + Int(9 * Rnd())
   [A2].Value = Ngau:               [h2].Value = 0
   CommandButton1_Click
[B]End Sub[/B]

PHP:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
 If Not Intersect(Target, Range("B4:E4")) Is Nothing Then
   Bon = 1 + Bon
   If Bon = 5 Then
      MsgBox "Moi Ban Choi Van Moi!":        Bon = 0
      [h2].Value = 0:                        Worksheet_Activate
   Else
      If Target.Column = [f4].Value + 1 Then
         [h2].Value = [h2].Value + 10
      Else
         MsgBox [f4].Value
      End If
   End If
 End If
End Sub
 

File đính kèm

Upvote 0
Cảm ơn bạn SA_DQ . Tuy nhiên, file "GiaiDo" này có một số lỗi, đó là nó cứ bắt mình chọn câu đúng, ấn đến lần thứ 4 mà sai thì lại phải chơi lại từ đầu.

Mình ấn 1 câu sai thì nó hiện lên MsgBox chỉ đáp án đúng, bắt mình chọn.

Bạn kiểm tra xem phải vậy ko, sửa lại giúp mình với nhé ^^!

Với lại file Giải do 2 ("Giai do 2.xls") Có thể có hàm VBA nào giúp thay ảnh hiển thị khi trả lời sai hoặc đúng 1 câu hỏi đc ko.

THANKS !
 
Upvote 0
Tuy nhiên, file "GiaiDo" này có một số lỗi, đó là nó cứ bắt mình chọn câu đúng, ấn đến lần thứ 4 mà sai thì lại phải chơi lại từ đầu.
Nói đó là lỗi thì hơi nặng(!); Trong đề bài của bạn cũng chỉ có 4 câu trắc nghiệm mà thôi; mình có làm thêm 5 câu nữa bổ sung cho dễ chọn. Chứ như bạn hết 4 câu thì sao(?)

Mình ấn 1 câu sai thì nó hiện lên MsgBox chỉ đáp án đúng, bắt mình chọn.
Bạn kiểm tra xem phải vậy ko, sửa lại giúp mình với nhé ^^!
Nếu không muốn thấy đáp án đúng thì thay câu lệnh
Mã:
MsgBox [f4].Value
bằng câu
PHP:
MsgBox "GPE.COM"

(Phần còn lại hãy đợi đấy!)

Chúc ngày nghĩ cuối tuần vui vẽ!
 
Upvote 0
Bạn SA_DQ ơi. Sẵn tiện cho mình hòi là có thể tạo một thanh cuốn dọc cho 1 bảng tính (đã Merge thành 1 ô) được không.

Để mình có thể xem dữ liệu trong bảng tính đó bằng cách kéo thanh cuốn dọc đó.

Cảm ơn nhìu nghen. Chúc cuối tuần vui vẻ :D
 
Lần chỉnh sửa cuối:
Upvote 0
Web KT

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

Back
Top Bottom