Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1256to1260
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

Großbuchstaben in einer Zelle zählen

Großbuchstaben in einer Zelle zählen
Frank
Hallo Excel-Freunde,
in einer Excelliste habe ich eine Auswertung eines Mathewettbewerbs (Känguru-Wettbewerb). Dort stehen in einer Spalte die Antwortbuchstaben (ohne Leerzeichen), wobei ein Großbuchstabe eine richtige Antwort bedeutet, ein Kleinbuchstabe eine falsche Antwort, ein "-" (ohne die Anführungszeichen) bedeutet, dass gar keine Antwort gemacht wurde.
Ein Beispiel:
In einer Zelle steht
BC---CBDCCABa----D------
Also hat der Schüler die ersten beiden Fragen richtig beantwortet (weil dort Großbuchstaben stehen), dann hat er drei Antworten ausgelassen (drei "-" hintereinander), dann wieder sieben richtige Antworten (Großbuchstaben), dann eine falsche (Kleinbuchstabe) usw.
Nun möchte ich für die Auswertung zweierlei Sachen auswerten:
- Zum einen interessiert mich, wie viele Antworten richtig waren.
Ich benötige also die Anzahl an Großbuchstaben in einer Zelle.
(Im obigen Beispiel wäre das also 10.)
- Zum anderen interessiert mich die längste Kette von richtigen Antworten hintereinander.
Ich benötige also die längste Kette von Großbuchstaben in einer Zelle hintereinander.
(Im obigen Beispiel wäre das also 7.)
Hat jemand von Euch eine Idee, wie man da rangehen könnte?
Eine Lösung mit Formeln wäre fantastisch!
Da ich mich mit VBA leider fast gar keine Erfahrung habe, würde ich eine solche Lösung natürlich auch versuchen nachzuvollziehen, auch wenn ich Formeln bevorzuge. Bevor ich aber gar keine Auswertung hinbekomme, setze ich mich natürlich auch nochmal mit VBA auseinander.
Im Voraus schon einmal vielen Dank für alle Bemühungen!
Viele Grüße
Frank
AW: Großbuchstaben in einer Zelle zählen
26.03.2012 21:39:33
ransi
HAllo
Ich würde es tatsächlich mit VBA lösen.
Reguläre Ausdrücke bieten sich da gradezu an.
Ist für einen Anfänger (ohne Wertung) allerdings schwere Kost.
Tabelle1

 ABC
1BC---CBDCCABa----D------
107

Formeln der Tabelle
ZelleFormel
B1=countGOSSBUCHSTABEN(A1)
C1=countGOSSBUCHSTABENinFolge(A1)


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4
' **********************************************************************
' Modul: Modul1 Typ: Allgemeines Modul
' **********************************************************************

Option Explicit


Public Function countGOSSBUCHSTABEN(zelle)
    Dim regex
    Dim objMatch As Object
    Set regex = CreateObject("vbScript.regexp")
    With regex
        .Pattern = "[A-ZÄÖÜ]"
        .Global = True
        .ignorecase = False
        Set objMatch = .Execute(zelle.Text)
        countGOSSBUCHSTABEN = objMatch.Count
    End With
End Function




Public Function countGOSSBUCHSTABENinFolge(zelle)
    Dim regex, Ding, tmp
    Dim objMatch As Object
    Set regex = CreateObject("vbScript.regexp")
    With regex
        .Pattern = "[A-ZÄÖÜ]+"
        .Global = True
        .ignorecase = False
        Set objMatch = .Execute(zelle.Text)
        For Each Ding In objMatch
            If Ding.Length > Len(tmp) Then tmp = Ding
        Next
    End With
    countGOSSBUCHSTABENinFolge = Len(tmp)
End Function


ransi
Anzeige
AW: Großbuchstaben in einer Zelle zählen
27.03.2012 16:47:41
Frank
Hallo ransi,
mit Deinem VBA-Code habe ich es probiert.
Dazu habe ich den Code im Visual-Basic-Editor einfach reinkopiert und nix verändert, lediglich ein R beim Namen der Funktion hinzugefügt.
Dann habe ich in der entsprechenden Zelle die Funktion aufgerufen (=countGROSSBUCHSTABEN(E2)). Allerdings passiert nichts, in der Zelle steht nun #NAME?.
Was habe ich falsch gemacht?
Viele Grüße
Frank
AW: Großbuchstaben in einer Zelle zählen
27.03.2012 16:51:40
Hajo_Zi
Hallo Frank,
wenn Du den Namen der Funktion im VBA Editor änderst, mußt Du das auch in der Zelle.

Anzeige
AW: Großbuchstaben in einer Zelle zählen
27.03.2012 17:45:01
Frank
Hallo Hajo,
das habe ich gemacht - zur Sicherheit habe ich den Text aus dem VB-Editor herauskopiert. Dennoch kommt die Fehlermeldung.
Kann es an den Makroeinstellungen liegen? Was muss ich dort anklicken?
Viele Grüße
Frank
AW: Großbuchstaben in einer Zelle zählen
27.03.2012 17:48:26
Hajo_Zi
Hallo Frank,
die Sicherheit sollte max. auf Mittel stehen.
Nur wenge sehen Deine datei und können schreiben warum das nicht geht.
Gruß Hajo
AW: Großbuchstaben in einer Zelle zählen
27.03.2012 18:21:08
Frank
Hallo Hajo,
nun habe ich die Datei einfach einmal hochgeladen. Vielleicht ist es so einfacher zu verstehen.
https://www.herber.de/bbs/user/79575.xls
Dabei ist mir auch aufgefallen, dass die Formellösung von ransi leider noch nicht so ganz hinhaut, auch wenn ich schwer begeistert bin, die Funktionsweise leider aber noch nicht ganz verstanden habe.
Viele Grüße
Frank
Anzeige
AW: Großbuchstaben in einer Zelle zählen
27.03.2012 18:23:47
Hajo_Zi
Hallo Frank,
vielleicht solltest Du schreiben in welcher Zelle Du die Funktion benutzt. Ich mach mir nicht die Mühe und suche die Zelle.
Gruß Hajo
AW: Großbuchstaben in einer Zelle zählen
27.03.2012 18:23:51
Hajo_Zi
Hallo Frank,
vielleicht solltest Du schreiben in welcher Zelle Du die Funktion benutzt. Ich mach mir nicht die Mühe und suche die Zelle.
Gruß Hajo
AW: Großbuchstaben in einer Zelle zählen
27.03.2012 18:47:29
Frank
Oh, entschuldige, es handelt sich um die Zellen G2 und H2.
AW: Großbuchstaben in einer Zelle zählen
27.03.2012 19:13:11
Hajo_Zi
Hallo Frank,
der Code gehört in ein Modul.
Gruß Hajo
Anzeige
Der Code gehört in ein Modul.
27.03.2012 19:16:34
ransi
HAllo Frank
Der Code gehört in ein Modul.
Erst dann kennt dein Excel die neuen Funktionen.
Schau es dir mal an:
Userbild
Hier deine überarbeitete Datei.
https://www.herber.de/bbs/user/79576.xls
ransi
AW: Der Code gehört in ein Modul.
28.03.2012 22:18:14
Frank
Hallo ransi,
wow, vielen Dank für die Hilfe, damit hat es super geklappt!
Auch vielen Dank für die tolle Anleitung mit dem Minivideo.
(Kannst Du zufällig sagen, wie Du das gemacht hast?)
Natürlich auch einen Dank an Hajo, dass Du Dich damit auseinandergesetzt hast.
Viele Grüße
Frank
Anzeige
AW: Großbuchstaben in einer Zelle zählen
26.03.2012 21:53:41
Josef

Hallo Frank,
Tabelle5

 ABCD
1Code Anzahl GroßbuchstabenLängste Serie
2BC---CBDCCABa----D------ 107
3aC---CB--DCCABa----aBb------ 95

Formeln der Tabelle
ZelleFormel
C2=SUMMENPRODUKT((CODE(TEIL(A2;ZEILE($A$1:INDEX(A:A;LÄNGE(A2))); 1))>=65)*(CODE(TEIL(A2;ZEILE($A$1:INDEX(A:A;LÄNGE(A2))); 1))<=90))
D2=SUMMENPRODUKT((CODE(TEIL(A2;ZEILE($A$1:INDEX(A:A;LÄNGE(A2)-1)); 1))>=65)*(CODE(TEIL(A2;ZEILE($A$1:INDEX(A:A;LÄNGE(A2)-1)); 1))<=90)*(CODE(TEIL(A2;ZEILE($A$2:INDEX(A:A;LÄNGE(A2))); 1))>=65)*(CODE(TEIL(A2;ZEILE($A$2:INDEX(A:A;LÄNGE(A2))); 1))<=90))


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4

« Gruß Sepp »

Anzeige
AW: Großbuchstaben in einer Zelle zählen
27.03.2012 07:54:56
Peter
Hallo Sepp
Deine Lösung hat mich auch interessiert und ich habe diese mit dem VBA-Lösungsansatz verglichen.
Bei den Zeilen 5, 6 und 10 habe ich unterschiedliche Resultate erhalten. Bin jedoch nicht schlau geworden, warum das so ist.
Gruss, Peter
https://www.herber.de/bbs/user/79568.xlsm
AW: Großbuchstaben in einer Zelle zählen
27.03.2012 20:05:24
Josef

Hallo Peter,
das liegt daran, dass die Serien-Formel schlicht und einfach nonsense ist;-((

« Gruß Sepp »

Anzeige
AW: Großbuchstaben in einer Zelle zählen
28.03.2012 22:20:15
Frank
Hallo Sepp,
trotzdem vielen Dank für Deine Hilfe. Die Formel hat ja zumindest für das Zählen der Großbuchstaben geklappt.
Bisher habe ich die Formel zwar noch nicht komplett verstanden, aber ich bin beeindruckt und danke herzlich dafür.
(Falls Du Lust und Zeit hast, kannst Du mir sie gerne erklären - musst Du aber nicht, ich habe ja immerhin eine Lösung.)
Viele Grüße
Frank

385 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige