VBA講義 - Ch04. 實例練習
第一大類: 轉換型的程式 (三大步驟: 輸入、計算、輸出 )
1. 給長、寬、高、半徑,計算週長、面積、體積
2. 單位的轉換 (長度、重量、貨幣、攝氏轉華氏)
3. 公式計算 ( BMI、標準體重、安全存量 )
第二大類: 比較類的程式 (單向、雙向、多向)
1. 找出 Excel 儲存格A1、B1中的值較大者(較大者的字型色彩塗成紅色)。
2. 找出 Excel 儲存格A1、B1、C1中的值較大者(較大者的字型色彩塗成紅色)。
3. 找出 Excel 儲存格A1、B1中的絕對值較大者(較大者的字型色彩塗成紅色)。
4. 找出 Excel 儲存格A1、B1、C1中的絕對值較大者(較大者的字型色彩塗成紅色)。
5. 找出 Excel 儲存格A1、B1中的值較大者(較大者的字型色彩塗成藍色, 較小者的字型色彩塗成紅色)。
6. 判斷 Excel 儲存格A1的值 ( >= 60 塗成藍色, < 60 塗成紅色)。
7. 有 VBA 書一本, 定價 500元,當購買數量超過10本時(包含10本)打九折,用A2輸入定價, B2輸入數量, C2輸出購買總金額。
8. 題目同上,但折扣方式如下:
1∼9本 照定價出售
10∼ 29本 照定價打 9 折
30∼49本 照定價打 8 折
50 本以上 照定價打 7 折
9. 判斷 Excel 儲存格A1的值 ( 60(含)以上 塗成藍色,30(含) ~ 60 塗成紅色, 30 以下 塗成綠色)。
10. 若 儲存格A1>= 60 而且 儲存格B1>= 60, 則在儲存格C1顯示 "你兩科都及格了"
11. 判別 儲存格A1與B1 的分數,在儲存格C1顯示 "你兩科都及格了" 或 "你只有一科及格" 或 "你兩科都不及格了"
12.
以下的程式,若一開始 a=10, b=20, c=30 , 請問執行後,儲存格A1的值是 而儲存格B1的值是 ,
若一開始 a=30, b=20, c=40 , 請問執行後,儲存格A1的值是 而儲存格B1的值是 。
if a < b and a > c then
range(“A1”) = “a”
if a < b or a > c then
range(“B1”) = “c”
else
range(“B1”) = “d”
end if
else
range(“A1”) = “b”
if a < b or a > c then
range(“B1”) = “e”
else
range(“B1”) = “f”
end if
end if
第三大類: 重覆處理的程式 (單一迴圈、雙迴圈、多迴圈)
1. 在 Excel 儲存格A1~A10 分別輸出 1、2、3、...、10
2. 在 Excel 儲存格A1~A10 分別輸出 2、4、6、...、20
3. 計算 1+2+3+…+20=?
4. 計算 1+3+5+…+19=? (計算1~20之間奇數相加的總和)
5. 計算 2+4+6+…+20=? (計算1~20之間偶數相加的總和)
6. 計算 4 + 9 + 13 + 18 + 22 + … + 94 + 99=?
7. 計算 儲存格B2~B11的總和, 顯示在B12
8. 計算 儲存格B2~B11的平均值, 顯示在B13
9. 列出 1∼100 之間所有能被 7 整除的整數。
10. 計算 20! = 1×2×3×…×20
11. 在儲存格A1~I9 都輸出 100
12. 輸出九九乘法表
13. 1 + 2 + 3 + ... + x <= 100, 請問最大的 x 是 ?
14. 使用者要計算幾個數字的平均數(但有幾個數字未知, 但使用者輸入0則代表全部輸入)
第四大類: 混合型的程式 (合併第一、二、三大類)
1. 在 Excel 儲存格B2~B11中找出最低分的分數(顯示在B12)。
2. 在 Excel 儲存格B2~B11中找出最低分的分數(顯示在B12)。
3. 在 Excel 儲存格B2~B11中找出最低分的分數的儲存格代號(顯示在B12)。
4. 判斷 Excel 儲存格B2~B11的值 ( >= 60 塗成藍色, < 60 塗成紅色)。
5. 判斷 Excel 儲存格B2~E5的值 ( >= 60 塗成藍色, < 60 塗成紅色)。
6. 列出 1∼100 之間所有能被 7 整除的整數。
7. 某數被13除會餘2, 被17除會餘5, 請找出某數(最小的正整數)
8. 在儲存格A1~A9 任意都輸出 0~99的數字 (利用rnd 與 int())
9. 玩猜數字遊戲 (電腦想一個0~99的數字, 由你來猜, 每次電腦都會回答 x到y之間)