
Ich habe ein Blatt in Excel mit einer Liste von Zahlen. Manchmal möchte ich X Einheiten von einer Zelle in eine andere verschieben.
Angenommen, ich habe eine Klasse mit Kindern, und jedes Kind hat eine bestimmte Anzahl Murmeln. Das Blatt enthält zwei Spalten, die erste Spalte enthält Namen, die zweite Spalte enthält Murmeln. John gibt Bill 375 Murmeln. Ich möchte das Blatt aktualisieren.
Derzeit hole ich einen Taschenrechner heraus, führe die Subtraktion und Addition durch und aktualisiere die Zellen manuell.
Dies ist umständlich und fehleranfällig. Gibt es einen besseren Weg?
(Ich weiß, dass ich „=8300+375“ in die Zelle schreiben kann, aber letztendlich wird jede Zelle eine unglaublich lange Formel haben...)
Antwort1
Sie können „Inhalte einfügen“ verwenden, um die Berechnungen einfach durchzuführen.
- Geben Sie
-375
in eine Zelle und375
daneben ein. - Wählen Sie Ihre neuen Nummern aus und drücken Sie STRG+C
- Wählen Sie die Zellen aus, die Sie ändern möchten.
- im Ribbon / Home / Einfügen / „Inhalte einfügen“
- Aktivieren Sie „Hinzufügen“ und dann „OK“.
Antwort2
Matthias JuhászDer Beitrag hat mich dazu inspiriert, Ihnen ein VBA-Makro vorzuschlagen, da es schneller ist und auch Zeit spart. Und ich glaube, dass Sie damit umgehen können.
Wie es funktioniert:
- Ich gehe davon aus, dass Sie Daten im Bereich „Range“ haben
A2:B4
. Geben Sie die Werte ein, die Sie subtrahieren möchten
C2:C4
.AusRegisterkarte "Entwickler", klickenDesign-Modus
DannEinfügen& AusActiveX-Steuerelemente
klickenBefehlsschaltflächensymbolund zeichne es auf
das Blatt.Drücke denBefehlsschaltfläche, gelangen Sie zum VB-Editor von Windows.
Kopieren Einfügendieser Code zwischen
Private Sub CommandButton1_Click()
End Sub.
Range("C2:C4").Select Selection.Copy Range("B2").Select Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlSubtract, SkipBlanks:= _ False, Transpose:=False Range("C2:C4").Select Selection.ClearContents Application.CutCopyMode = False
Klicken Sie im VB-Editor Windows aufDateimenüdann drückeSchließen und zu Microsoft Excel zurückkehren.
Klicken Sie abschließend aufBefehlsschaltfläche.
Neue Werte finden Sie unter Column B
(siehe Screenshot).
Achtung
Wenn Sie in einer Zelle nur den alten Wert vom neuen Wert subtrahieren möchten, können Sie diesen VBA-Code verwenden.
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
If Target.Column = 2 And Target.Row = 1 Then
NewVal = Range("B1").Value
Application.EnableEvents = False
Application.Undo
OldVal = Range("B1").Value
Range("B1").Value = NewVal
Range("B1").Value = NewVal - OldVal
Application.EnableEvents = True
End If
End Sub
Drücken SieALT+F11um den VB-Editor zu öffnen undKopieren Einfügender oben gezeigte Code alsStandardmodul.
Sobald Sie den Wert überschreiben
B1
,
subtrahiert der Code ihn vom alten Wert und schreibt ihnB1
mit dem neuen Wert neu.
Passen Sie den Datenbereich nach Bedarf an.