2017-06-03 38 views
-1

我是使用Excel VBA的新手,我試圖解決這個問題,但無法爲我的生活得到我的頭瞭解如何做到這一點。VBA:跨列的累積數據添加次數

我有一組數據在列A中列出,另一組數據列在列E中。 我想計算並在列K中顯示以下A2和E2的添加。這將是次數

A2 + E2 
A2 + (E2*2) 
A2 + (E2*3) 
. 
. 
A2 + (E2*C2) 

我然後想顯示列中的累積加法A3和E3的K + 3(沿三列),和A4 + E3中的列K:做的是通過在C2的顯示值,即確定+6等等。我想重複一遍,直到列A中所有包含數字的行都被處理完畢。

這裏是電子表格會是什麼樣子已填充計算的前三列的圖像(請注意一些列已隱藏):

與價值觀的電子表格的屏幕截圖,使用公式

計算

Screenshot of spreadsheet with values calculated using formulae

我希望這一切都有道理..並且非常感謝你的幫助!

+0

爲什麼不能這是用公式完成的嗎?你有嘗試過什麼嗎?你能否表現出你原來努力解決這個問題(工作與否)?你是否期望在這個問題的另一端每個人都獨立地重新輸入你的樣本數據? – Jeeped

回答

1

試試這個VBA子過程中的值在工作表1

enter image description here

enter image description here

+0

哈哈哈,一個好人。你讓我今天一整天都感覺很好。 –

+0

@A.S.H,我試着把解決方案放到他們自己的語言中。在幾天之後,我會[編輯]將代碼作爲複製和粘貼,但今天我只是想重現所顯示的原始工作。 – Jeeped

+0

嗨Jeeped,感謝您花時間看這個。對不起,如果我不付出任何努力;本週我纔開始學習VBA,這是我在stackoverflow上的第一篇文章,所以我不知道要包含什麼以及如何形成一篇文章(很明顯)。我可以向你保證,我確實嘗試了幾個小時來打破這個小栗子。 – pisaan

0

這裏是供他人複製代碼,並使用:

Option Explicit 

Sub TDatapoints() 
    With Worksheets("sheet1") 
     With .Cells(2, "k").Resize(.Cells(2, "c").Value2, .Cells(.Rows.Count, "a").End(xlUp).Row - 1) 
      .Formula = "=index($a:$a, column(b:b), 1)+index($e:$e, column(b:b), 1)*(row(1:1)-1)" 
      .Value = .Value2 
     End With 
    End With 
End Sub