Office: Zelle prüfen auf Sonderzeichen

Helfe beim Thema Zelle prüfen auf Sonderzeichen in Microsoft Excel Hilfe um das Problem gemeinsam zu lösen; Hallöchen Leute, ich suche eine Formel oder einen Code, der mir Überprüft, ob z. B. die Zelle C5 folgende Zeichen enthält: / : \ * ? " < > |. Hat... Dieses Thema im Forum "Microsoft Excel Hilfe" wurde erstellt von Robie, 9. Juni 2009.

  1. Zelle prüfen auf Sonderzeichen


    Hallöchen Leute,

    ich suche eine Formel oder einen Code, der mir Überprüft, ob z. B. die
    Zelle C5 folgende Zeichen enthält: / : \ * ? " < > |.

    Hat jemand da eine Idee.

    LG Robie

    :)
     
    Robie, 9. Juni 2009
    #1
  2. Hi Robie,
    es müsste eigentlich auch per Array funktionieren, aber irgendwie bekomme ich das nicht hin. So klappt es zwar, meiner Meinung nach, ist aber bestimmt optimierbar:
    Code:
     
    Uwe (:o), 11. Juni 2009
    #2
  3. OfficeUser Neuer User
    Hallo Robie,

    anbei mal ein Versuch über eine Formellösung.
    Beispiel

     AB
    1Ich 
    2Test "OK"Zeichen gefunden
    3Wir 
    4Test :Zeichen gefunden
    5Hilft es ?Zeichen gefunden
    6> 55Zeichen gefunden
    7Ende 
    ZelleFormel
    B1=WENN(ANZAHL(FINDEN({"/";":";"\";"*";"?";">";"<";"|";".";""""};A1))>0;"Zeichen gefunden";"")
    B2=WENN(ANZAHL(FINDEN({"/";":";"\";"*";"?";">";"<";"|";".";""""};A2))>0;"Zeichen gefunden";"")
    B3=WENN(ANZAHL(FINDEN({"/";":";"\";"*";"?";">";"<";"|";".";""""};A3))>0;"Zeichen gefunden";"")
    B4=WENN(ANZAHL(FINDEN({"/";":";"\";"*";"?";">";"<";"|";".";""""};A4))>0;"Zeichen gefunden";"")
    B5=WENN(ANZAHL(FINDEN({"/";":";"\";"*";"?";">";"<";"|";".";""""};A5))>0;"Zeichen gefunden";"")
    B6=WENN(ANZAHL(FINDEN({"/";":";"\";"*";"?";">";"<";"|";".";""""};A6))>0;"Zeichen gefunden";"")
    B7=WENN(ANZAHL(FINDEN({"/";":";"\";"*";"?";">";"<";"|";".";""""};A7))>0;"Zeichen gefunden";"")
    Excel Tabellen im Web darstellen >>
     
    Zuletzt von einem Moderator bearbeitet: 12. Januar 2021
    OfficeUser, 11. Juni 2009
    #3
  4. Zelle prüfen auf Sonderzeichen

    _oT = "ohne Text"
     
    NoNet, 11. Juni 2009
    #4
  5. Hi Leute und vielen Dank,

    die letze Lösung ist wirklich ganz schön. Hatte mir schon
    etwas programmiert, aber dies hier ist doch für mich jetzt
    besser geeignet.

    Falls es aber jemanden doch interessieren sollte:
    Code:
     
    Robie, 11. Juni 2009
    #5
  6. Hallo NoNet,

    VIELEN DANK *Smilie und weiterhin einen schönen FT !
     
    mücke, 11. Juni 2009
    #6
  7. Moin, Robie,

    Code:
    z.B. mit dem Aufruf
    Code:
     
  8. Zelle prüfen auf Sonderzeichen

    HAllo

    Schau dir dazu auch mal diese 3 an.
    Die machen alles das gleiche.
    Das erste kommt sogar ohne Schleife und ohne MID() aus.
    ' **********************************************************************
    ' Modul: Modul1 Typ: Allgemeines Modul
    ' **********************************************************************

    Option Explicit

    Public Function Sonderzeichen_durch_Leerzeichen1(strText As String)
    Dim Regex
    Set Regex = CreateObject("Vbscript.Regexp")
    With Regex
    .Pattern = "(\/|:|\\|\*|\?|""|<|>|\||\.)"
    .Global = True
    Sonderzeichen_durch_Leerzeichen1 = .Replace(strText, " ")
    End With
    End Function

    Public Function Sonderzeichen_durch_Leerzeichen2(strText As String)
    Dim arr
    Dim L As Long
    Redim arr(1 To Len(strText))
    For L = 1 To Len(strText)
    Select Case Mid(strText, L, 1)
    Case "\", "/", ":", "*", "?", Chr(32), "<", ">", "|", ".", """"
    arr(L) = " "
    Case Else: arr(L) = Mid(strText, L, 1)
    End Select
    Next
    Sonderzeichen_durch_Leerzeichen2 = Join(arr, "")
    End Function

    Public Function Sonderzeichen_durch_Leerzeichen3(strText As String)
    Dim B() As Byte
    Dim L As Long
    B = StrConv(strText, vbFromUnicode)
    For L = LBound(B) To UBound(B)
    Select Case B(L)
    Case 34, 42, 46, 47, 58, 60, 62, 63, 92, 124: B(L) = 32
    End Select
    Next
    Sonderzeichen_durch_Leerzeichen3 = StrConv(B, vbUnicode)
    End Function


    ransi
     
    ransi, 11. Juni 2009
    #8
  9. Sorry wenn ich diesen alten Beitrag nochmals aufleben lasse,
    aber ich hätte da noch ne kleine Frage zu zu ransis Antwort.

    Wie wird denn die erste Funktion (Sonderzeichen_durch_Leerzeichen1) ausgeführt???
    Hat sie noch gar keinen Zellbezug oder bin ich da noch zu unerfahren (was durchaus sein kann)um den zu sehen?

    Ich danke schon mal im Vorraus für die Antworten.

    Grüsse

    seit kurzem VBA
     
  10. Hallo,

    wie du bereits selbst vermutest, hat die Funktion keinen Zellbezug. Der zu prüfende Text wird als Parameter an die Funktion übergeben. Wenn du die Funktion in einem Makro zum Beispiel mit Code:
    aufrufst, prüft die Funktion den Text "Alles klar?" auf die angegebenen Sonderzeichen und ersetzt diese durch ein Leerzeichen.

    In dem übergebenen Text wird das Fragezeichen gefunden. Damit wird dann aus "Alles klar?" der Text "Alles klar ", also mit einem Leerzeichen am Ende.

    Das Ganze funktioniert natürlich auch mit einer Zelle, in der der Text steht. Der Aufruf würde dann so aussehen: Code:
    Gruß Ingolf
     
  11. Danke Ingolf für die ausführliche Antwort.
    Die hilft mir sehr weiter und somit kann ich auch damit arbeiten!
     
  12. Hallo seit kurzem VBA,

    was auch geht: Du kannst die Funktionen als Formel in der Tabelle nutzen:
    z. B.
    Code:
    Grüße
    EarlFred
     
  13. Zelle prüfen auf Sonderzeichen

    Ja würde normalerweise schon funktionieren aber bei mir bezieht sich die Formel auf die eigene Zelle und somit kommt immer die Meldung "Zirkelbezugswarnung" und dann kann ich in die Zelle nichts mehr reinschreiben.

    Gruß seit kurzem VBA
     
  14. Und ich bins nochmal. Irgendwie will die Funktion bei mir nicht wirklich funktionieren.
    Und zwar:
    Ich habe die Funktion Sonderzeichen_durch_Leerzeichen1 von Ransi bei mir in Modul2
    In Tabelle1 möchte ich mit dem Befehl Worksheet_Change die Funktion ausführen lassen damit sie mir die Zelle G6 prüft und eine MsgBox öffnen.

    Die MsgBox wird geöffnet aber die Sonderzeichen wrden nicht ersetzt

    Zur Verständnis hier mein Code:

    Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Address = "$G$6" Then
    Modul2.Sonderzeichen_durch_Leerzeichen1 Range("G6").Value
    MsgBox "hoffe es geht"
    End If
    End Sub

    ich hoffe Ihr könntet mir nochmals helfen
    Ich danke euch schonmals im Vorraus

    Gruß seit kurzem VBA
     
  15. Hallo,

    du musst den veränderten Text auch wieder der Zelle zuweisen. Für die Zelle kannst du die Variable Target verwenden. Diese wird von VBA in diesem Ereignismarko automatisch erzeugt. Es handelt sich um eine Rangevariable, welche die Zelle(n) enthält, die verändert wurde(n) und so das Ereignismakro ausgelöst haben. Bei Makros, die in einem allgemeinen Modul stehen, kannst du auf den Verweis über den Modulnamen verzichten.

     
Thema:

Zelle prüfen auf Sonderzeichen

Die Seite wird geladen...
  1. Zelle prüfen auf Sonderzeichen - Similar Threads - Zelle prüfen Sonderzeichen

  2. Zelle per VBA auf ihren Inhalt prüfen und reagieren sowie bei Änderung

    in Microsoft Excel Hilfe
    Zelle per VBA auf ihren Inhalt prüfen und reagieren sowie bei Änderung: Hallo zusammen, ich habe mit etwas verheddert und hoffe auf Eure Hilfe. Die Felder B111 und B112 sind zu Beginn LEER. B111 bietet ein Dropdown-Menü an, welches im Falle der Auswahl "Angebot mit...
  3. Prüfung unterschiedlicher Zellen auf Inhalt und Konsequenz

    in Microsoft Excel Hilfe
    Prüfung unterschiedlicher Zellen auf Inhalt und Konsequenz: Hallo zusammen, ich habe einen Code, bei dem ich mehrere voneinander getrennte Zellen auf Befüllung prüfe. Wenn ich mindestens eine nicht befülle, erscheint eine Fehlermeldung und das Script...
  4. zwei Zellen prüfen steht was drinnen dann schreib text

    in Microsoft Excel Hilfe
    zwei Zellen prüfen steht was drinnen dann schreib text: Hallo zusammen, mein Problem wenn in der Zelle A1 oder A2 größer 1 dann schreib Text in A3 VG Michael
  5. Wert aus Zelle in einer anderen Datei suchen und prüfen, ob weiterer Wert vorhanden ist

    in Microsoft Excel Hilfe
    Wert aus Zelle in einer anderen Datei suchen und prüfen, ob weiterer Wert vorhanden ist: Hallo allerseits. Ich hab wieder mal eine Frage: • Meine Formel steht in 'Datei1' R6. • In D6 steht die Kundennummer auf die sich die Formel beziehen soll. • In einer anderen Datei 'Datei2' sind...
  6. Prüfen und Verketten von Zellen mit Formeln als Inhalt

    in Microsoft Excel Hilfe
    Prüfen und Verketten von Zellen mit Formeln als Inhalt: Sehr geehrte Damen und Herren, ich möchte in einer Excel Tabelle ca. 72 Zellen miteinander verketten und prüfen, ob diese gefüllt sind, falls manche dieser Zellen leer sind sollen diese aus der...
  7. Prüfen ob Zelle in Namensbereich enthalten

    in Microsoft Excel Hilfe
    Prüfen ob Zelle in Namensbereich enthalten: Hallo ich steh aufm schlauch. Ich habe eine Tabelle mit 5 Namensbereichen 1. Bereich von A2-A5 hat den Namen Fahrer 2. Bereich von A7-A10 "Disponenten" 3. Bereich von A12-A20 "Lager" usw. in...
  8. Verwenden von WENN, um zu prüfen, ob eine Zelle leer ist

    in Microsoft Excel Tutorials
    Verwenden von WENN, um zu prüfen, ob eine Zelle leer ist: Verwenden von WENN, um zu prüfen, ob eine Zelle leer ist Excel für Microsoft 365 Excel für Microsoft 365 für Mac Excel 2019 Excel 2016 Excel 2019 für Mac...
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden