Board logo

標題: 給小朋友練習加法的問題 [打印本頁]

作者: dondon1495    時間: 2012-3-5 19:14     標題: 給小朋友練習加法的問題

請教

問題1
我用 F9 產生隨機數值 然後用選擇性貼上 "值"
不知道有沒有辦法不要這麼麻煩

問題2
每一題昨作答後立即顯示結果與分數
有什麼方式可以全部題目做完後才顯示結果與分數

感謝大大協助解惑:)
作者: register313    時間: 2012-3-5 19:33

本帖最後由 register313 於 2012-3-5 20:25 編輯

回復 1# dondon1495

問題1
用VBA解決出題之困擾
  1. Sub 出題()
  2. For Each R In Union([A3:A22], [C3:C22])
  3.   R.Value = Int(Rnd() * 50)
  4. Next
  5. [E3:E22] = ""
  6. End Sub
複製代碼
[attach]9866[/attach]
[attach]9867[/attach]

問題2
F3=IF(COUNT($E$3:$E$22)=20,IF((A3+C3)=E3,"√","×"),"")
作者: dondon1495    時間: 2012-3-5 19:40

回復 2# register313

謝謝大大:D
作者: Hsieh    時間: 2012-3-5 22:40

回復 3# dondon1495
不須VBA
工具/選項/計算
勾選反覆運算,最高次數為1
[attach]9868[/attach]
請加載分析工具箱增益集
[attach]9869[/attach]
作者: dondon1495    時間: 2012-3-5 23:09

回復 4# Hsieh

謝謝 Hsieh 大大
不用寫東西這是我希望的
遇到一個問題
我把答案區 Delete 掉之後
前面也全亂了
另外就是我就不知道怎麼再出題了:(
作者: Hsieh    時間: 2012-3-5 23:14

本帖最後由 Hsieh 於 2012-3-5 23:17 編輯

回復 5# dondon1495

題目已是亂數
答案輸入後就不會再變動
刪除答案後就重新出題
[attach]9873[/attach]
作者: dondon1495    時間: 2012-3-5 23:20

回復 2# register313

謝謝 register313 大大

請問我如果有加法與減法2個工作表
VBA要怎麼設定呢
以前沒用過VBA
那個出題案扭還不知道怎麼做出來
作者: register313    時間: 2012-3-6 00:02

回復 7# dondon1495
1.完成加,減工作表
2.加入VBA程式
  工具/巨集/VB編輯器
  [attach]9874[/attach]
  1. Sub 加法出題()
  2. UP = 99: LOWER = 0
  3. Sheets("加").Select
  4. For Each R In [A3:A22]
  5.    R.Value = Int((UP - LOWER + 1) * Rnd + LOWER)
  6.    R.Offset(0, 2).Value = Int((99 - R.Value - LOWER + 1) * Rnd + LOWER)
  7. Next
  8. [E3:E22] = ""
  9. End Sub
  10. Sub 減法出題()
  11. UP = 99: LOWER = 0
  12. Sheets("減").Select
  13. For Each R In [A3:A22]
  14.    R.Value = Int((UP - LOWER + 1) * Rnd + LOWER)
  15.    R.Offset(0, 2).Value = Int((R.Value - LOWER) * Rnd + LOWER)
  16. Next
  17. [E3:E22] = ""
  18. End Sub
複製代碼
3.加入執行按鈕
[attach]9875[/attach]
作者: dondon1495    時間: 2012-3-6 10:11

回復 6# Hsieh

謝謝 Hsieh 大大
反覆看了好久
終於看到一直漏看的幾個字
"請加載分析工具箱增益集"
讓您見笑了
再次謝謝您^^
作者: dondon1495    時間: 2012-3-6 10:14

回復 8# register313

謝謝 register313 大大
真的完全不會VBA
研究了好幾個鐘頭
還是只能依樣畫葫蘆
雖然我搞不出名堂
還是十二萬分感謝
謝謝大大^^
作者: softsadwind    時間: 2012-3-6 11:08

哈 我家也有小孩子 剛好可以用到...拿走了....感謝提供創意和解答
作者: dondon1495    時間: 2012-3-6 12:19

回復 11# softsadwind

讚喔!
能夠物盡其用是最棒的了^^
作者: softsadwind    時間: 2012-3-6 16:02

稍微修改成我要的版本 分有需要的人使用
A1的數字可以更改,除法的部份,是有構想 不過沒有實力寫:P
讓有空的大大幫忙完成
A1 開√ ,取整數
例如 A1=100 開√就是10
C3:C22 就是取1~10的亂數
A3:A22 就是取 (1~10的亂數) x C欄
或許有更快得方法......盼望有人分享囉:D

[attach]9883[/attach]
[attach]9882[/attach]
  1. Sub 加法出題()
  2. UP = Range("A1"): LOWER = 0
  3. Sheets("加").Select
  4. For Each R In [A3:A22]
  5.    R.Value = Int((UP - LOWER + 1) * Rnd + LOWER)
  6.    R.Offset(0, 2).Value = Int((UP - R.Value - LOWER + 1) * Rnd + LOWER)
  7.    Range("B3:B22") = "+"
  8.    Range("B1") = "以內加法"
  9.    Range("F3").Select
  10.    ActiveCell.FormulaR1C1 = _
  11.         "=IF(RC[-1]<>"""",IF((RC[-5]+RC[-3])=RC[-1],""√"",""×""),"""")"
  12.         Selection.AutoFill Destination:=Range("F3:F22"), Type:=xlFillDefault
  13.    
  14. Next
  15. [E3:E22] = ""
  16. End Sub
  17. Sub 減法出題()
  18. UP = Range("A1"): LOWER = 0
  19. Sheets("加").Select
  20. For Each R In [A3:A22]
  21.    R.Value = Int((UP - LOWER + 1) * Rnd + LOWER)
  22.    R.Offset(0, 2).Value = Int((R.Value - LOWER) * Rnd + LOWER)
  23.    Range("B3:B22") = "-"
  24.    Range("B1") = "以內減法"
  25.    Range("F3").Select
  26.    ActiveCell.FormulaR1C1 = _
  27.         "=IF(RC[-1]<>"""",IF((RC[-5]-RC[-3])=RC[-1],""√"",""×""),"""")"
  28.         Selection.AutoFill Destination:=Range("F3:F22"), Type:=xlFillDefault
  29. Next
  30. [E3:E22] = ""
  31. End Sub

  32. Sub 乘法出題()
  33. UP = Range("A1"): LOWER = 0
  34. Sheets("加").Select
  35. For Each R In [A3:A22]
  36.    R.Value = Int((UP - LOWER + 1) * Rnd + LOWER)
  37.    R.Offset(0, 2).Value = Int((UP - R.Value - LOWER + 1) * Rnd + LOWER)
  38.    Range("B3:B22") = "x"
  39.    Range("B1") = "以內乘法"
  40.    Range("F3").Select
  41.    ActiveCell.FormulaR1C1 = _
  42.         "=IF(RC[-1]<>"""",IF((RC[-5]*RC[-3])=RC[-1],""√"",""×""),"""")"
  43.         Selection.AutoFill Destination:=Range("F3:F22"), Type:=xlFillDefault
  44.    
  45. Next
  46. [E3:E22] = ""
  47. End Sub
複製代碼

作者: Hsieh    時間: 2012-3-6 21:12

回復 13# softsadwind

試試看
    [attach]9885[/attach]
作者: softsadwind    時間: 2012-3-7 09:11

回復 14# Hsieh

        昨天有下載謝老大的範本                       
        不過似乎有點問題                       
        嗯...後來想一想應該是我的構想有問題                       
        還是回歸到另外一種作法                       
                               
        a= "A1"                       
                               
        1 至 A1 取亂數, 代號 ar  位置 C3:C22                       
                               
        a / ar .....取整數, 代號 m                       
                                
        1 ~ m  取亂數 代號  mr  …..位置A3:A22                       
                               
        舉例來說                       
        A1 輸入 100, a = 100                       
        1 到 a 之間取亂數 ( 也就是1到100取亂數)                       
        假設取到數值 99  , 因此  ar = 99                       
        a / ar = 100 / 99 = 1.xxxxx  取整數 m = 1                       
        1 到  m  之間取亂數,(也就是 1 到 1 取亂數)                        
        得到 數值 1,因此 mr = 1                       
        根據這些數值帶出                       
                               
        mr * ar        /        ar        =
        1 * 99        /        99        =
題目:        99        /        99        =
                               
        在另外一個例子                       
        A1 輸入 99, a = 99                       
        1 到 a 之間取亂數 ( 也就是1到100取亂數)                       
        假設取到數值 2  , 因此  ar = 2                       
        a / ar = 99 / 2 = 49.5  取整數 m = 49                       
        1 到  m  之間取亂數,(也就是 1 到 49 取亂數)                        
        得到 數值 49,因此 mr = 49                       
        根據這些數值帶出                       
                               
        mr * ar        /        ar        =
        49 * 2        /        2        =
題目:        98        /        2        =

   再次麻煩囉~~~~
作者: softsadwind    時間: 2012-3-7 13:27

回復 14# Hsieh


    剛剛又在看了一次,原來是我沒看清楚...
   稍微更改了一些設定....
   讓1 會出現, 讓最大值可以相除....
  1. Sub 出題()
  2. Dim k$, sp As Shape
  3. k = Application.Caller
  4. Set sp = ActiveSheet.Shapes(k)
  5. n = sp.TextFrame.Characters(1, 1).Text
  6. x = [A1]
  7. For i = 3 To 22
  8. Select Case n

  9. Case "加"
  10. Cells(1, 2) = "以內加法"
  11. p = "+"
  12. a = "+"
  13. s = Array(Int((x - 1 + 1) * Rnd + 1), p, Int((x - 1 + 1) * Rnd + 1), "=", "")

  14. Case "減"
  15. Cells(1, 2) = "以內減法"
  16. p = "-"
  17. a = "-"
  18. s = Array(Int((x - 1 + 1) * Rnd + 1), p, Int((x - 1 + 1) * Rnd + 1), "=", "")

  19. Case "乘"
  20. Cells(1, 2) = "以內乘法"
  21. p = "X"
  22. a = "*"
  23. j = Int(Sqr(x))
  24. s = Array(Int((j - 1 + 1) * Rnd + 1), p, Int((j - 1 + 1) * Rnd + 1), "=", "")

  25. Case "除"
  26. Cells(1, 2) = "以內除法"
  27. p = "÷"
  28. a = "/"
  29. y = Int((x - 1 + 1) * Rnd + 1)
  30. Z = Int((x - 1 + 1) * Rnd + 1)
  31. Do Until y Mod Z = 0 And y >= Z
  32.     y = Int((x - 1 + 1) * Rnd + 1)
  33.     Z = Int((x - 1 + 1) * Rnd + 1)
  34. Loop
  35. s = Array(y, p, Z, "=", "")
  36. End Select
  37. Cells(i, 1).Resize(, 5) = s
  38. Cells(i, 6).FormulaR1C1 = _
  39.         "=IF(RC[-1]<>"""",IF((RC[-5]" & a & "RC[-3])=RC[-1],""√"",""×""),"""")"
  40. Next
  41. End Sub
複製代碼
再次感謝 謝老大的幫忙......我想這個程式應該很夠用了....:>
[attach]9888[/attach]
作者: softsadwind    時間: 2012-3-7 13:31

Ps. 我們家小朋友 六歲而已 所以 1 很重要  要出現. ....呵呵....
作者: dondon1495    時間: 2012-3-7 18:16

1.減法會出現負數,
小朋友還沒到那個程度,
怎麼修正可以不出現負數呢?

2.每一題答完,
對或錯立刻顯示,
這樣小朋友會堅持改到對才繼續往下,
永遠是100分,
能變成全部題目做完才顯示對或錯嗎?
作者: register313    時間: 2012-3-7 18:46

回復 18# dondon1495

Hsieh超版的程式稍作修改即可
[attach]9892[/attach]
作者: hugh0620    時間: 2012-3-23 12:13

回復 10# dondon1495


    這個其實會有一個問題唷~
    提出來給你參考~
    excel 只要是有數字的~ 用滑鼠一拉~ 左下方就會將兩個加在一起~
    這樣答案就跑出來囉~
作者: Hsieh    時間: 2012-3-23 14:28

回復 20# hugh0620

會用EXCEL的小孩就用不著這樣的練習程式了
作者: axen0520    時間: 2015-4-25 22:15

積分不夠,有人可以分享一下嗎
作者: ML089    時間: 2015-4-28 00:09

本帖最後由 ML089 於 2015-4-28 09:45 編輯

回復 1# dondon1495

去年寫過的題目(小孩練習用四則運算)給你參考

不須VBA

工具/選項/計算
勾選反覆運算,最高次數為1
若要逐題顯示答案對錯時,計算方式選『自動』
若要答完題目才顯示答案對錯時按F9計算,計算方式選『手動』

請加載分析工具箱增益集

    [attach]20813[/attach]
先看完說明在逐步操作,裡面很多機關選項。

操作動畫太大無法上傳,用DROPBOX連結自行下載觀看


"https://www.dropbox.com/s/yrd6m6nsqltjgpg/%E5%9B%9B%E5%89%87%E9%81%8B%E7%AE%97%E7%B7%B4%E7%BF%92.gif?dl=0"
作者: hcm19522    時間: 2016-3-4 11:02

http://blog.xuite.net/hcm19522/twblog/209146226
參考
作者: yen956    時間: 2016-3-9 11:27

二位數的直式加法
[attach]23402[/attach]
[attach]23403[/attach]
作者: yen956    時間: 2016-3-9 11:43

本帖最後由 yen956 於 2016-3-9 11:44 編輯

Sorry, 減法須加裝字型
circleNumber.ttf
否則標題怪怪的.
[attach]23406[/attach]
二位數的直式減法
[attach]23404[/attach]
[attach]23405[/attach]




歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)