AW: Anzeige des Maximums der direkten Dateneingabe oder des Zellenwerts aus der Formel

AW: Anzeige des Maximums der direkten Dateneingabe oder des Zellenwerts aus der Formel

Mit Bezug auf : Excel: So erhalten Sie entweder eine direkte Dateneingabe oder einen Zellenwert aus einer Formel

Ich möchte mich zu einem verwandten Thema erkundigen. Wie bearbeite ich meine VBA-Formel, wenn ich den bestehenden formulierten Wert mit dem neuen Eingabewert vergleichen möchte? Und das Maximum sowohl des formulierten als auch des neueren Eingabewerts anzeigen möchte.

Vielen Dank für Ihre freundliche Unterstützung. Wir wissen das sehr zu schätzen.

Antwort1

Aus Ihrer ursprünglichen Anfrage: Wenn A2 und A3 beide numerische Werte haben, wird A4 mit deren Summe gefüllt. Wenn sie nicht numerisch oder null sind, zeigt A4 einen Fehler an. Wenn A4 überschrieben wird, bleibt dieser Wert dauerhaft, bis A2 oder A3 erneut geändert werden. So fügen Sie die neuen Anforderungen hinzu: Wenn A2 und A3 eine gute Summe für A4 ergeben und jemand A4 mit einem neuen numerischen Wert überschreibt, möchten Sie, dass das Maximum zwischen A2+A3 und A4 genommen wird. Ich gehe davon aus, dass dies in Zelle A5 angezeigt werden sollte.

Ergänzung zur ursprünglichen Antwort: Private Sub Worksheet_Change(ByVal Target As Excel.Range) If Not Intersect(Target, Range("A2:A3")) Is Nothing Then If WorksheetFunction.Count(Range("A2:A3")) = 2 Then Range("A4").Formula = "=A2+A3" End If ElseIf Not (Intersect(Target, Range("A4"))) Is Nothing Then 'Check for numbers in a2, a3, and a4 If IsNumeric(Range("A2").Value) And IsNumeric(Range("A3").Value) And IsNumeric(Range("A4").Value) Then 'If a2+a3 is greater than a4 If Range("A2").Value + Range("A3").Value > Range("A4").Value Then 'set the sum of a2 and a3 to cell a5 Range("A5").Value = Range("A2").Value + Range("A3").Value Else 'set the value of cell a4 to cell a5 Range("A5").Value = Range("A4").Value End If End If End If End Sub

verwandte Informationen