2013-10-08 74 views
0

請您可以幫助我們使用以下代碼。我在互聯網上的某個地方,想要改變它,但沒有贏得,根據另一個單元格值更改爲負數

我希望在第一欄(從第9行)改變爲負數(借項金額)的數額,如果F列(將與金額位於同一行)是借記傑出的。

請參閱下面的代碼,我發現。

子試驗() 昏暗rcel作爲範圍 昏暗RNG作爲範圍設定 RNG =範圍(ActiveCell,將細胞(Rows.Count,_ ActiveCell.Column).END(xlUp)) 對於每個rcel在RNG 如果rcel.Value <> 「」 而rcel.Value> = 0。然後 rcel.Value = rcel.Value * -1 結束如果 接着rcel 結束子

和我帶在該部分檢查值F列

And Text.Offset(「 - 3,0」)=「Debit-Outstanding」

顯然我不像我想象的那麼聰明,需要更多的培訓, ps:沒有得到4空格代碼塊的東西對,謝謝那位將爲我解決問題的人。 任何幫助將不勝感激得到這個工作。 再次感謝

回答

1

試試這個:

Sub test() 
    Dim rcel As Range 
    Dim Rng As Range 
    Dim rw As Long 
    Set Rng = Range(ActiveCell, Cells(Rows.Count, ActiveCell.Column).End(xlUp)) 
    For Each rcel In Rng 
     With rcel 
      rw = .Row 
      If .Value <> "" And .Value >= 0 And Cells(rw, "F") = "Debit-Outstanding" Then 
       .Value = -.Value 
      End If 
     End With 
    Next rcel 
End Sub 
+0

喜,讓我對下面的線。價值= -.Value錯誤,感謝您的幫助 – user1955214

+0

沒關係,沒有選擇正確的單元格,當我運行宏時,完美地工作,謝謝你的一切 – user1955214

2

我想VBA宏是過於複雜了你所需要的。

如果是一次性的 - 只需創建另一個列,其中有一個公式如「= I9 *(IF(F9 =」Debit-Outstanding「, - 1,1)),然後複製到最後;然後複製價值,刪除計算的列,就是這樣

如果「Debit-Outstanding」值可能會發生變化,或者您將要添加數據,請將上述公式與上述公式結合到您的工作簿中,然後用這個來代替我包含值當前列。

希望幫助!

+0

謝謝你的迴應,但最終的結果將轉到一個數據透視表,我想盡可能地讓它變得簡單,任何人都可以使用,但會嘗試出來,但其他電子表格。 – user1955214

相關問題