25.11.2023, 19:07
26.11.2023, 17:05
kann mir einer eventuell dabei helfen warum friert mein exel ständig ein ?
gruss Thomas
Gerätename Thomas
Prozessor AMD Ryzen 3 2200G with Radeon Vega Graphics 3.50 GHz
Installierter RAM 16,0 GB
Geräte-ID A1F03ADC-D29C-427A-96BC-8EE45AB7F00E
Produkt-ID 00330-80000-00000-AA619
Systemtyp 64-Bit-Betriebssystem, x64-basierter Prozessor
Stift- und Toucheingabe Für diese Anzeige ist keine Stift- oder Toucheingabe verfügbar.
gruss Thomas
Gerätename Thomas
Prozessor AMD Ryzen 3 2200G with Radeon Vega Graphics 3.50 GHz
Installierter RAM 16,0 GB
Geräte-ID A1F03ADC-D29C-427A-96BC-8EE45AB7F00E
Produkt-ID 00330-80000-00000-AA619
Systemtyp 64-Bit-Betriebssystem, x64-basierter Prozessor
Stift- und Toucheingabe Für diese Anzeige ist keine Stift- oder Toucheingabe verfügbar.
27.11.2023, 16:02
kommt office mit den befehlen nicht klar ?
=WENN(ODER(C6="Feiertag";C6="Krank";C6="Urlaub";C6="x");ZEIT(8;0;0);WENN(C6="Frei";ZEIT(0;0;0);D6-C6-E6))
=WENN(C7="Urlaub";"";WENN(C7="Feiertag";"";WENN(C7="Frei";"";WENN(C7="Krank";""; WENN($C$2<F7;(F7-$C$2)*24;"")))))
=WENN(C20="";"";WENN($C$2>F20;($C$2-F20)*24;""))
habe es bei office 2007 benutzt keine fehler jetzt bei office2021
kommen fehlermeldungen
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 = UCase(Target) Ucase wird dargestellt und Private Sub Worksheet_Change(ByVal Target As Range) wird dargestellt
End If
If Not Intersect(Target, Range("C2,H2,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 = ""
=WENN(ODER(C6="Feiertag";C6="Krank";C6="Urlaub";C6="x");ZEIT(8;0;0);WENN(C6="Frei";ZEIT(0;0;0);D6-C6-E6))
=WENN(C7="Urlaub";"";WENN(C7="Feiertag";"";WENN(C7="Frei";"";WENN(C7="Krank";""; WENN($C$2<F7;(F7-$C$2)*24;"")))))
=WENN(C20="";"";WENN($C$2>F20;($C$2-F20)*24;""))
habe es bei office 2007 benutzt keine fehler jetzt bei office2021
kommen fehlermeldungen
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 = UCase(Target) Ucase wird dargestellt und Private Sub Worksheet_Change(ByVal Target As Range) wird dargestellt
End If
If Not Intersect(Target, Range("C2,H2,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 = ""
27.11.2023, 20:52
Am Gerätenamen wird es nicht liegen.
welche Fehlermeldungen?
Target.Value = UCase(Target) Erzeugt wieder ein change event obwohl du noch in einem Changemakro drin bist. Hier wäre ein Application.enableevents= false angebracht und danach wieder einschalten.
welche Fehlermeldungen?
Target.Value = UCase(Target) Erzeugt wieder ein change event obwohl du noch in einem Changemakro drin bist. Hier wäre ein Application.enableevents= false angebracht und danach wieder einschalten.
27.11.2023, 21:25
gruss
kommt immer Fehler beim kompilieren projekt oder bibiothek
datei habe ich schonmal hochgeladen passiert wenn ich frei oder urlaub ... schreibe
gruss thomas
hatte vorher 2007 version da ging alles super nun auf 21 umgestiegen und hatte das erste problem mit den mini kalender.
der wurde entfernt aber fehler kommen immer noch.
gruss thomas
kommt immer Fehler beim kompilieren projekt oder bibiothek
datei habe ich schonmal hochgeladen passiert wenn ich frei oder urlaub ... schreibe
gruss thomas
hatte vorher 2007 version da ging alles super nun auf 21 umgestiegen und hatte das erste problem mit den mini kalender.
der wurde entfernt aber fehler kommen immer noch.
gruss thomas
27.11.2023, 23:14
der Absturz kommt durch eine Stapelüberlauf. Ursache ist wie ich schon oben beschrieben habe.
hier dein Change event etwas umgebaut. Wobei du dir mal überlegen solltet ob es Sinn macht in Spalte C den Text groß zu schreiben, wenn du im UrlaubKrank-Blatt aber die Kleinschreibung der Texte zählen willst.
in wieweit man bei IsEmpty(Target) den Wert auf leeren String setzen muß, ist auch etwas fraglich. Die Zelle ist ja schon leer.
hier dein Change event etwas umgebaut. Wobei du dir mal überlegen solltet ob es Sinn macht in Spalte C den Text groß zu schreiben, wenn du im UrlaubKrank-Blatt aber die Kleinschreibung der Texte zählen willst.
in wieweit man bei IsEmpty(Target) den Wert auf leeren String setzen muß, ist auch etwas fraglich. Die Zelle ist ja schon leer.
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Eingabe As Variant
If Not Intersect(Target, Range("C5:C35")) Is Nothing Then
If Not IsNumeric(Target) Then
Application.EnableEvents = False
Target.Value = UCase(Target)
Application.EnableEvents = True
End If
End If
If Not Intersect(Target, Range("C2,H2,F37,F43,C5:E35")) Is Nothing Then
With Target
If IsEmpty(Target) Then
Application.EnableEvents = False
.Value = ""
Application.EnableEvents = True
Else
If IsNumeric(.Value) Then
Application.EnableEvents = False
.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"
Application.EnableEvents = True
End If
End If
End With
End If
If Not Intersect(Target, Range("f47")) Is Nothing Then
With Target
If IsEmpty(Target) Then
Application.EnableEvents = False
.Value = ""
Application.EnableEvents = True
Else
If IsNumeric(.Value) Then
.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 If
End If
End With
End If
End Sub
28.11.2023, 08:11
(27.11.2023, 21:25)Thomasius schrieb: [ -> ]kommt immer Fehler beim kompilieren projekt oder bibiothek [nicht gefunden]
Moin!
Ergänzung in [] durch mich.
Setze mal testweise VBA.UCase(Target)
Dir dürfte es einen Verweis verhagelt haben!
Schaue mal im Editor unter Extras → Verweis nach.
Da dürfte einmal NICHT VORHANDEN stehen.
Gruß Ralf
28.11.2023, 15:27
Hi,
@Thomasius: Wenn du si programmierst, wie du hier schreibst wundert mich gar nicht, ich schreib jatzt mal in deinemstil damit du siehtst wie mühs es sein kann soein tex zu vertshn. trotzdem solltest du meinen rat berücksichtig. denn dein code arbeitet falsch wenn mehr zellen gleichzeit geändert werden ISnumeric() wird dann mämlich immer falsch zurückgeben und dein progrm somit immer gleich ans ende
@Alle: sorry, aber ich musste bei obigem Text einfach das Hirnschmalz wieder einsparen, das ich für das Lesen der Beiträge von Thomasius verbraucht habe.
@Thomasius: Wenn du si programmierst, wie du hier schreibst wundert mich gar nicht, ich schreib jatzt mal in deinemstil damit du siehtst wie mühs es sein kann soein tex zu vertshn. trotzdem solltest du meinen rat berücksichtig. denn dein code arbeitet falsch wenn mehr zellen gleichzeit geändert werden ISnumeric() wird dann mämlich immer falsch zurückgeben und dein progrm somit immer gleich ans ende
@Alle: sorry, aber ich musste bei obigem Text einfach das Hirnschmalz wieder einsparen, das ich für das Lesen der Beiträge von Thomasius verbraucht habe.
28.11.2023, 18:45
danke an alle
werde das von ralf_b anwenden und testen
gruss Thomas
werde das von ralf_b anwenden und testen
gruss Thomas
29.11.2023, 17:03