Microsoft Excel

Herbers Excel/VBA-Archiv

x in Zellen schreiben

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



 

Beiträge aus den Excel-Beispielen zum Thema "x in Zellen schreiben"