2015-07-21 55 views
1

柱W¯¯我有因此balance2值& 在X列我有BALANCE3Excel的VBA到單元格的值複製如果> 0至細胞向左

我需要移動BALANCE3中的值爲(大於零),以覆蓋BALANCE2中的相應單元格,以便我有一個總計付款清單。

任何人都可以幫助使用這個嗎?我不知道該怎麼做。

+1

歡迎到計算器。其實,你應該發佈一些你試過的代碼。 –

回答

1

試試這個:

Public Sub overwriteValues() 

    Dim row As Integer 

    'Set start row 
    row = 1 

    With Sheets("sheetname") 

     'Loop until column X cell is blank 
     'You can modify column if you want other 
     Do While .Range("X" & row) <> "" 

      If .Range("X" & row) > 0 Then 

       .Range("W" & row) = .Range("X" & row) 

      End If 

      'Increase row 
      row = row + 1 

     Loop 

    End With 

End Sub 
+0

非常好,這是做的伎倆。非常感謝! – MC81

+0

請注意,此代碼假定列'X'總是被填充,空行將停止腳本 –

+0

是的,我不知道他的要求打破循環。所以,我是這樣做的。如果他有這個代碼的一些問題,我會修改。如果答案是有效的,請標記爲答案。謝謝。 –

2

不要使用宏這個

只需使用Excel內置的IF,例如,假設BALANCE2W列,BALANCE3X列,在細胞Z1

=IF(X1>0,X1,W1)

然後將其向下拖動到整個列,將列Z剪切並粘貼到列W,和你有你「覆蓋」,而無需編寫宏代碼

+0

嗨,對不起所有其他單元格都包含值,所以我寧願如果可能的話將它作爲宏運行?感謝您迅速回答。 – MC81

+0

所有其他的單元格?都有一個你不使用的列名(例如'ZZ') –

+0

說不要使用宏,這實際上不是一個非常有用的答案。 我們不知道這是一項一次性任務,或者實際上它是定期需要的東西,例如月度報告。如果要定期使用它,那麼宏可能是更好的方法。 – EdHunter

相關問題