Zählen von farbigen Buchstaben

Das Tabellenkalkulationsprogramm

Moderator: Moderatoren

paljass
******
Beiträge: 792
Registriert: Do, 25.10.2012 07:25

Re: Zählen von farbigen Buchstaben

Beitrag von paljass »

Hi,
wie werden den die Buchstaben eingefärbt - händisch oder per bedingter Formatierung?
Falls händisch müsstest du dich ans Forum für Programmierung wenden, falls bedingte Formatierung kannst du die Bedingung in =Zählenwenn() einbauen. Für genauere Hilfe in diesem Fall wäre ein Beispieldokument gut.

Gruß
paljass
EDV ist wie U-Boot fahren - machst du ein Fenster auf, fangen die Probleme an.
TrueColor
******
Beiträge: 542
Registriert: Do, 11.03.2010 11:23

Re: Zählen von farbigen Buchstaben

Beitrag von TrueColor »

Falls sie händisch gefärbt werden, könntest du das ja auch andersherum angehen. Fasse die Bedingung für das Formatieren in eine Formel, mit deren Hilfe du dann bedingt formatieren und zählen kannst .
System:
Arbeit: Windows 7 (64 bit) + Apache OpenOffice 4.1.2 (AOO412m3), LibreOffice 4.1.4.2
Home: Windows 10 (64 bit) + Apache OpenOffice 4.1.2 (AOO412m3)
Stephan
********
Beiträge: 12369
Registriert: Mi, 30.06.2004 19:36
Wohnort: nahe Berlin

Re: Zählen von farbigen Buchstaben

Beitrag von Stephan »

Wenn Du die Buchstaben händisch eingibst und die Farbe auch händisch formatierst, dann sollte folgende benutzerdefinierte Funktion gehen:

Code: Alles auswählen

Function FaBu(blattindex as Integer, bereich AS String, farbe AS Long) As Integer
	'16711680 - hellrot / 32768 - grün / 0 - schwarz
	tc = ThisComponent
	akt_bereich = tc.sheets(blattindex).getCellRangeByName(bereich)
	With akt_bereich.RangeAddress
		start_zeile = .StartRow
		start_spalte = .StartColumn
		end_spalte = .EndColumn
	End With
	j = 0
	For i = start_spalte To end_spalte
		If tc.sheets(blattindex).getCellByPosition(i, start_zeile).CharColor = farbe Then
			j = j + 1
		End If
	Next i
	FaBu = j
End Function
Hinweis für Anwender:
für Farben sind die Long-Werte anzugeben, für die konkret benannten Farben in OO sind das:
hellrot: 16711680
grün: 32768
schwarz: 0

Die Farbe Schwarz muss bei der Zellformatierung explizit eingestellt sein, die normalerweise genutzte Einstellung "Automatisch" ist für die Function nicht geeignet.

Hinweis für Experten:
-mit blattindex damit die Funktion beim Öffnen gleich arbeitet (.CurrentController.ActiveSheet liefert Fehler)


Gruß
Stephan
Dateianhänge
FarbigeBuchstabenZählen2.ods
(9.99 KiB) 132-mal heruntergeladen
Toxitom
********
Beiträge: 3768
Registriert: Di, 12.08.2003 18:07
Wohnort: Wiesbaden
Kontaktdaten:

Re: Zählen von farbigen Buchstaben

Beitrag von Toxitom »

Hey Stephan,

Dein Makro hat einen "kleinen" Nachteil: Funktioniert nur, wenn alle Zeichen der Zelle die gleiche Farbe haben.

Ich bin mir nicht sicher, ob der Fragesteller tatsächlich diesen Fakt abfragt.

Ansonsten muss der Textbereich der Zelle ausgelesen werden und über die einzelnen, formatierten Bereiche iteriert werden - das ist deutlich mehr Arbeit ;))

Bsp:
Screenshot_3.png
Screenshot_3.png (2.96 KiB) 8430 mal betrachtet
Ich erspare mir den Code. Die Ideen sind sicher gut, aber ich denke, auch ein Forum sollte keine fertigen Lösungen als Dateianhänge präsentieren - sondern Tipps und Hilfestellungen zur Lösung sowie Denkansätze liefern.
Auch der Fragesteller kann durchaus selbst eine Lösung entwickeln - und bei Unsicherheiten erneut fragen.

VG Tom
Unterstützer LibreOffice, zertifizierter Trainer und Berater
Bücher: LibreOffice 6- Einstieg und Umstieg
Makros Grundlagen - LibreOffice / OpenOffice Basic
Stephan
********
Beiträge: 12369
Registriert: Mi, 30.06.2004 19:36
Wohnort: nahe Berlin

Re: Zählen von farbigen Buchstaben

Beitrag von Stephan »

Barbarella1 hat geschrieben: Do, 26.01.2017 10:58 Das sind ja schon Expertenkenntnisse. Und deshalb habe ich es leider nicht verstanden. :-(
Ich zähle alles manuell aus. :-)

Trotzdem Danke für die Mühe.

LG
Und was ist nun konkret Dein Problem? Ich habe eine fertige Datei geliefert, Du wirst diese doch wohl aufmachen können und sagen ob diese Lösung für Deine Zwecke geeignet ist oder nicht ("nicht" weil z.B. die Gründe vorliegen die Thomas anspricht).

Gruß
Stephan
Barbarella
Beiträge: 4
Registriert: Mi, 18.03.2015 14:06

Re: Zählen von farbigen Buchstaben

Beitrag von Barbarella »

Hallo Stephan,

ich kann die freundlicherweise von Dir angehängte Datei von meinem Arbeitsplatz aus nicht öffnen. Der Link wird blockiert.

Ich versuche es jetzt von zuhause aus und gebe Dir dann Info.

VG und schönes WE.

Barbara
Stephan
********
Beiträge: 12369
Registriert: Mi, 30.06.2004 19:36
Wohnort: nahe Berlin

Re: Zählen von farbigen Buchstaben

Beitrag von Stephan »

Barbarella hat geschrieben: Fr, 27.01.2017 08:33 Hallo Stephan,

ich kann die freundlicherweise von Dir angehängte Datei von meinem Arbeitsplatz aus nicht öffnen. Der Link wird blockiert.

Ich versuche es jetzt von zuhause aus und gebe Dir dann Info.

VG und schönes WE.

Barbara
Dann schau in der Datei in die Zellen B4-B6, dort stehen die Formeln die das Zählen der farbigen K erledigen, z.B. für grün:

=FABU(0;"A1:Z1";32768)

diese Formeln kannst Du in beliebige Zellen der Datei schreiben und entsprechend anpassen.


Gruß
Stephan
Barbarella
Beiträge: 4
Registriert: Mi, 18.03.2015 14:06

Re: Zählen von farbigen Buchstaben

Beitrag von Barbarella »

Hallo Stephan,

ich habe zuhause Deine Datei geöffnet. Bei Dir steht #WERT! in der Zelle mit der angewandten Formel, und wenn ich diese Formel angepasst auf meine Liste anwende, steht bei mir #NAME!

Ich habe für meine Begriffe alles versucht. Leider komme ich nicht weiter. Jetzt bin ich auch nicht der absolute Excel-Anwender.

Trotzdem vielen Dank für Deine Bemühungen.

Gruß
Barbara
Stephan
********
Beiträge: 12369
Registriert: Mi, 30.06.2004 19:36
Wohnort: nahe Berlin

Re: Zählen von farbigen Buchstaben

Beitrag von Stephan »

Barbarella hat geschrieben: Di, 31.01.2017 13:34 Hallo Stephan,

ich habe zuhause Deine Datei geöffnet. Bei Dir steht #WERT! in der Zelle mit der angewandten Formel, und wenn ich diese Formel angepasst auf meine Liste anwende, steht bei mir #NAME!

Ich habe für meine Begriffe alles versucht. Leider komme ich nicht weiter. Jetzt bin ich auch nicht der absolute Excel-Anwender.

Trotzdem vielen Dank für Deine Bemühungen.

Gruß
Barbara
Sehr wahrscheinlich hast Du die Ausführung von Makros nicht zugelassen, weshalb dann "#WERT!" in den Zellen steht.

Du musst Folgendes Tun:

Aktiviere in OO/LO unter Extras-Optionen*-OpenOffice-Sicherheit Schaltfläche "Makrosicherheit..." die Sicherheitsstufe/Option "mittel ...", bestätige zweimal mit OK so das sich der Dialog wieder schließt.

*
bzw. "Einstellungen" (statt Optionen)

Öffne nun die Datei "FarbigeBuchstabenZählen2.ods" erneut und klicke im erscheinenden Dialog auf "Makros aktivieren" und alles wird laufen.
Makros_aktivieren.gif
Makros_aktivieren.gif (11.99 KiB) 8145 mal betrachtet
Gruß
Stephan
Barbarella
Beiträge: 4
Registriert: Mi, 18.03.2015 14:06

Re: Zählen von farbigen Buchstaben

Beitrag von Barbarella »

Ich bin's wieder. :)

Zumindest ein Teilerfolg. Wie schön.

Ich habe die Makrosicherheit auf "mittel" gestellt und siehe da, in Deiner Liste stehen jetzt die Summen der farbigen "K".

Aber trotzdem steht in meiner Liste immer noch #NAME? Kannst Du mir bitte nochmal helfen?

Gruß
Barbara
Stephan
********
Beiträge: 12369
Registriert: Mi, 30.06.2004 19:36
Wohnort: nahe Berlin

Re: Zählen von farbigen Buchstaben

Beitrag von Stephan »

Aber trotzdem steht in meiner Liste immer noch #NAME? Kannst Du mir bitte nochmal helfen?
ja, aber nur wenn Du Deine Liste/Datei zur Verfügung stellst, denn ohne geht das irgendwie schlecht.


Gruß
Stephan
Barbarella
Beiträge: 4
Registriert: Mi, 18.03.2015 14:06

Re: Zählen von farbigen Buchstaben

Beitrag von Barbarella »

Hallo Stephan,

habe die Liste mal angehängt.

Gruß
Barbara
Dateianhänge
Urlaubsliste 2017Test.ods
(16.83 KiB) 102-mal heruntergeladen
Stephan
********
Beiträge: 12369
Registriert: Mi, 30.06.2004 19:36
Wohnort: nahe Berlin

Re: Zählen von farbigen Buchstaben

Beitrag von Stephan »

in Deiner Datei wahr die benutzerdefinierte Funktion garnicht enthalten. Es muss doch aufgefallen sein das beim Öffnen garkeine Sicherheitsabfrage für Makros kam?


Gruß
Stephan
Dateianhänge
Urlaubsliste 2017Test2.ods
(17.83 KiB) 103-mal heruntergeladen
TrueColor
******
Beiträge: 542
Registriert: Do, 11.03.2010 11:23

Re: Zählen von farbigen Buchstaben

Beitrag von TrueColor »

TrueColor hat geschrieben: Do, 26.01.2017 08:29 Falls sie händisch gefärbt werden, könntest du das ja auch andersherum angehen. Fasse die Bedingung für das Formatieren in eine Formel, mit deren Hilfe du dann bedingt formatieren und zählen kannst .
Barbarella1 hat geschrieben: Do, 26.01.2017 09:05 Ich gebe die Buchstaben händisch ein. Aber ich verstehe nicht, wie das gemeint ist. Wie soll diese Formel denn dann aussehen? Ist ein Beispiel möglich?
Barbarealla1 hat geschrieben: Do, 26.01.2017 09:09 Meine Formel für den Zählwert aller "K" sieht so aus: =ZÄHLENWENN(K5:NK5;"K")

Aber dann werden alle "K" gezählt. Wie muss die Formel denn aussehen, damit nur die z. B. roten gezählt werden?
Tut mir leid, dass ich erst heute antworte, hatte leider letzte Woche keine Möglichkeit, hier ins Forum zu gucken.
Was ich meinte: Überlege dir, warum einige der Ks rot gefärbt werden müssen, bringe diese Bedingung in eine formelgerechte Form.

Wenn sich allerdings die Bedingung für "K" und die Bedingung für "rot" nicht als eine Bedingung formulieren lässt, kommst du mit ZÄHLENWENN nicht weiter, das erlaubt nur 1 Bedingung. Du müsstest dir dann die Funktion SUMMENPRODUKT anschauen. Unter http://www.online-excel.de/excel/singsel.php?f=53 findest du eine sehr gute Anleitung. Kannst du genauso auch in OpenOffice anwenden.

p.s.: Ich habe ein AOO 4.1.2 im Funktionsassistenten eine Funktion SUMMEWENNS (Summiert Zellwerte mit mehreren Kriterien in mehreren Bereichen) entdeckt, allerdings keinen passenden Entrag in der Hilfe.

EDIT: Ich sehe grad in deiner Datei, dass sich "rot" sehr wohl in eine formelgerechte Form pressen lässt, nämlich Zeile 3 enthält Mo oder Di oder Mi oder Do oder Fr

Code: Alles auswählen

ODER(I$3:BO$3="Mo";I$3:BO$3="Di";I$3:BO$3="Mi";I$3:BO$3="Do";I$3:BO$3="Fr")
Mit dem SUMMENPRODUKT wäre das dann am Bsp. von Anna:
=SUMMENPRODUKT( (ODER (I$3:BO$3="Mo"; I$3:BO$3="Di"; I$3:BO$3="Mi"; I$3:BO$3="Do"; I$3:BO$3="Fr") ) * (I$11:BO$11="K") )

EDIT 2: Die die vorige Formel war falsch, es muss heißen:
=SUMMENPRODUKT( ( (I$3:BO$3="Mo") + (I$3:BO$3="Di") + (I$3:BO$3="Mi") + (I$3:BO$3="Do") + (I$3:BO$3="Fr") ) * (I11:BO11="K") )

Da in Zeile 3 immer nur einer oder keiner (JA/NEIN, WAHR/FALSCH) der Werte Mo-Fr vorkommen kann, kommt da pro Zelle immer Null oder Eins heraus. Bei "K" in den Namenszeilen ebenso WAHR/FALSCH.
System:
Arbeit: Windows 7 (64 bit) + Apache OpenOffice 4.1.2 (AOO412m3), LibreOffice 4.1.4.2
Home: Windows 10 (64 bit) + Apache OpenOffice 4.1.2 (AOO412m3)
Antworten