![]() |
Betrifft: x in Zellen schreiben
von: Andreas
Geschrieben am: 06.09.2014 19:28:16
Geschätzte Kommunity,
ich sitz wieder mal vor einem kniffligen Problem und sehe vermutlich den Wald vor lauter bäumen nich!
Ich habe mir eine Excelliste gebastelt welche ich zur Verwaltung eines Schließsystems verwenden will. Die prinzipielle Funktion ist wie folgt:
Im ersten Tabellenblatt werden die Informationen für jeden Mitarbeiter bearbeitet. Jeder Mitarbeiter kann mehrere Berechtigungen für ein elektronisches Schließsystem bekommen (Spalte Berechtigung). Dort habe ich schon eine nette VBA-Lösung dass im Dropdownfeld eine Mehrfachauswahl mit Lösch- und Sortierffunktion geht! Jetzt möchte ich dass abhängig vom Text in dieser Zelle rechts davon bei der jeweiliegen Tür ein "x" reinkommt wenn dieser in der Berechtigung auch vorgesehen ist.
Dazu habe ich ein 2tes Tabellenblatt wie ich zu jeder Tür die Berechtigung dazuschreib (praktisch eine Kopie der MAtrix aus dem ersten Blatt). Jetzt wollte ich den Text in der Spalte Berechtigung suchen und über eine Wenn-Funktion diesen mit der Tabelle im Blatt 2 vergleichen und bei einer Übereinstimmung ein "x" reinschreiben. Ich kriegs nicht hin.
Excel sollte doch kein Problem damit haben in einem String in einer Zelle, z.B. "Berechtigung 1, Berechtigung 2, Berechtigung 3" nach den jeweiligen Texteilen zu suchen, oder?
Und dann dachte ich weiter dass es mit der Funktion "=WENN(ISTFEHLER(FINDEN($J$5;Tabelle102));"x";"")" zu finden sein sollte, tut es aber nicht :-(
In der Hoffnung dass hier sicher jemand schlauer ist als ich:
https://www.herber.de/bbs/user/92503.xlsm
Vorab mal Danke für euer Interesse!!
LG
![]() ![]() |
Betrifft: AW: x in Zellen schreiben
von: {Boris}
Geschrieben am: 07.09.2014 00:59:55
Hi,
Tabelle102 umfasst den Bereich (!) Listen!C2:C9.
Schreibe also einfach
=WENN(ZÄHLENWENN(Tabelle102;J5);"";"x")
"x" heißt: Text aus J5 kommt NICHT vor.
VG, Boris
![]() ![]() |
Betrifft: AW: x in Zellen schreiben
von: Andreas
Geschrieben am: 07.09.2014 10:26:29
Hallo Boris,
danke für deine Rückmeldung. Stimmt, hab ich vergessen zu erwähnen dass ich Tabellen mit Bereichsnamen erstellt habe damit ich mich leichter zurechtfinde.
Ich hab das jetzt probiert, wobei das "x" rein soll wenn einer der Texte aus j5 im Bereich "Tabelle102" drinsteht, also ein "oder". Leider macht die Formel das nicht.
Das Beispiel was ich hochgeladen hat hat in Tabelle102 die Berechtigungen "Berechtigung 1" und Berechtigung 3". Wenn ich deine Formel eingebe und ich in j5 "Berechtigung 1" anwähle kommt kein "x", erst wenn ich irgend eine andere dazunehme. Es ist eigentlich auch egal welche ich anwähle.
Probiers mal aus. Wenn du z.B. in j5 Berechtigung 4 anwählst kommt das "x" obwohl es nicht kommen darf da ja für diese Tür nur "Berechtigung 1" und "Berechtigung 3" angegeben sind (also in Tabelle102 eingetragen wurden).
Trotzdem vielen dank!!
LG
Andreas
![]() ![]() |
Betrifft: AW: x in Zellen schreiben
von: fcs
Geschrieben am: 08.09.2014 12:45:31
Hallo Andreas,
wenn du auf
http://www.excelformeln.de/formeln.html
nicht etwas passendes findest, dann hilft folgende kleine benutzerdefinierte Funktion evtl. weiter.
Gruß
Franz
'Code in einem allgemeinen Modul Option Explicit Public Function fncMarkieren(varWert, WertListe As Range, _ Optional varVorhanden = "x", Optional varNichtvorhanden = "") Dim Zelle As Range 'Formelbeispiel: =fncMarkieren($J$5;Tabelle102;"x";"") 'Formelbeispiel: =fncMarkieren($J$5; Tabelle102[102 - Raum];"x";"") fncMarkieren = varNichtvorhanden If varWert = "" Then 'do nothing Else For Each Zelle In WertListe.Cells If Zelle.Text = "" Then 'do nothing ElseIf InStr(1, varWert, Zelle.Text) > 0 Then fncMarkieren = varVorhanden Exit For End If Next End If End Function
![]() |