[算表] Visual Basic迴圈

看板Office作者 (Endless Fighting)時間1年前 (2022/11/16 10:06), 編輯推噓2(2015)
留言17則, 4人參與, 1年前最新討論串1/1
軟體: excel 版本: office 365 想要寫迴圈公式,算出各業務獎金 A B C D E 1 業務名 老大 老二 老三 老四 2 營業額 150 250 50 350 3 業務獎金比例: 6% 7% 5% 8% 4 業務獎金 9 17.5 2.5 28 因為營業額不同,所以會產生不同的業務狀金比例 之前是用 If的公式寫 現在試著用visual basic裡的 select case 來判斷 if case >300 業務獎金=營額業*0.08 if case >200 業務獎金=營業額*0.07 if case >100 業務獎金=營業額*0.06 if case >0 業務獎金=營業額*0.05 然後想要利用for來讓計算的儲存格往右移 想問的問題: 1、如何用 for 的迴圈讓計算的儲存格往右移?以上表來看就是從原本計算 B4移到 C4 因為 for i=1 to 4是不是只能讓儲存格往下移? 2、計算我只會寫 Range("B4").value = range("B2").value*0.01 但是 B4 及 B2 在 下一個計算時應該是變更為 C4 及 C2 請問這個儲存格是可改變的嗎? -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 123.194.137.131 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Office/M.1668564365.A.F6B.html

11/16 11:09, 1年前 , 1F
用offset ?
11/16 11:09, 1F

11/16 12:09, 1年前 , 2F
offset之後 怎麼寫要計算的儲存格?
11/16 12:09, 2F

11/16 12:09, 1年前 , 3F
抱歉我是新手 所以問題可能很基本 請再給指教
11/16 12:09, 3F

11/16 14:21, 1年前 , 4F
range("b4").offset(,i-1_)
11/16 14:21, 4F

11/16 14:47, 1年前 , 5F
Cells 在這個例子可能會比 Range 適合
11/16 14:47, 5F

11/17 07:54, 1年前 , 6F
Sub test()
11/17 07:54, 6F

11/17 07:54, 1年前 , 7F
For i = 1 To 4
11/17 07:54, 7F

11/17 07:54, 1年前 , 8F
Select Case Cells(2, i)
11/17 07:54, 8F

11/17 07:55, 1年前 , 9F
Case Is > 300: x = 0.08
11/17 07:55, 9F

11/17 07:55, 1年前 , 10F
Case Is > 200: x = 0.07
11/17 07:55, 10F

11/17 07:55, 1年前 , 11F
Case Is > 100: x = 0.06
11/17 07:55, 11F

11/17 07:55, 1年前 , 12F
Case Is > 0: x = 0.05
11/17 07:55, 12F

11/17 07:55, 1年前 , 13F
End Select
11/17 07:55, 13F

11/17 07:55, 1年前 , 14F
Cells(4, i) = Cells(2, i) * x
11/17 07:55, 14F

11/17 07:55, 1年前 , 15F
Next
11/17 07:55, 15F

11/17 07:55, 1年前 , 16F
End Sub
11/17 07:55, 16F

11/17 10:03, 1年前 , 17F
謝謝樓上大大
11/17 10:03, 17F
文章代碼(AID): #1ZT4MDzh (Office)
文章代碼(AID): #1ZT4MDzh (Office)