Thema Datum  Von Nutzer Rating
Antwort
Rot Jahreszahlen (z.B. 1990 - 2020) auslassen?
04.03.2011 10:13:14 Greg
Solved
04.03.2011 12:19:47 Severus
NotSolved
04.03.2011 12:25:32 Holger
NotSolved
04.03.2011 13:24:13 Greg
Solved
05.03.2011 00:35:21 Severus
NotSolved
04.03.2011 18:14:19 Severus
NotSolved
05.03.2011 16:49:12 Gast48962
NotSolved
08.03.2011 14:38:23 Greg
Solved

Ansicht des Beitrags:
Von:
Greg
Datum:
04.03.2011 10:13:14
Views:
1201
Rating: Antwort:
 Nein
Thema:
Jahreszahlen (z.B. 1990 - 2020) auslassen?

Hallo Leute, ich habe ein Makro geschrieben das Zahlenfolgen in einer Zelle zensiert, diese Zahlenfolgen sind 4 Stellig.

Nun sind die Jahreszahlen das Problem, wenn im Feld steht

 

"Herr xyz mit der Pesonalnummer 8293 hat 2009" wird es in

"Herr xyz mit der Personalnummer **** hat **** " zensiert.

Das ist auch der Sinn des Makros, Personalnummern in einer Tabelle zu zensieren, jedoch nicht die Jahreszahlen.

Hier ist das Makro:

________________

Private Function ziffernfolge_zensieren(ByVal xZeile As String) As String
    Dim MomentanePositionDesZeigers As Integer
    Dim AnzahlZeichenvonXZeile As Integer
    Dim AnzahlGefundeneZiffern As Integer
    Dim i As Integer  ' Laufvariable
    Dim AuswertbaresZeichen As String
    Dim ZuErsetzenderString As String
    Dim ZuErsetzenderStringZeichen As String
   
    ziffernfolge_zensieren = ""
    xZeile = xZeile & " "
    AnzahlZeichenvonXZeile = Len(xZeile)
   
    For MomentanePositionDesZeigers = 1 To AnzahlZeichenvonXZeile Step 1
   
        AuswertbaresZeichen = Mid(xZeile, MomentanePositionDesZeigers, 1)

        If IsNumeric(AuswertbaresZeichen) Then
   
            ZuErsetzenderString = ZuErsetzenderString & AuswertbaresZeichen
            ZuErsetzenderStringZeichen = ZuErsetzenderStringZeichen & "*"

        Else
            If Len(ZuErsetzenderString) = 4 Then
                If Not IsNumeric(AuswertbaresZeichen) Then
                    ziffernfolge_zensieren = Replace(ziffernfolge_zensieren, ZuErsetzenderString, ZuErsetzenderStringZeichen)
                    ZuErsetzenderString = ""
                    ZuErsetzenderStringZeichen = ""
               Else
                    ZuErsetzenderString = ZuErsetzenderString & AuswertbaresZeichen
                    ZuErsetzenderStringZeichen = ZuErsetzenderStringZeichen & "*"
                End If
           
            Else
                ZuErsetzenderString = ""
                ZuErsetzenderStringZeichen = ""
            End If
           
   
        End If
       
        ziffernfolge_zensieren = ziffernfolge_zensieren & AuswertbaresZeichen
       
    Next
   
    ziffernfolge_zensieren = Trim(ziffernfolge_zensieren)
   
     
End Function

Private Sub TestaufrufZiffernfolgeerstezen()
    Dim Uebergabestring, ergebnisstring As String
    Uebergabestring = "57 979977j 3353jkjfsdgjsdfk31.12.2009lgjklsdf3.2.99jgklsdf2011fghgh1.1.11jgkljsdfgkljsdflkgjklsdfjgklsdfjgkl3"
ergebnisstring = ziffernfolge_zensieren(Uebergabestring)
ergebnisstring = ergebnisstring
End Sub

__________

Kann mir einer von euch sagen wo ich was einbauen muss, damit die Zahlen 1990,1991,1992 etc. bis 2020 ausgelassen werden?

Vielen Dank für eure Antworten.


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
Rot Jahreszahlen (z.B. 1990 - 2020) auslassen?
04.03.2011 10:13:14 Greg
Solved
04.03.2011 12:19:47 Severus
NotSolved
04.03.2011 12:25:32 Holger
NotSolved
04.03.2011 13:24:13 Greg
Solved
05.03.2011 00:35:21 Severus
NotSolved
04.03.2011 18:14:19 Severus
NotSolved
05.03.2011 16:49:12 Gast48962
NotSolved
08.03.2011 14:38:23 Greg
Solved