Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Wenn

Forumthread: Wenn

Wenn
05.06.2003 08:15:47
Ilona
Hallöchen, hab 'ne Frage zu Wenn - Funktionen:
Wie kann ich diese Formel in VBA schreiben, da ich mehr als diese 7 Abfragen habe, insgesamt sind es 28, das Ergebnis sollim 2 Tabellenblatt dann in Zelle B17 ausgegeben werden
=WENN(GLÄTTEN(Source!$A7)="Artikelnr./Leistungsbez.";ZÄHLENWENN(Source!$A9:A65536;"A:*");WENN(GLÄTTEN(Source!$A7)="Artikelbez./Leistungsbez.";ZÄHLENWENN(Source!$A9:A65536;"A:*");WENN(GLÄTTEN(Source!$A7)="eig. Bestellnr./Leistungsbez.";ZÄHLENWENN(Source!$A9:A65536;"A:*");WENN(GLÄTTEN(Source!$A7)="Lieferantenbestellnr./Leistungsbez.";ZÄHLENWENN(Source!$A9:A65536;"A:*");WENN(GLÄTTEN(Source!$A7)="Artikelgruppe/Leistungsbez.";ZÄHLENWENN(Source!$A9:A65536;"A:*");WENN(GLÄTTEN(Source!$A7)="def.eig.Bestellnr./Leistungsbez.";ZÄHLENWENN(Source!$A9:A65536;"A:*");WENN(GLÄTTEN(Source!$C7)="def.Lieferantenbestnr./Leistungsbez.";ZÄHLENWENN(Source!$A9:A65536;"A:*");0)))))))

Danke für eure Hilfe!

Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Re: Wenn
05.06.2003 08:37:11
Herbert

Bild geantwortet: statt vieler WENN liber SVERWEIS mit Untertabelle benutzen

Re: Wenn
05.06.2003 08:48:56
Lutz

Hallo Ilona,

wenn ich Deine Formel richtig verstehe, zählst Du immer im gleichen Bereich (A9:A65536), wenn in A7 bzw C7 einer der genannten Texte steht ?
In diesem Fall kannst Du auch mit "ODER" arbeiten (bis zu 30 ODER).
Also in etwa so:
=WENN(ODER(GLÄTTEN(Source!$A7)="Artikelnr./Leistungsbez.";GLÄTTEN(Source!$A7)="Artikelbez./Leistungsbez.";GLÄTTEN(Source!$A7)="eig. Bestellnr./Leistungsbez.";....;ZÄHLENWENN(Source!$A9:A65536;"A:*");0)

Gruß
Lutz

Anzeige
Re: Wenn
05.06.2003 09:37:16
Ilona

Danke Lutz, werde es gleich ausprobieren.

Re: Wenn
05.06.2003 10:18:48
Koenig W.

Hallo Illona,
habe Dich gestern wohl falsch verstanden.
Hier noch ein Lösungsvorschlag für ein allgemeines Modul
Kannst es dann als Makro aufrufen.

Sub Kontrolle()
Dim i As Long 'Zähler
Dim bereich As Range 'Suchbereich
Dim zelle As Range 'Zelle im Suchbereich
Dim bed1 As String 'Version1 von Deiner Zelle A7
Dim bed2 As String 'Version2 von Deiner Zelle A7
'dim bed3 as string etc. bis zu Deinen 29 Bedingungen
Set bereich = Sheets(1).Range("A2:A65536")
bed1 = "Artikelnr./Leistungsbez." 'Festlegen der Variablen
bed2 = "Artikelbez./Leistungsbez."
'bed3="....." etc
i = 0 'auf Null setzen des Zählers

'überprüfen des Inhalts von A7 auf deinen Textanteil
'anschliessend zählen des Vorkommens von A:*
If InStr(1, Range("A1").Value, bed1, vbTextCompare) <> 0 Then
For Each zelle In bereich
Select Case InStr(1, zelle.Value, "A:", vbTextCompare)
Case Is > 0
i = i + 1
Case Else
End Select
Next
Else
End If

If InStr(1, Range("A1").Value, bed2, vbTextCompare) <> 0 Then
For Each zelle In bereich
Select Case InStr(1, zelle.Value, "A:", vbTextCompare)
Case Is > 0
i = i + 1
Case Else
End Select
Next
Else
End If
'nächster If Block mit nächster bed.....


Sheets(2).Range("B17").Value = i
End Sub

so sollte es gehen, Du musst natürlich an Deine Umgebung anpassen.
Gruss


Anzeige
;

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige