Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: drei andere Makros bei Änderung einer Zelle ausführen

drei andere Makros bei Änderung einer Zelle ausführen
15.04.2024 17:02:54
Jörg Bergmann
Hallo!

Ich habe mir das Makro hier im Forum geklaut und möchte, dass nicht nur ein anderes Makro gestartet wird, sondern drei. Ich bin echt Laie und bekomme es absolut nicht hin.

Für euch sicherlich ein Klacks?

Private Sub Worksheet_Change(ByVal Target As Range)

If Not Intersect(Target, Range("F3")) Is Nothing And Target.Count = 1 Then Werte_Soli
End Sub

Anzeige

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: drei andere Makros bei Änderung einer Zelle ausführen
15.04.2024 17:05:12
Jörg Bergmann
und danach gerne noch eine Messagebox, dass die Werte geändert wurden.
AW: drei andere Makros bei Änderung einer Zelle ausführen
15.04.2024 17:31:46
Yal
Hallo Jörg,

sodermassen einen Klax, dass wir überrascht sind, dass Du die Lösung einfach gegoogelt hast, anstatt auf unsere Antwort zu warten ;-)

Sieht so aus:
Private Sub Worksheet_Change(ByVal Target As Range)

If Not Intersect(Target, Range("F3")) Is Nothing And Target.Count = 1 Then
Werte_Soli
zweiteMakro_Starten Sub zweiteMakro_starten
dritteMarko_starten 'usw
MsgBox "Fertig!"
End If
End Sub

Sub zweiteMakro_starten()
'....
End Sub

Erklärung: der If_Statement kann auf eine Zeile
If MeineVariabe = True Then Mache_das

(wobei der "= True" gespart werden kann, denn MeineVariable bereits "True" beinhaltet: die Prüfung, ob "True = True" ergibt "True")
oder auf mehrere. Dann muss einen "End If" vorkommen. Dazwischen kann einen "Else" platziert werden
If MeineVariabe Then 

Mache_das
Else
Mache_was_anderes
End If

VG
Yal
Anzeige
AW: drei andere Makros bei Änderung einer Zelle ausführen
15.04.2024 17:50:06
Jörg Bergmann
Hallo!

Dachte, es kann doch nicht so schwer sein, etwas zu finden. ;) Aber hatte erst gegooglet und dann gefragt. Weil ihr seid einfach besser als google. ;) Und danke für die Erläuterung, erwäge tatsächlich VBA zu erlernen.

Klappt super, nun habe ich aber festgestellt, dass die anderen Makros nicht wie gewünscht die Werte einfach von einer Zelle in die andere kopieren, sondern den errechneten Wert in der Ursprungszelle durch den fixen Wert ersetzen:


Sub Werte_Körperschaftssteuer()

Range("K36").Select
Selection.Copy
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
Range("K38").Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False

End Sub
Anzeige
AW: drei andere Makros bei Änderung einer Zelle ausführen
15.04.2024 18:03:13
Onur
Was hast DU denn erwartet bzw was ist falsch daran?
AW: drei andere Makros bei Änderung einer Zelle ausführen
15.04.2024 19:02:41
Jörg Bergmann
Er soll den errechneten Wert aus K36 kopieren und als absoluten Wert in K38 eintragen.

Funktioniert auch, ABER der errechnete Wert wird ebenfalls durch einen absoluten Wert ersetzt, so dass ich jedes Mal die Formel neu eingeben muss.
AW: drei andere Makros bei Änderung einer Zelle ausführen
15.04.2024 19:05:14
Onur
Errechneter Wert und absoluter Wert? Was soll das denn sein?
Eine Zelle hat nur einen Wert und der kann entweder errechnet oder manuell eingetragen sein.
Anzeige
AW: drei andere Makros bei Änderung einer Zelle ausführen
15.04.2024 19:01:57
Yal
Hallo Jörg,

ja, mit Menschen zu sprechen ist mir auch lieber als mit Maschinen.

Ich gebe es unkommentiert raus. Vielleicht kannst Du selber erkennen, wo der Denklücke war.

Sub Werte_Körperschaftssteuer()

Range("K36").Copy
Range("K38").PasteSpecial Paste:=xlValues
End Sub

"Select" und "Selection" ergeben sich aus der Aufzeichnung. Es wird immer zuerst etwas angeklickt (".. .Select") bevor etwas damit gemacht werden kann ("Selection. ..").
Beim "per Hand" Programmieren kann man diese weglassen.

VG
Yal
Anzeige
AW: drei andere Makros bei Änderung einer Zelle ausführen
15.04.2024 19:10:04
Jörg Bergmann
Hatte das von Chat GPT... ;) So funktioniert es nun, danke! Fange gerade an mich für das Erlernen von VBA zu begeistern, habe mir also noch nicht viel Wissen angeeignet, von daher erkenne ich den Denkfehler nicht wirklich, aber ggf. später. ;)
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige