online 1
gast (50)

/ Forum / Tabellenkalkulation

TabellenkalkulationTabellenkalkulation

Fragevon Franks vom 02.10.2021, 11:18 Options

Lösung

Addition mit Bedingung

Hallo Zusammen,
ich möchte in einer Zeile eine Summe über alle ausgewählten Felder bilden, außer in diesem Feld steht ein bestimmter Wert. Diese wären -100,000% oder #DIV/0!
Für eure Hilfe wäre ich sehr dankbar!

Gruß
Frank


Antwort schreiben

Antwort 1 von finger59 vom 02.10.2021, 11:38 Options

Hi Frank,

ich selbst würde zwei Schritte vornehmen:

a) Beseitigung der Fehlermeldung #DIV/0!
Da solltest Du die Formel dahingehend abändern, daß wenn nur ein Wert zur Berechnung zur Verfügung steht, daß dann dort eine
Null als Ergebnis eingetragen wird.

b) Über eine Hilfsspalte würde ich mir mit
=zählenwenn(a1:e1;"-100,000%)
die Anzahl der vorkommenden -100%-Werte ermitteln
und dann nachher in der Summenformel entsprechend wieder
abziehen.

Voraussetzung hierzu wäre natürlich, daß Du generell dort nur %-Werte stehen hättest.

Leider hast Du dazu keine weiteren Angaben gemacht und Deine Tabelle sehen wir leider auch nicht.

Von daher nur mal so als Lösungsansatz.

In diesem Sinne.... have a nice Day.... Gruß Helmut

Antwort 2 von coros vom 02.10.2021, 11:42 Options

Hallo Frank,

was heißt bei Dir

Zitat:
alle ausgewählten Felder


Meinst Du Zellen, die Du vorher markiert hast? Wenn ja, nur über VBA machbar.

MfG,
Oliver
Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du
ein Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.

Antwort 3 von Franks vom 02.10.2021, 12:28 Options

Hallo,
ja ich würde die Zellen markieren (jede neunte Zelle in der Zeile).
In allen Zellen stehen %-Werte.

Gruß
Frank

Antwort 4 von coros vom 02.10.2021, 12:56 Options

Hallo Frank,

das würde eigentlich wie folgt gehen. Mit dem Makro werden die Werte der Zellen, die vorher markiert wurden, addiert.

Kopiere das Makro in ein StandardModul und starte es z.B. über eine Befehlsschaltfläche
Teste das Makro aber bitte in einer Testdatei und nicht gleich in Deiner Originaldatei.

Option Explicit

Sub Addition_mit_Bedingung()
Dim rngCell As Range
Dim dblSumme As Double

For Each rngCell In Selection
    On Error Resume Next
    If rngCell.Value <> -1 Then
        dblSumme = dblSumme + rngCell.Value
    End If
    On Error GoTo 0
Next
MsgBox dblSumme
End Sub
Solltest Du nicht wissen, wie Du den Code in Deine Datei bekommst, dann schau mal auf meiner HP in der Rubrik Anleitungen und dort dann in der Anleitungsnummer 3 nach. Dort stelle ich dazu eine bebilderte Anleitung zur Verfügung, die Dir sicherlich helfen wird.

Bei Fragen melde Dich.
MfG,
Oliver
Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du
ein Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.

Antwort 5 von Franks vom 02.10.2021, 13:56 Options

Hallo Oliver,
wie kann ich diesem Makro die Felder mit -100,000% und #DIV/0! aus der Addition ausschließen?

Gruß
Frank

Antwort 6 von coros vom 02.10.2021, 14:13 Options

Hallo Frank,

das ist in dem Makro bereits berücksichtigt. Einmal durch die Fehlerbehandlung "On Error Resume Next" und der Abfrage auf den Wert -1 (entspricht bei Zellformatierung Prozent = -100%).
Schließlich war das ja die Aufgabenstellung und lesen kann ich noch.

MfG,
Oliver
Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du
ein Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.

Antwort 7 von Franks vom 02.10.2021, 14:25 Options

Danke Oliver,
das Makro funktioniert. Nur kann ich mir die Summe auch in einem Feld anzeigen lassen? Mit dieser muss ich dann noch weiter arbeiten.

Gruß
Frank

Antwort 8 von Franks vom 02.10.2021, 14:29 Options

Hallo Oliver,
oder mal noch anders gefragt. Ist es möglich alle Felder in dem Datensatz, in welchen entweder -100,00% oder DIV/0! steht, eine Null einzufügen?
Allerdings sollen die Formeln, welche in jedem Feld stehen nicht gelöscht werden.

Gruß
Frank

Antwort 9 von coros vom 02.10.2021, 14:29 Options

Hallo Frank,

ersetzte

MsgBox dblSumme
durch z.B.

Range("A1") =  dblSumme
Die Zelladresse A1 musst Du anpassen.

MfG,
Oliver
Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du
ein Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.

Antwort 10 von coros vom 02.10.2021, 14:38 Options

Hallo Frank,

das geht schon, aber dann werden die Formeln, die z.B. die Fehlermeldung "#DIV/0!" anzeigen überschrieben und sind weg. Ist das so gewollt?

MfG,
Oliver
Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du
ein Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.

Antwort 11 von Franks vom 02.10.2021, 14:42 Options

In den Felder, in denen -100,000% und #DIV/0! steht, ist das nicht schlimm. Nur alle anderen Formeln in dem Datensatz sollen nicht gelöscht werden.

MfG
Frank

Antwort 12 von coros vom 02.10.2021, 14:44 OptionsLösung

Lösung
Hallo Frank,

nachfolgendes Makro sollte das machen. Ausgabe der Summe in Zelle A1. Das muss eventuell bei Dir geändert werden.
Aber Achtung, in den besagten Feldern wird die Formel gelöscht.

Kopiere das Makro in ein StandardModul und starte es z.B. über eine Befehlsschaltfläche
Teste das Makro aber bitte in einer Testdatei und nicht gleich in Deiner Originaldatei.

Option Explicit

Sub Addition_mit_Bedingung()
Dim rngCell As Range
Dim dblSumme As Double

For Each rngCell In Selection
    On Error Resume Next
    If rngCell.Value = -1 Then
        rngCell.Value = 0
    ElseIf rngCell.Text = "#DIV/0!" Then
        rngCell.Value = 0
    End If
    dblSumme = dblSumme + rngCell.Value
    On Error GoTo 0
Next
Range("A1") = dblSumme
End Sub

MfG,
Oliver
Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du
ein Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.

Antwort 13 von Franks vom 02.10.2021, 14:55 Options

Vielen Dank Oliver.
Wie müsste ich das Makro abändern falls ich ohne eine Summe zu bilden, nur die 2 Felderinhalte durch eine 0 ersetzen möchte.

MfG
Frank

Antwort 14 von coros vom 02.10.2021, 15:00 Options

Hallo Frank,

lösche die Zeile mit dem Range-Befehl raus.

MfG,
Oliver von Unterwgs per Nokia N97

Antwort 15 von Franks vom 02.10.2021, 15:33 Options

Hi Oliver,
vielen Dank für deine Hilfe! Funktioniert ausgezeichnet.

MfG
Frank

Antwort 16 von coros vom 02.10.2021, 16:02 Options

Hallo Frank,

gerne geschehen. Danke auch für die Rückmeldung.

MfG,
Oliver
Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du
ein Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.

Ähnliche Themen

Addition der Einträge einer best. Kalenderwoche in Excel
Quad69  14.08.2008 - 9 Hits - 11 Antworten

Excel Zeit Addition
Problema  05.11.2008 - 115 Hits - 2 Antworten

Excel, Addition farbiger Zahlen in einer Spalte
siffi44  12.11.2008 - 16 Hits - 4 Antworten

Zeiten Addition
spice.b  21.11.2008 - 22 Hits - 9 Antworten

Addition mit Prozentrechnung und Runden
Melina  08.09.2009 - 273 Hits - 5 Antworten

Hinweis

Diese Frage ist schon etwas älter, Sie können daher nicht mehr auf sie antworten. Sollte Ihre Frage noch nicht gelöst sein, stellen Sie einfach eine neue Frage im Forum..

Neue Einträge

Version: supportware 1.9.150 / 10.06.2022, Startzeit:Thu Jan 8 21:07:44 2026