3.2k Aufrufe
Gefragt in Tabellenkalkulation von
Hallo,

ich habe in einer Excel-Tabelle in etwa folgende Auflistung:



A B C D
1 a) Punkt 1 JA
2 b) Punkt 2 NEIN
3 c) Punkt 3 NEIN
4 d) Punkt 4 JA
5 e) Punkt 5 NEIN


Die Daten in den Spalten A und B bleiben konstant. In Spalte D wird durch eine Formel angegeben, ob die Punkte zutreffen. Spalte C ist leer.
Jetzt möchte ich, dass er mir unter der Tabelle in Zelle A7 folgenden Satz angibt:

"Die Probe entspricht nicht den Spezifikationen hinsichtlich der Punkte b), c) und e)."

Natürlich soll dieser Satz variieren, je nachdem welche Punkte in Spalte D ein NEIN haben.

Ich könnte wohl sehr viele wenn()-Verschachtelungen machen. Da es aber sehr viele Kombinationen gibt, wäre das sehr mühselig. Ich weiß im Moment nicht weiter.
Daher bitte ich euch um Hilfe!

Vielen Dank im Voraus
LG Chris

17 Antworten

0 Punkte
Beantwortet von flupo Profi (17.9k Punkte)
Ich würde wahrscheinlich in einem ausgeblendeten Bereich
zusätzliche Zellen nutzen
Schema:
=WENN(C1="Ja";"";"a)")
=WENN(C2="Ja";"";"b)")...

und dann die Ausgabezelle aus den einzelnen Teilstrings
zusammensetzen.

Gruß Frank
0 Punkte
Beantwortet von nighty Experte (6.6k Punkte)
hi all ^^

ein Beispiel

gruss nighty

Sub Meldung()
For Each zelle In Range("A2:D2")
If zelle = "nein" Then
If Cells(3, 1) = "" Then Cells(3, 1) = "Die Probe entspricht nicht den Spezifikationen hinsichtlich der Punkte"
Cells(3, 1) = Cells(3, 1) + "," & Chr(zelle.Column + 64)
End If
Next
End Sub
0 Punkte
Beantwortet von nighty Experte (6.6k Punkte)
hi all ^^

ops ...

groß Kleinschreibung vergessen :-)

gruss nighty

Sub Meldung()
For Each zelle In Range("A2:D2")
If UCase(zelle) = UCase("nein") Then
If Cells(3, 1) = "" Then Cells(3, 1) = "Die Probe entspricht nicht den Spezifikationen hinsichtlich der Punkte"
Cells(3, 1) = Cells(3, 1) + "," & Chr(zelle.Column + 64)
End If
Next
End Sub
0 Punkte
Beantwortet von
0 Punkte
Beantwortet von
Hallo nochmals,

die Formel in H7 muß lauten:

=WENN(ISTNV(INDEX(H2:H6;VERGLEICH("a)";H2:H6;0)));"";INDEX(H2:H6;VERGLEICH("a)";H2:H6;0)))

statt

=WENN(ISTNV(INDEX(H2:H6;VERGLEICH("c)";H2:H6;0)));"";INDEX(H2:H6;VERGLEICH("c)";H2:H6;0)))

Gruß

Paul1
0 Punkte
Beantwortet von
Hi,

vielen Dank erst einmal. Ich probiere eure Lösungen erstmal aus. Sieht jedenfalls schon sehr vielversprechend aus.
Danke!

LG Chris
0 Punkte
Beantwortet von
Hallo nochmal,

also Paul1 deine Lösung funktioniert schon mal prima. Ich weiß zwar nicht genau wie und warum aber vielen Dank dafür.
Wäre es wohl noch möglich, dass zwischen den Punkten Kommata stehen? Also z.B. so: a), b), e)
Ich habe es bereits versucht, aber dann werden auch Kommata angezeigt, wenn der Punkt auf nein steht, also z.B. so: a), b),,,e)
Erst mal geht es auch ohne Komma, aber schöner wäre natürlich mit.

@nighty:
hi, vielen Dank auch für deine Lösung. Ich kenne mich aber leider nicht so gut mit Makros aus. Ich habe deine Lösung in ein Modul reinkopiert, aber leider hat es nicht geklappt. Was muss ich alles tun, damit das Makro funktioniert?

LG Chris
0 Punkte
Beantwortet von
Hallo Chris,

bezüglich Komma würde auch reichen:

E2: =WENN((D2="NEIN")*(B2="a)");B2&",";"")
E3: =WENN((D3="NEIN")*(B3="b)");B3&",";"")
E4: =WENN((D4="NEIN")*(B4="c)");B4&",";"")
E5: =WENN((D5="NEIN")*(B5="d)");B5&",";"")
E6: =WENN((D6="NEIN")*(B6="e)");B6;"")

A1: ="Die Probe entspricht nicht den Spezifikationen hinsichtlich der Punkte "&E2&""&E3&""&E4&""&E5&""&E6

Gruß

Paul1
0 Punkte
Beantwortet von
Hallo nochmals,

die Formel gehört natürlich in A7:

Gruß

Paul1
0 Punkte
Beantwortet von nighty Experte (6.6k Punkte)
hi all ^^

sind die Formeln besser zu haendeln fuer dich,dann ist
paul seine loesung die erste Wahl

gruss nighty
...