Anzeige
Archiv - Navigation
704to708
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
704to708
704to708
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Zähle Anzahl der “+“ wenn vorher x,y,z mal “–“

Zähle Anzahl der “+“ wenn vorher x,y,z mal “–“
11.12.2005 01:32:17
Baro
Hallo Ihr freundlichen Helfer,
gesucht wird eine Formel für Excel die folgendes Problem löst:
Am Ende einer Auswertung steht in der Ergebnis-Spalte "E" Plus(+) und Minus(-) sowie Leerzellen

Zeile 21  +
Zeile 22  +
Zeile 23  -
Zeile 24  -
Zeile 25  +
Zeile 26  -
Zeile 27  +
Zeile 28
Zeile 29  -
Zeile 30  -
Zeile 31  -
Zeile 32  +
Zeile 33  +
Zeile 34  -
Zeile 35  -
Zeile 36  -
Zeile 37  +
Zeile 784 +
Ich möchte auslesen können:
A: Anzahl der + wenn vorher 0x – also z.B. + - + + + - - - + + + - = 5x plus
B: Anzahl der + wenn vorher 1x – also z.B. - + - - + - + - - - + + = 2x plus
C: Anzahl der + wenn vorher 2x – also z.B. - - + - + - - + - - - + = 2x plus
D: Anzahl der + wenn vorher 3x – also z.B. - - - + - - ++ - - - -+ = 1x plus
E:
F: Ende

Leerzellen bleiben unberücksichtigt!
Muss ich mit Hilfsspalten arbeiten? Oder kann ich dafür eine Formel finden?
Oder für jedes Ereignis eine Formel?
Für Eure Gedanken und Bemühungen
vielen Dank im Voraus
Baro

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zähle Anzahl der “+“ wenn vorher x,y,z mal “–“
11.12.2005 01:55:27
Matthias
Hallo Baro,
hier mit VBA, zumindest deine Beispiele liefern bei mir das richtige Ergebnis:

Sub Test()
Const AnzMinus = 3
Dim plus As Integer
Dim minus As Integer
Dim x As String
Dim i  As Long, lz As Long
lz = Cells(Rows.Count, 5).End(xlUp).Row
For i = 21 To lz
x = Cells(i, 5)
If x = "-" Then
minus = minus + 1
ElseIf x = "+" Then
If minus = AnzMinus Then plus = plus + 1
minus = 0
End If
Next i
Debug.Print plus & "x 'Plus' wenn vorher " & AnzMinus & "x 'Minus'"
End Sub

Gruß Matthias
AW: Zähle Anzahl der “+“ wenn vorher x,y,z mal “–“
11.12.2005 03:54:09
Baro
Hallo Matthias,
vielen Dank für die sicher sehr professionelle Lösung.
Leider habe ich noch nie mit VBA gearbeitet und weiß somit nicht, wie ich deine Formel
anwenden bzw. einbinden kann. Eben versucht.
Eine dementsprechende Anweisung würde wohl den Rahmen hier sprengen.
Vielleicht findet sich auch noch eine, für mich, einfachere Lösung.
Stelle die Frage noch mal offen.
einen schönen Sonntag
wünscht Baro
Anzeige
AW: Zähle Anzahl der “+“ wenn vorher x,y,z mal “–“
11.12.2005 07:28:44
Matthias
Hallo Baro,
sooo schwer sit das nicht.
in Excel Alt F11, dann bist du im VB-Editor
hier Menü Einfügen, Modul
Folgenden Code ins rechts erschienene Codefenster kopieren:

Function APlus(AnzMinus As Integer, Bereich As Range) As Long
Dim plus As Integer
Dim minus As Integer
Dim x As String
Dim z As Range
For Each z In Bereich
x = z.Value
If x = "-" Then
minus = minus + 1
ElseIf x = "+" Then
If minus = AnzMinus Then plus = plus + 1
minus = 0
End If
Next z
APlus = plus
End Function

Jetzt VB-Editor wieder schießen.
Nun kannst du die benutzerdefinierte Funktion einfach in einer Zelle verwenden:
=APlus(1;E21:E100)
Gruß Matthias
Anzeige
MEGA DANK – @Matthias = Extraklasse
11.12.2005 12:31:23
Baro
Hallo Matthias,
ein wirklich großes und fettes Dankeschön für deine nochmalige Erklärung!
Das funktioniert Klasse!
VBA - "goil"!
Wenn man weiß wie, ist es gar nicht so schwer.
Für mich als Excel-Laie, der 2x im Jahr eine feine Anwendung erstellt,
ist dieses Forum mit Recherche-Archiv eine absolut wertvolle Unterstützung.
dankende Grüße zum Advent
Baro
AW: @Baro
11.12.2005 12:59:47
Matthias
Hallo Baro,
vielen Dank für die Rückmeldung.
Gruß Matthias

329 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige