Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1636to1640
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Code ändern für ein Modul

Code ändern für ein Modul
15.08.2018 16:23:14
Fred
Hallo zusammen
Ich habe mir einen Code zusammen gefrickelt für das Worksheet_Change(ByVal Target As Range) Event. Ich würde das aber gerne als Modul umwandeln damit ich die Funktion beim aktivieren des Sheets nutzen kann. kann mir da jemand der Ahnung hatt unter die Arme greifen. Damit mann nichts Nachbauen muss habe ich mal eine Tabelle hochgeladen . Im ganzen geht es darum das sich die Autoform farblich ändert wenn sich das Datum ändert.
Grüße Fred
https://www.herber.de/bbs/user/123355.xls

12
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Code ändern für ein Modul
15.08.2018 16:27:39
Hajo_Zi
Hallo Fred,
ersetze Target durch ActiveCell

Beiträge von Werner, Luc, robert, J.O.Maximo und folgende lese ich nicht.
AW: Code ändern für ein Modul
15.08.2018 17:23:32
Fred
Hallo Hajo
Vielen dank für die schnelle Antwort. Ich habe da noch eine Frage zum Thema Datum. ich versuche Gerade es so einzustellen das die färbung erst 30 Tage vor oder hinter Heute einsetzt aber irgendwie erkennt er das nicht Richtig.
Select Case ActiveCell
Case Is >= Heute + 30
.RGB = RGB(0, 250, 0)
Case Is .RGB = RGB(250, 0, 0)
End Select
es wird nur dieses richtig ausgeführt was ist daran falsch
Select Case ActiveCell
Case Is >= Heute
.RGB = RGB(0, 250, 0)
Case Is .RGB = RGB(250, 0, 0)
End Select
grüße Fred
Anzeige
AW: Code ändern für ein Modul
15.08.2018 17:27:05
Hajo_Zi
ich sehe nicht wie Du die Variable Heute definiert hast.
Ich hätte Date benutzt.
Gruß Hajo
AW: Code ändern für ein Modul
15.08.2018 17:34:41
Fred
Hallo
Eigendlich nur so. Die Formel =Heute() steht im Tabellenblatt
Sub wann()
'obere Walzen
Dim Heute As Date
Heute = Date
If Target.Address = "$AG$1" Then
With Worksheets("AQW´s").Shapes("Oval 30").Fill.ForeColor
Select Case  ActiveCell
Case Is >= Heute +30
.RGB = RGB(0, 250, 0)
Case Is 
Grüße Fred
AW: Code ändern für ein Modul
15.08.2018 17:43:11
Hajo_Zi
ich bin dann raus, da meine Beiträge nicht komplett gelesen werden.
Das wird schon seinen Grund haben.

Case Is >= (Heute + 30)

Gruß Hajo
Anzeige
AW: Code ändern für ein Modul
15.08.2018 18:24:15
Fred
Hallo Hajo
Danke für Deine Gedult, aber der Code funktioniert jetzt so irgendwie nicht. es wird zwar kein Fehler ausgegeben aber eine Veränderung der Farbe wird auch nicht herbei geführt. egal wie ich das Datum verändere.
Wer weis Rat
Hier noch mal der abgeänderte Code.
Dim Heute As Date
Heute = Date
If ActiveCell = "$AG$1" Then
With Worksheets("AQW´s").Shapes("Oval 30").Fill.ForeColor
Select Case ActiveCell
Case Is >= (Heute + 30)
.RGB = RGB(0, 250, 0)
Case Is .RGB = RGB(250, 0, 0)
End Select
End With
End If
Grüße Fred
AW: Code ändern für ein Modul
15.08.2018 18:56:06
Hajo_Zi
Gut ich wiederhole mich mal.
Man muss meine Beiträge nicht lesen.
In der Aktuellen Zelle steht nicht "$AG$1"
Gruß Hajo
Anzeige
AW: Code ändern für ein Modul
15.08.2018 20:11:09
Werner
Hallo Fred,
ich habe mir eben mal deine Musterdatei angesehen.
Da gibt es einige Probleme/Fragen.
1. Deine Shapes beginnen unten links mit Oval 3, dann Oval 1 dann Oval 2. Der Rest nach rechts ist dann fortlaufend duchnummeriert. Ist das so gewollt oder ein Versehen?
2. In AG1 bis AG15 und AH1 bis AH15 hast du Text und keine echten Datumswerte. Nur in AG16 und in AH16 sind echte Datumswerte. Wo kommen diese Daten (mit denen willst du ja wohl das Datum in A1 abgleichen) denn her? Werden die händisch eingetragen oder sind die das Ergebnis einer Formelberechnung? In den Zellen steht nur der Wert und keine Formel.
Das sollte erst mal geklärt werden.
Gruß Werner
Anzeige
AW: Code ändern für ein Modul
17.08.2018 23:01:58
Fred
Hallo Werner
sorry das ich jetzt erst Antworte war leider unterwegs ohne Laptop. Die Datumswerte werden über eine userform (TextBox) eingegeben aus einem Anderen Formular. Die Unwillkürlichkeit der Ovale ist einfach so entstanden beim bauen der Tabelle . Deshalb habe ich jeder Form von Hand einfach die Zelladresse zugewiesen .
Grüße Fred
AW: Code ändern für ein Modul
18.08.2018 01:21:49
Werner
Hallo Fred,
ich würde die Shapes fortlaufend, beginnend unten links nach oben rechts, durchnummerieren. Dann in einer Spalte alle Datumswerte untereinander (nicht in zwei separaten Spalten). So lässt sich dann einfach das Datum aus Zeile 1 dem Shape Oval 1, Zeile 2 dem Shape Oval 2 usw. zugeordnet werden.
Im Makrocode kann man dann ganz einfach mit einer Schleife über die Datumseinträge und die Shapes laufen.
Lade doch mal deine Mappe mit der Userform für die Eingabe der Datumswerte hoch.
Komme allerdings jetzt über das Wochenende nicht mehr dazu und würde mir das dann am Montag mal anschauen.
Sollte dieser Beitrag dann schon im Archiv gelandet sein (nach etwa einer Woche werden die Beiträge automatisch ins Archiv verschoben und man kann dann nicht mehr antworten) dann würde ich einfach einen neuen Beitrag eröffnen mit dem Betreff @Fred. Du müsstest dann halt mal in der Forumsliste nachschauen.
Gruß Werner
Anzeige
AW: Code ändern für ein Modul
18.08.2018 16:21:45
Fred
Hallo Werner
Ich habe das mal so geändert wie Du es vorgeschlagen hast, aber dann müsste ich auch den Code hinter der Userform ändern weil die Werte so nicht mehr stimmen. ich habe das mal im Code Kommentiert wo der Code jetzt eigendlich auch anders sein müsste. Ich wüsste nur nicht wie ich das ändern könnte.
Hier mal die abgeänderte Mappe
https://www.herber.de/bbs/user/123408.xls
Grüße Fred
schau mir das am Montag mal an
18.08.2018 16:40:19
Werner
Hallo Fred,
im Moment kann ich die Datei nicht herunterladen. Schau am Montag danach und melde mich.
Wie schon gesagt, ggf. muß ich einen neuen Beitrag aufmachen.
Gruß Werner
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige