[英]Call function/Sub in code vba
我用VBA編寫了一個代碼,該代碼從工作簿中獲取值並將其復制到另一個工作簿中。 因此,例如在單元格G20中,我將有45678。然后代碼將這個數字四舍五入為46 000,如果該數字足夠大,請使用下面提供的If語句刪除最后三個數字。 我認為內容是正確的,但我不認為這是正確的方式。
DSA.Worksheets(1).Range("G10").Value = Application.WorksheetFunction.Round(tax_declaration.Worksheets(1)Range("I72").Value, -3)
DSA.Worksheets(1).Range("G11").Value = Application.WorksheetFunction.Round(Val(Application.WorksheetFunction.Sum(Range("I25:I27"))), -3)
Call thousand(DSA.Worksheets(1).Range("G10"))
End Sub
Sub thousand(i As Variant)
If Right(i, 3) = "000" Then
i = Left(i, Len(i) - 3)
End If
End Sub`
如何創建類似If語句的函數,並使用它遍歷所有“ DSA.Worksheets(1)Ranges”? -我有幾個。
提前致謝 !
我不確定您的意思,但不是使用sub而是使用一個函數並傳遞不同的i:
Function thousand(i As Variant) As Variant
If Right(i, 3) = "000" Then
thousand = Left(i, Len(i) - 3)
End If
End Function
然后,您只需要執行以下操作即可: debug.print thousand(DSA.Worksheets(1).Range("G10"))
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.