Zellen suchen, die nicht berechnet wurden

Hallo liebe Excel-Experten,

ich suche einen Tipp (Excel 2000).

Ich habe aus einer Liste mittels Summenprodukt aus aus einer anderen Liste mit einigen dieser Wert Summen gebildet. Gibt es eine Möglichkeit, herauszufinden, welche Werte NICHT durch die Summenprodukt-Berechnung ausgewählt wurden. Also praktisch wie eine Vorgänger-Suche, die aber die Vorgänger von 50 Summenprodukt-Berechnungen ausgeben soll.

… hab ich das jetzt kompliziert geschrieben???

Vielen Dank schon mal für eure Hilfe!!!

Karin

Hi Karin,

Ich habe aus einer Liste mittels Summenprodukt aus aus einer
anderen Liste mit einigen dieser Wert Summen gebildet. Gibt es
eine Möglichkeit, herauszufinden, welche Werte NICHT durch die
Summenprodukt-Berechnung ausgewählt wurden. Also praktisch wie
eine Vorgänger-Suche, die aber die Vorgänger von 50
Summenprodukt-Berechnungen ausgeben soll.

jetzt haste mich zweimal auf dem falschen Fuß erwischt,
Summenprodukt habe ich zwar schon mehrfach benutzt, aber ich muß zugeben noch nie so richtig begriffen.
Mit Richtig meine ich, daß ich nicht in der Lage wäre Summenprodukt einem anderen zu erklären.

Und mit Vorgänger-Suche meinst du wohl Extras–Fehlerüberwachung, tja nun, noch nie benutzt.

Aber alles kein Problem, lade mal eine kleine Beispieldatei bei http://hostarea oder sonstwo hoch und poste hier den Link.

Ich mutmaße stark, es wird auf eine Vba-Lösung hinauslaufen, die deine Summenprodukt-Formel zerlegt und prüft welche Zellen nicht den Bedingungen in der Formel entsprechen.

Gruß
Reinhard

… hab ich das jetzt kompliziert geschrieben???

Vielen Dank schon mal für eure Hilfe!!!

Karin

Hallo Reinhard,

herzlichen Dank schon mal für deine Antwort. Ich habe eine kleine Testdatei hochgeladen:

http://www.hostarea.de/server-01/Januar-4ffa2fad41.xls

Aber du brauchst dich nicht „stundenlang“ damit abmühen, ich kann die Listen auch manuell abarbeiten - dachte nur, es müsste doch auch einfacher gehen :wink: (Und ich bin immer lernbegierig, was Excel betrifft).

Liebe Grüße und vielen Dank schon mal

Karin

http://www.hostarea.de/server-01/Januar-4ffa2fad41.xls

Aber du brauchst dich nicht „stundenlang“ damit abmühen, ich
kann die Listen auch manuell abarbeiten - dachte nur, es
müsste doch auch einfacher gehen :wink: (Und ich bin immer
lernbegierig, was Excel betrifft).

Hi Karin,
manuell bedeutet, du schaust bei jeder Zelle in $A$7:blush:A$18 nach ob $A$7:blush:A$18>=C1 und/oder $A$7:blush:A$18=C1)*($A$7:blush:A$18

Hallo Reinhard,

ja, manuell heißt, ich sehe nach, welche Konten nicht in den Kontenbereichen erfaßt sind :wink:

Und mit „einfacher“ meinte ich, dass jede Formel für mich einfacher zu verstehen ist wie VBA …

Es wäre toll, wenn entweder die Konten farbig markiert wären ein „X“ oder ähnlich in der freien Spalte (D) daneben. - Oder die Luxusvariante wäre, wenn in Spalte D ein „0“ für nicht Bezug genommen, „1“ für einmal, „2“ für zweimal etc. Das wäre dann das Super-Ergebnis.

Ganz liebe Grüße - und den Kaffee hast du dir eh schon verdient!

Karin

Moin, Karin,

wäre Dir denn mit Extras > Optionen > Ansicht > Formeln geholfen?

Gruß Ralf

Hallo Ralf,

danke für deinen Tipp - aber ich will nicht alle Formeln sehen, sondern Zellen, die mit einer Formel nicht angesprochen wurden.

Liebe Grüße

Karin

P.S.: Dein Tipp geht mit „Strg“+"#" auch an und aus

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Grüezi Karin

ja, manuell heißt, ich sehe nach, welche Konten nicht in den
Kontenbereichen erfaßt sind :wink:

Es wäre toll, wenn entweder die Konten farbig markiert wären
ein „X“ oder ähnlich in der freien Spalte (D) daneben. - Oder
die Luxusvariante wäre, wenn in Spalte D ein „0“ für nicht
Bezug genommen, „1“ für einmal, „2“ für zweimal etc. Das wäre
dann das Super-Ergebnis.

Wie wäre es nochmals mit SUMMENPRODUKT()?

Die folgende Formel in D8 und dann nach unten gezogen müsste IMO hinkommen:

=$C$1:blush:C$5)\*(A7



....Kaffee mag ich auch... :wink:

-- 
Mit freundlichen Grüssen

Thomas Ramel
- MVP für MS-Excel -

Hallo Thomas,

ja danke - so funktioniert es! Und es zeigt sogar die Anzahl an - also wenn eine Zahl 2x herangezogen wird, erscheint das auch! Super und vielen Dank!!!

… im Nachhinein versteht Frau nicht, warum sie nicht selbst darauf gekommen ist - habe immer in Richtung „Vorgänger“ überlegt.

Kaffee rüber reiche (Milch und Zucker?) - und an Reinhard natürlich auch!!!

Karin

Grüezi Karin

ja danke - so funktioniert es! Und es zeigt sogar die Anzahl
an - also wenn eine Zahl 2x herangezogen wird, erscheint das
auch!

Ja, so war es angedacht :smile:

Super und vielen Dank!!!

Aber gerne doch.

… im Nachhinein versteht Frau nicht, warum sie nicht selbst
darauf gekommen ist - habe immer in Richtung „Vorgänger“
überlegt.

Das ist auch ein gengbarer Ansatz, aber automatisiert nur per VBA zu realisieren.

Kaffee rüber reiche (Milch und Zucker?) - und an Reinhard
natürlich auch!!!

Für mich nur mit Milch, bitte
(Zucker nehm ich nur, wenn das Gebräu sonst nicht schmeckt)


Mit freundlichen Grüssen

Thomas Ramel

  • MVP für MS-Excel -

Tipp: Summenprodukt Vorgänger Zellen färben

Ich habe aus einer Liste mittels Summenprodukt aus aus einer
anderen Liste mit einigen dieser Wert Summen gebildet. Gibt es
eine Möglichkeit, herauszufinden, welche Werte NICHT durch die
Summenprodukt-Berechnung ausgewählt wurden. Also praktisch wie
eine Vorgänger-Suche, die aber die Vorgänger von 50
Summenprodukt-Berechnungen ausgeben soll.

Hallo Karin,

nachstehender Code ist in dieser Datei eingebaut.

http://www.hostarea.de/server-01/Januar-4e8c125ad1.xls

Der Code überprüft automatisch ob die Zelle die du gerade mit der Maus oder Tastatur markiert hast, eine Summenprodukt-Formel hat.
Ist dies der Fall werden alle Zellen die in die Summenprodukt verwurstet worden farblich markiert.
Diejenigen Zellen, die nicht mit in die Wurst kamen, werden andersfarbig markiert.
Genau wie bei Detektiv—Vorgänger werden auch Linien gezogen.
Wenn die Zellen auf anderen Blättern sind, wird nur die Zellfarbe geändert, keine Linien gezogen.

Gruß
Reinhard

In ein normales Modul:

Option Explicit
'
Sub SP()
Dim F, N, Anz, Pos, Term(), NN, Zelle, Richtig, A, B, Farbe
F = ActiveCell.FormulaLocal
ActiveCell.Interior.ColorIndex = 35
Pos = InStr(F, "(")
While InStr(Pos + 1, F, "(")
 Pos = InStr(Pos + 1, F, "(")
 ReDim Preserve Term(2, Anz)
 Term(0, Anz) = VBA.Mid(F, Pos + 1, InStr(Pos, F, ")") - Pos - 1)
 Anz = Anz + 1
Wend
For N = 0 To UBound(Term)
 Pos = InStr(Term(0, N), "=")
 If Pos \> 0 Then
 Term(2, N) = VBA.Mid(Term(0, N), Pos + 1)
 Term(0, N) = VBA.Left(Term(0, N), Pos)
 For NN = Pos To 1 Step -1
 If InStr("0123456789", VBA.Right(Term(0, N), 1)) \> 0 Then Exit For
 Term(1, N) = VBA.Right(Term(0, N), 1) & Term(1, N)
 Term(0, N) = VBA.Left(Term(0, N), NN - 1)
 Next NN
 End If
Next N
For N = 1 To Range(Term(0, 0)).Cells.Count
 Richtig = True
 For NN = 0 To UBound(Term, 2)
 If Term(1, NN) "" Then
 A = Range(Term(0, NN)).Cells(N, 1)
 B = Range(Term(2, NN))
 If A = "" Then A = "0"
 If B = "" Then B = "0"
 Richtig = Evaluate(A & Term(1, NN) & B)
 If Richtig = False Then Exit For
 End If
 Next NN
 For NN = 0 To UBound(Term, 2)
 Farbe = 35
 If Richtig = False Then
 Farbe = 34
 Else
 If Range(Term(0, NN)).Parent.Name = ActiveSheet.Name Then
 ActiveSheet.Shapes.AddLine(ActiveCell.Left + ActiveCell.Width / 2, ActiveCell.Top + ActiveCell.Height / 2, Range(Term(0, NN)).Cells(N, 1).Left + Range(Term(0, NN)).Cells(N, 1).Width / 2, Range(Term(0, NN)).Cells(N, 1).Top + Range(Term(0, NN)).Cells(N, 1).Height / 2).Select
 Application.EnableEvents = False
 ActiveCell.Select
 Application.EnableEvents = True
 End If
 End If
 Range(Term(0, NN)).Cells(N, 1).Interior.ColorIndex = Farbe
 If Term(1, NN) "" Then Range(Term(2, NN)).Interior.ColorIndex = 36
 Next NN
Next N
End Sub
'
Sub tt()
Application.EnableEvents = True
End Sub

In das Dokumentmodul des betreffenden Arbeitsblattes:

Option Explicit
'
Private Sub Worksheet\_SelectionChange(ByVal Target As Excel.Range)
Dim N
ActiveSheet.UsedRange.Interior.ColorIndex = xlNone
For Each N In ActiveSheet.Shapes
 If N.Name Like "Line\*" Then N.Delete
Next N
If Target.Cells.Count 1 Then Exit Sub
If Target.HasFormula Then
 If InStr(VBA.UCase(Target.FormulaLocal), VBA.UCase("Summenprodukt")) \> 0 Then Call SP
End If
End Sub

Hallo Reinhard,

vielen Dank für deine Mühe - VBA ist für mich einfach (noch?) ein Buch mit sieben Siegeln …

Einen schönen Sonntag … und auch dir einen Kaffee rüber reiche!!!

Karin

Hallo Karin,

vielen Dank für deine Mühe - VBA ist für mich einfach (noch?)
ein Buch mit sieben Siegeln …

du mußt doch die Tabelle nur bedienen. Das Makro läuft doch vollkommen vollautomatisch wie du in der Beispieldatei testen kannst.

Es hat die verbesserte Funktionalität wie wenn du Daten–Detektiv–Spur zum Vorgänger auswählst.
Das kannst du dir jetzt sparen, einfach in eine beliebige Zelle gehen, hat diese kein Summenprodukt als Formel, passiert nichts, wenn ja, dann werden die im Summenprodukt eingerechneten Zellen farblich markiert, die nicht eingerechneten Zellen andersfarbig.

Ups, ich glaub das hatte ich schon geschrieben *gg*

Wenn du diese Funktionalität in einer anderen Datei haben willst, so starte diese Datei, Alt+F11, dann links einen Doppelklick auf den gewünschten Blattnamen, dorthinein dann:

Option Explicit’
Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)

End Sub

dann Einfügen–Modul
dorthinein dann

Option Explicit

Sub SP()

End Sub

Einen schönen Sonntag … und auch dir einen Kaffee rüber
reiche!!!

Dankeschön, nehme ich gerne :smile:

Gruß
Reinhard

Hallo Reinhard,

ich kann die Datei schon bedienen - danke :wink: Ich werde es wohl nur nie (und schon gar nicht so gut wie du) verstehen, wie VBA prorammiert wird.

Liebe Grüße

Karin

ich kann die Datei schon bedienen - danke :wink: Ich werde es
wohl nur nie (und schon gar nicht so gut wie du) verstehen,
wie VBA prorammiert wird.

Hallo Karin,
ich habe Vba durch Forenmitlesen, ausprobieren, irgednwann mal zaghaft erste leichte Fragen beantworten, dann mehr und mehr gelernt.
Das könntest du auch…
Ist nur Sache von Zeit aufbringen, Motivation, Lust, Interesse…
Und, ich lese auch andere Foren, da lese ich auch Leute, wo ich denke, so gut wie die werde ich nie, ist normal, Bessere findet man immer und überall :smile:
Also mache dich nicht so schlecht, das machen deine Freundinnen schon *kicher*
Warum ich grad lache, naja, Witz, 3 Männer landen auf einer einsamen Insel, was machen sie, unterhalten sich über Frauen,Fussball, Politik.
Jetzt stranden 3 Frauen auf einer einsamen Insel, was machen denn die?
Ganz einfach, ist eine grad mal weg lästern die beiden anderen über sie *lol*
LG
Reinhard