Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
740to744
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
740to744
740to744
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Makro: Datum automatisch aktualisieren

Makro: Datum automatisch aktualisieren
10.03.2006 12:51:17
Patrick
Hi, hoffe Ihr könnt mir helfen...
Mein Makro sieht so aus:

Private Sub Worksheet_Change(ByVal Target As Range)
'Dieses Macro überwacht dieses worksheet und wird bei jeder Veränderung aktiv.
'Es wird die jeweilge Zeile in der Range überwacht und bei einer Veränderung wird in
'der Zeile der Veränderung (z) in Spalte 3 (A=1, C=3) das aktuelle Datum eingefügt.
Dim z As Range, ber As Range
Set ber = Intersect(Target, Range("A2:C250"))
If Not ber Is Nothing Then
For Each z In ber
If z <> "" Then Cells(z.Row, 3) = Date
Next z
End If
End Sub

Das funzt auch super, aber nun sind in dem einen Feld Hyperlinks.
Das Makro soll nun auch das Datum aktualisieren, wenn der Links nur ANGEKLICKT wurde. Im moment aktiviert sich das Makro ja erst bei einer Veränderung des Feldes.
1000 Dank
Patrick

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Makro: Datum automatisch aktualisieren
10.03.2006 14:16:42
IngGi
Hallo Patrick,
die beiden Ereignisprozeduren kommen in's Klassenmodul des Arbeitsblattes. Die Prozedur Datum_eintragen() kommt in ein allgemeines Modul (hier: Modul1). Die Variablen z und ber müssen dann natürlich global deklariert werden.
Private Sub Worksheet_FollowHyperlink(ByVal Target As Hyperlink)
Set ber = Intersect(Range(Target.Range.Address), Range("A2:C250"))
Modul1.Datum_eintragen
End Sub
Private Sub Worksheet_Change(ByVal Target As Range)
Set ber = Intersect(Target, Range("A2:C250"))
End Sub
Sub Datum_eintragen()
If Not ber Is Nothing Then
For Each z In ber
If z <> "" Then Cells(z.Row, 3) = Date
Next z
End If
End Sub
Gruß Ingolf
Anzeige
AW: Makro: Datum automatisch aktualisieren
10.03.2006 14:19:03
IngGi
... und gleich einen Fehler entdeckt.
Der Prozeduraufruf Modul1.Datum_eintragen muss natürlich in beide Ereignisprozeduren
Gruß Ingolf
AW: Makro: Datum automatisch aktualisieren
10.03.2006 15:33:34
Patrick
Hi,
danke für Eure Hilfe, aber beide Ansätze funktionieren nicht. Excel ist dann immer sofort platt. Habe einmal kurz noch "Objekt fehlt" gesehen.
Ich glaube der zweite Teil (das Modul1) muss noch einmal angepasst werden...
Habt Ihr noch ne Idee ?
Gruß Patrick
AW: Makro: Datum automatisch aktualisieren
10.03.2006 16:23:41
IngGi
Hallo Patrick,
zwei Dinge sind mir aufgefallen. Erstens ein Fehler von mir. Die Variable z muss nicht global deklariert werden. Es reicht eine Deklaration nur für die Prozedur Datum_eintragen().
Zweitens ruft sich die Prozedur Datum_eintragen() eben durch das Eintragen des aktuellen Datums über die Ereignisprozedur Worksheet_Change selbst auf. Das habe ich mal über Application.EnableEvents abgeschaltet. Somit sieht die Prozedur jetzt so aus:

Sub Datum_eintragen()
Dim z As Range
If Not ber Is Nothing Then
For Each z In ber
If z <> "" Then
Application.EnableEvents = False
Cells(z.Row, 3) = Date
Application.EnableEvents = True
End If
Next z
End If
End Sub
Gruß Ingolf
Anzeige
AW: Makro: Datum automatisch aktualisieren
10.03.2006 16:35:02
Patrick
Ändert leider nix...
AW: Makro: Datum automatisch aktualisieren
10.03.2006 18:01:05
IngGi
Hallo Patrick,
ich habe das nochmal nachgebaut und getestet. Ich habe aber natürlich nur die 3 Prozeduren aus meinen Antworten. Das läuft bei mir einwandfrei. Wenn man in Spalte A oder B etwas in eine Zelle schreibt oder auf einen Hyperlink in diesen Spalten klickt, wird in der entsprechenden Zeile, in Spalte C das aktuelle Datum eingetragen. Ich gehe daher davon aus, dass das Projekt bei dir nicht nur aus diesen 3 Prozeduren besteht. Dann steckt der Fehler wahrscheinlich im veränderten Zusammenspiel zwischen diesen 3 Prozeduren und dem Rest des Projektes. Ich habe dir einmal die von mir nachgebaute Datei hochgeladen:
https://www.herber.de/bbs/user/31794.xls
Gruß Ingolf
Anzeige
AW: Makro: Datum automatisch aktualisieren
21.03.2006 11:08:04
Patrick
War ne Woche im Urlaub...
Habe mich jetzt komplett an deiner Version orientiert und es geht !!!
Super und VIELEN DANK
AW: Makro: Datum automatisch aktualisieren
10.03.2006 14:17:09
Heiko
Hallo Patrik,
es gibt neben dem Ereignis,

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
End Sub

auch das Ereignis,

Private Sub Worksheet_FollowHyperlink(ByVal Target As Hyperlink)
End Sub

das wird ausgelöst wenn du auf einen Hyperlink klickst und diesem folgst. Kannst du dir dann ja auf deine Überwachung anpassen.
Gruß Heiko
PS: Rückmeldung wäre nett !
Anzeige
AW: Makro: Datum automatisch aktualisieren
10.03.2006 15:35:50
Patrick
Das Ereignis ist glaube ich jetzt das richtige...
Der Rest muss leider nur noch angepasst werden, und ich weiss nicht wie !
Gruß Patrick

311 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige