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之間)