Ich habe in einer Spalte mit Übeschrift untereinander 5 verschiedene € -Werte. Diese sollen pauschal durch 7% erhöht werden. Kann mir jemand die passende Formel und deren Anwendung nennen?
Was und wie funktioniert "Makro"?
Office - Word, Excel und Co. 9.746 Themen, 41.427 Beiträge
Hallo freaky90,
Hier ein Makrobeispiel, mit vielen REMs zur Info, zum Testen.
Im Makro wird die Maximale- Daten- Zeile, aus der Aktiven Celle, vor dem Makrostart übernommen.
ACHTUNG ****: Auf Wunsch Makro anpassen REM = " ' " vor der Makro- Zeile entfernen und an der anderen Makro- Zeile setzen, um die Komplette Spalte neu zu Berechnen.
Sub Wert_Plus_Prozent()
Dim MaxDatenZeile As Long ' = Maximale Datenzeile, wird vom Makro Ermittelt
Dim AZe As Long ' = Startzeile,(nach Makro Start Aktuelle Zeile)
Dim DatSp As Long ' = Preis Spalte
Dim OrgWert As String ' = Inhalt der Celle, in der Preis Spalte
Dim OrgWertMal As Double ' = Anzahle der Kommastellen
AZe = 2 ' ANPASSEN: Startzeile eingeben.
DatSp = 1 ' ANPASSEN: Spalte "A" = 1, in welcher Preis eingetragen wird.
OrgWertMal = 0.07 ' ANPASSEN: Prozent eintragen, z.B. "7%" = OrgWertMal "0.07"
' Maximale Datenzeile in DatSp - Spalte ermitteln,
' Komplette Spalte, oder nur bis zur Aktiven Celle Berechnen.
' ACHTUNG ****: Eine von Zwei Möglichkeiten wählen!
' Falls die komplette Spalte neu Berechnet werden soll.
' Es können auch Leerzeilen zwischen den Daten vorhanden sein.
' MaxDatenZeile = ActiveSheet.Cells(Rows.Count, (DatSp)).End(xlUp).Row ' ACHTUNG ****: wenn Komplette Spalte Berechnen
' Falls bis zur Aktiven Celle Spalte neu Berechnet werden soll.
' Es können auch Leerzeilen zwischen den Daten vorhanden sein.
MaxDatenZeile = ActiveCell.Row ' ACHTUNG ****: wenn bis zu Aktiven Celle in Spalte Berechnen
'
' For Next Schleife für Komma- Eintrag, in den Kommalosen Cellen.
For AZe = AZe To MaxDatenZeile
' Wert der Celle in OrgWert übernehmen.
OrgWert = Cells(AZe, DatSp)
' Sicherheitsabfrage, ob ein Wert > 0 in der Celle ist,
' ist kein Wert vorhanden, wird die Celle übersprungen,
If Cells(AZe, DatSp) > 0 Then
' Summe aus OrgWert bilden und in die Celle eintragen.
Cells(AZe, DatSp) = (OrgWert * OrgWertMal) + OrgWert
Else
End If
Next
End Sub