Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1696to1700
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
Inhaltsverzeichnis

ersten Buchstaben Zählen

ersten Buchstaben Zählen
08.06.2019 06:04:26
Lisa
Hallo,
ich möchte gerne Zählen wie oft ein Buchstabe an erster Stelle vorkommt.
Private Sub CommandButton1_Click()
Dim i As Long
Dim Pos As Long
Dim Zeichen As String
Dim Zelle As Range
Dim a As String
Zeichen = UCase(Left(txt_Buch, 1))
i = 0
For Each Zelle In Worksheets(1).Range("B2:B38")
Pos = InStr(1, UCase(Zelle.Value), UCase(Zeichen))
While Pos  0
Pos = InStr(Pos + Len(Zeichen), Zelle.Value, Zeichen)
i = i + 1
Wend
Next Zelle
a = MsgBox("Die Zeichenfolge " & Zeichen & " wurde " _
& i & " Mal gefunden.", vbOKOnly, "Suchergebnis")
End Sub
Leider bringt das Ergebnis 11 anstatt 2
Danke!
Gruß, Lisa
https://www.herber.de/bbs/user/130290.xlsm

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Warum VBA?
08.06.2019 07:16:42
RPP63
Moin!
Für so etwas nehme ich eine simple SUMMENPRODUKT-Formel:
 BCDEF
1Land_langIBANIBAN Muster  
2Deutschland22DE02100500000024290661  
3Belgien16BE45096920886089F3
4Bulgarien22BG02RZBB91551002755190  
5Dänemark18DK0220005036459478  
6Estland20EE021700017000459042  
7Färöer Inseln18FO1291810001441878  

ZelleFormel
F3=SUMMENPRODUKT(--(LINKS(B2:B38)=E3))

Gruß Ralf
Anzeige
AW: Warum nicht ?
08.06.2019 08:52:27
GerdL
Der Button-Start per Formel ist mir zu langsam. :-)
Private Sub CommandButton1_Click()
Dim Anzahl As Long, Zeichen As String
Zeichen = UCase$(Left(txt_Buch, 1))
Anzahl = WorksheetFunction.CountIf(Worksheets(1).Range("B2:B38"), Zeichen & "*")
MsgBox "Die Zeichenfolge " & Zeichen & " wurde " _
& Anzahl & " mal gefunden.", vbOKOnly, "Suchergebnis"
End Sub

Gruß Gerd
AW: ersten Buchstaben Zählen
08.06.2019 09:50:49
Matthias
Hi Lisa
ich möchte gerne Zählen wie oft ein Buchstabe an erster Stelle vorkommt.
Zeichen = UCase(Left(txt_Buch, 1))
i = 0
For Each Zelle In Range("B2:B38")
If Left(Zelle, 1) = Left(Zeichen, 1) Then i = i + 1
Next
Gruß Matthias
Anzeige
AW: ersten Buchstaben Zählen
08.06.2019 10:55:57
Daniel
Hi
mit deiner While Schleife zählst du aber, wie oft der Buchstabe in einer Zelle vorkommt, und addierst das dann über alle Zellen zusammen.
Über die ganzen UCases bewirkst du auch, dass kein Unterschied zwischen Groß- und Kleinschreibung gemacht wird.
in dem Bespiel kannst du aber das Ergebnis aber auch ganz einfach ohne Schleife mit ZählenWenn ermittel.
Wenn du wissen willst, viele Länder mit "D" anfangen, wäre das ZählenWenn unter ausnutzung des Jokerzeichen "*" für eine beliebige Zeichenfolge:
=ZählenWenn(B2:B38;"D*")

Für deinen Code dann so:
Private Sub CommandButton1_Click()
Dim Zeichen as String
dim i as long
Zeichen = Left(txt_Buch, 1)
i = Worksheetfunction.CountIf(Range("B2:B38"), Zeichen & "*")
MsgBox "Die Zeichenfolge " & Zeichen & " wurde " _
& i & " Mal gefunden.", vbOKOnly, "Suchergebnis"
End Sub
Gruß Daniel
Anzeige
AW: ersten Buchstaben Zählen
08.06.2019 18:17:14
Lisa
Hallo,
möchte mich bei Euch für eure Unterstützung bedanken.
Funktioniert so wie ich das wollte.
Gruß, Lisa

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige