Automatisches Multiplizieren bei Eingabe bei Excel?


19.05.2021, 08:39

Gibt es eventuell über die Makros oder das erstellen einer eigen Funktion eine Möglichkeit, festzulegen, dass zB der Wert in E5 gleich E5*B5 sein soll?

4 Antworten

Hallo,

mit VBA ist das einfach, dazu kannst du diesen Code verwenden und in das Modul des gewünschten Tabellenblattes einfügen:

Private Sub Worksheet_Change(ByVal Target As Range) 'Ereignis löst bei Veränderung einer Zelle aus

'prüfen ob die geänderte Zelle im Bereich E5:T5 liegt und sowohl der Wert in B5 als auch der neue Wert eine Zahl sind
If Not Intersect(Target, ActiveSheet.Range("E5:T5")) Is Nothing And IsNumeric(Target.Value) And IsNumeric(ActiveSheet.Range("B5").Value) Then
    'Selbstauslöser verhindern
    Application.EnableEvents = False
    Application.Calculation = xlCalculationManual
    'Multiplikation
    Target = Target.Value * ActiveSheet.Range("B5").Value
    'Einstellungen zurücksetzen
    Application.EnableEvents = True
    Application.Calculation = xlCalculationAutomatic
End If
End Sub


Nein, das geht nicht. Eine Excel Zelle kann nicht gleichzeitig, als Text und Zahl formatiert werden, was hier der Fall wäre. Es braucht eine Zelle mehr, die das Ergebnis anzeigt, wenn dort die Formel hinterlegt ist. Man muss auch nicht ständig die Formel neu eingeben, sondern nur einmalig.

Wenn du möchtest das E5 mit B5 multipliziert wird und das auch mit allen Zahlen von E5 bis T5 gemacht werden soll, muss du den Multiplikator (B5) absolut setzen, also $E$5 und die Formel so in alle Zellen rüber kopieren. Allerdings wie schon erwähnt, brauchst du eine Spalte mehr, die das Ergebnis wiedergibt

lfrzzl 
Fragesteller
 19.05.2021, 08:38

So hätte ich es auch gemacht, sie möchte aber "natürlich" keine doppelte menge an Spalten benötigen..

0

Das geht nicht. Ginge es, würde ja auch die Auszüge Ende Zahl direkt wieder m zu ltipliziert werden.

Du kannst die Berechnung automatisch ausführen lassen, aber das Ergebnis kann nur in einer anderen Zelle angezeigt werden. Bspw direkt daneben.

 ohne dass ich jedes mal eine Formel eingeben muss?

Du musst Excel schon sagen, was Du willst.

  • entweder die Formel jeweils neu eingeben
  • oder die Formel kopieren.

Soll die Rechenoperation stets mit mit dem Wert der Zelle B5 erfolgen, mache eine festen Bezug daraus indem Du das "$-Zeichen" voran setzt. z.B. xx*$B$5, dann wird alles mit dem Wert aus B5 berechnet.

lfrzzl 
Fragesteller
 19.05.2021, 08:41

aber so müsste ich ja jedes mal angeben, dass er mir das berechnen soll, es geht darum einmalig zu sagen, dass er die werte dieser zeile sobald eingetragen mit B5 multiplizieren soll, nicht immer bei Eingabe..

0
GutenTag2003  19.05.2021, 08:46
@lfrzzl

Nun ja, enthält eine Zelle keine Werte oder Formel, ist sie leer.

Du kannst die Wenn-Funktion nutzen indem Du eine Bedingung voraussetzt. z.B.

=WENN(A1>0;A1*$B$5;"") ... und in die jeweiligen Zellen kopieren.

0