Office-Fragen.de

Normale Version: ucase
Sie sehen gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
hallo habe jetzt exel professional plus 2021 und meine exeltabelle mit ucase funktioniert nicht mehr nun meine frage , ging es nur mit der alten version von exel ?
(26.08.2025, 18:14)Thomasius schrieb: [ -> ]hallo habe jetzt exel professional plus 2021 und meine exeltabelle mit ucase funktioniert nicht mehr nun meine frage , ging es nur mit der alten version von exel ?

If Not Intersect(Target, Range("C5:C35")) Is Nothing Then
          If Not IsNumeric(Target) Then Target.Value = UCase(Target)
      End If

das ging mit der alten version von exel
jetzt hängt sich exel auf
Hallo,

da hast du wohl einen kaputten Verweis in deinem Excel ... nimm den raus, dann geht es wieder.

Oder "repariere" deinen Code ... If Not IsNumeric(Target) Then Target.Value = VBA.UCase(Target)
(26.08.2025, 19:55)Flotter Feger schrieb: [ -> ]Hallo,

da hast du wohl einen kaputten Verweis in deinem Excel ... nimm den raus, dann geht es wieder.

Oder "repariere" deinen Code ... If Not IsNumeric(Target) Then Target.Value = VBA.UCase(Target)

Private Sub Worksheet_Change(ByVal Target As Range)
Dim Eingabe As Variant
On Error GoTo fehler1
If Not Intersect(Target, Range("C5:C35")) Is Nothing Then
          If Not IsNumeric(Target) Then Target.Value = VBA.UCase(Target)
      End If
If Not Intersect(Target, Range("F37,F43,C5:E35")) Is Nothing Then
    Application.EnableEvents = False
    With Target
        If Not IsNumeric(.Value) Then GoTo fehler1
        If IsEmpty(Target) Then
            Target.Value = ""
            GoTo fehler1
        End If
        .Value = Left(Format(Target, "0000"), 2) & ":" & Right(Target, 2)
        ' funkt am besten
        ' Wenn Std über 24 und gleichzeit Minuten über 60 erfasst werden, wird Text zurückgegeben.
        .NumberFormat = "[h]:mm"
    End With
End If
If Not Intersect(Target, Range("f47")) Is Nothing Then
    Application.EnableEvents = False
    With Target
        If Not IsNumeric(.Value) Then GoTo fehler1
        If IsEmpty(Target) Then
            Target.Value = ""
            GoTo fehler1
        End If
        .Value = Left(Format(Target, "00000"), 3) & ":" & Right(Target, 2)
        ' funkt am besten
        ' Wenn Std über 24 und gleichzeit Minuten über 60 erfasst werden, wird Text zurückgegeben.
        .NumberFormat = "[h]:mm"
    End With
End If
fehler1:
Application.EnableEvents = True

End Sub




hämgt sich auch auf er ändert zwar um aber dann hängt alles




Danke
(26.08.2025, 20:09)Thomasius schrieb: [ -> ]
(26.08.2025, 19:55)Flotter Feger schrieb: [ -> ]Hallo,

da hast du wohl einen kaputten Verweis in deinem Excel ... nimm den raus, dann geht es wieder.

Oder "repariere" deinen Code ... If Not IsNumeric(Target) Then Target.Value = VBA.UCase(Target)

Private Sub Worksheet_Change(ByVal Target As Range)
Dim Eingabe As Variant
On Error GoTo fehler1
If Not Intersect(Target, Range("C5:C35")) Is Nothing Then
          If Not IsNumeric(Target) Then Target.Value = VBA.UCase(Target)
      End If
If Not Intersect(Target, Range("F37,F43,C5:E35")) Is Nothing Then
    Application.EnableEvents = False
    With Target
        If Not IsNumeric(.Value) Then GoTo fehler1
        If IsEmpty(Target) Then
            Target.Value = ""
            GoTo fehler1
        End If
        .Value = Left(Format(Target, "0000"), 2) & ":" & Right(Target, 2)
        ' funkt am besten
        ' Wenn Std über 24 und gleichzeit Minuten über 60 erfasst werden, wird Text zurückgegeben.
        .NumberFormat = "[h]:mm"
    End With
End If
If Not Intersect(Target, Range("f47")) Is Nothing Then
    Application.EnableEvents = False
    With Target
        If Not IsNumeric(.Value) Then GoTo fehler1
        If IsEmpty(Target) Then
            Target.Value = ""
            GoTo fehler1
        End If
        .Value = Left(Format(Target, "00000"), 3) & ":" & Right(Target, 2)
        ' funkt am besten
        ' Wenn Std über 24 und gleichzeit Minuten über 60 erfasst werden, wird Text zurückgegeben.
        .NumberFormat = "[h]:mm"
    End With
End If
fehler1:
Application.EnableEvents = True

End Sub




hämgt sich auch auf er ändert zwar um aber dann hängt alles




Danke


hab es danke
Moin Thomas,

Deine Zeile in XL 2019 & 2021, letzteres in 32- und 64-bit getestet und kein Problem, ob mit oder ohne VBA als Objekt: Nix hängt.

Das könnte also eventuell ein EXD-Thema sein, was Du so ausprobierst: Suche in C:\Users\[Dein User]\AppData\Local\Temp\VBE die *.exd-Dateien und lösche sie. Keine Sorge, diese gecachten Typbibliotheken werden mit dem nächsten Aufruf automatisch wieder erstellt.

Hat schon bei so manchem VBA-Mysterium geholfen. Lass bitte wissen, ob ... Viel Erfolg!

Schöne Grüße