Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Public Sub ausführen automatisch

8 views
Skip to first unread message

Johann Rupp

unread,
Jan 9, 2022, 7:57:31 AM1/9/22
to
Hallo zusammen,

wie kann ich diesen Code bei Eingabe von einem Wert (Datum) in einer
Zelle C11:C160 automatisch ausführen. z.B Eingabe in C30 = Datum, dann
Code ausführen.

Public Sub Sortieren()
For intI = 1 To 12
With Worksheets(intI)
.Range("C11:G160").Sort Key1:=.Range("C11"), _
Order1:=xlAscending, Header:=xlNo
Next
End Sub

Ich bekomms leider nicht hin!
Danke wenn mir jemand helfen könnte.

--
Johann

Claus Busch

unread,
Jan 9, 2022, 8:23:29 AM1/9/22
to
Hallo Johann,

Am Sun, 9 Jan 2022 13:57:29 +0100 schrieb Johann Rupp:

> wie kann ich diesen Code bei Eingabe von einem Wert (Datum) in einer
> Zelle C11:C160 automatisch ausführen. z.B Eingabe in C30 = Datum, dann
> Code ausführen.
>
> Public Sub Sortieren()
> For intI = 1 To 12
> With Worksheets(intI)
> .Range("C11:G160").Sort Key1:=.Range("C11"), _
> Order1:=xlAscending, Header:=xlNo
> Next
> End Sub

warum sollen immer alle Blätter sortiert werden, wenn du nur in einem
Blatt ein Datum eingibst?
Probiere es mal im Codemodul "DieseArbeitsmappe" mit:

Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
If Intersect(Sh.Range("C11:C160"), Target) Is Nothing Or _
Target.Count > 1 Then Exit Sub

With Sh.Range("C11:G160")
.Sort key1:=Sh.Range("C11"), order1:=xlAscending, _
Header:=xlNo
End With
End Sub


Mit freundlichen Grüßen
Claus
--
Windows10
Microsoft 365 for business

Johann Rupp

unread,
Jan 10, 2022, 5:59:01 AM1/10/22
to
Am 09.01.2022 um 14:23 schrieb Claus Busch:
> Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
> If Intersect(Sh.Range("C11:C160"), Target) Is Nothing Or _
> Target.Count > 1 Then Exit Sub
>
> With Sh.Range("C11:G160")
> .Sort key1:=Sh.Range("C11"), order1:=xlAscending, _
> Header:=xlNo
> End With
> End Sub

Hallo Claus,

benutze ich deinen Code in einem Test-Workbook funktioniert er.

In Original-Workbook kommt Laufzeitfehler 1004.
Die Sort-Methode des Range-Objektes konnte nicht ausgeführt werden.

Nachfolgende Codezeile wird gelb angezeigt.
.Sort key1:=Sh.Range("C11"), order1:=xlAscending, _
Header:=xlNo

Jetzt müsste ich nur noch wissen wo der Fehler liegt?

--
Johann

Claus Busch

unread,
Jan 10, 2022, 7:23:03 AM1/10/22
to
Hallo Johann,

Am Mon, 10 Jan 2022 11:58:58 +0100 schrieb Johann Rupp:

> In Original-Workbook kommt Laufzeitfehler 1004.
> Die Sort-Methode des Range-Objektes konnte nicht ausgeführt werden.
>
> Nachfolgende Codezeile wird gelb angezeigt.
> .Sort key1:=Sh.Range("C11"), order1:=xlAscending, _
> Header:=xlNo

sorry, Fehler meinerseits.
Probiere es so:

Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
If Intersect(Range("C11:C160"), Target) Is Nothing Or _
Target.Count > 1 Then Exit Sub

With Sh
.Range("C11:G160").Sort key1:=.Range("C11"), order1:=xlAscending, _
Header:=xlNo
End With
End Sub


Johann Rupp

unread,
Jan 10, 2022, 11:35:01 AM1/10/22
to
Sorry Claus,

auch mit deinem überarbeiteten Code der selbe Fehler.
Laufzeitfehler 1004.

Die Sort-Methode des Range-Objektes konnte nicht ausgeführt werden.

könnte es sein, dass sich das mit andern Sub/Makros beisst?
--
Johann

Claus Busch

unread,
Jan 10, 2022, 12:04:52 PM1/10/22
to
Hallo Johann,

Am Mon, 10 Jan 2022 17:35:00 +0100 schrieb Johann Rupp:

> auch mit deinem überarbeiteten Code der selbe Fehler.
> Laufzeitfehler 1004.
>
> Die Sort-Methode des Range-Objektes konnte nicht ausgeführt werden.
>
> könnte es sein, dass sich das mit andern Sub/Makros beisst?

da es bei dir in einer Testmappe und auch bei mit läuft, nehme ich auch
an, dass ein anderes Makro diesen Fehler verursacht.

Johann Rupp

unread,
Jan 10, 2022, 2:49:19 PM1/10/22
to
Danke Claus,

werde nach und nach etwas deaktivieren, mal sehen was passiert.

--
Johann

Johann Rupp

unread,
Jan 10, 2022, 4:10:10 PM1/10/22
to
Am 10.01.2022 um 18:04 schrieb Claus Busch:
Hallo Claus,

ohne Blattschutz funktionierts.
Andere Codes gehen auch mit Blattschutz. 🤔
Na gut dann halt ohne Blattschutz, darf halt sonst keiner mehr dran.

--
Gruß Johann

Claus Busch

unread,
Jan 10, 2022, 4:13:09 PM1/10/22
to
Hallo Johann,

Am Mon, 10 Jan 2022 22:10:07 +0100 schrieb Johann Rupp:

> ohne Blattschutz funktionierts.
> Andere Codes gehen auch mit Blattschutz. ??
> Na gut dann halt ohne Blattschutz, darf halt sonst keiner mehr dran.

du kannst doch vor dem eigentlichen Code den Blattschutz entfernen und
danach wieder setzen.
0 new messages