Ich schrieb einen Code in VBA, die Werte aus einer Arbeitsmappe und kopiert sie in eine andere Arbeitsmappe. Also zum Beispiel in Zelle G20 werde ich 45 678 haben Der Code rundet dann diese Zahl auf 46 000, und dann brauche ich eine Funktion, um die letzten 3 Zahlen zu löschen, wenn die Zahl groß genug ist, die If-Anweisung unten verwendend. Ich denke, der Inhalt ist richtig, aber ich glaube nicht, dass ich es den richtigen Weg nenne.Aufruf Funktion/Sub in Code Vba
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`
Wie könnte ich eine Funktion wie meine If-Anweisung zu erstellen, und es zu Schleife verwenden, um durch alle meine ‚DSA.Worksheets (1) Ranges‘? - Ich habe mehrere davon.
Vielen Dank im Voraus!
Was Sie tun Mittelwert - Schleife durch alle Arbeitsblätter? Oder mehrere Bereiche im selben Arbeitsblatt durchlaufen? – BruceWayne
Ich meinte Schleife durch mehrere Bereiche in demselben Arbeitsblatt, sorry, wenn es nicht klar war! – lo1ngru