Worksheet_Change(ByVal Target As Range)

18/07/2009 - 13:30 von Heinrich Cornelißen | Report spam
Hallo zusammen,

ich habe in Excel 2007 das unten beispielhaft angefügte Makro geschrieben,
das nach Eingabenderung in wahlweise vorgegebenen Datenfeldern und
anschließender Datenfreigabe in der aktiven Tabelle ein Makro startet.

Worksheet_Change(ByVal Target As Range)
If Intersect(Target, Range("A1,A2,A3")) Is Nothing _
Then Exit Sub

' Hier folgt das Makro, das einen Tabellenbereich an eine andere Stelle
kopiert.

End Sub

Das Makro funktioniert in Excel 2007 auch problemlos, leider aber nicht in
Excel 2002. Welche Änderung(en) muss ich vornehmen, dass dieses Makro auch
abwàrtskompatibel làuft?

Gruß
Heinrich
 

Lesen sie die antworten

#1 Claus Busch
18/07/2009 - 13:47 | Warnen spam
Hallo Heinrich,

Am Sat, 18 Jul 2009 13:30:34 +0200 schrieb Heinrich Cornelißen:

Worksheet_Change(ByVal Target As Range)
If Intersect(Target, Range("A1,A2,A3")) Is Nothing _
Then Exit Sub

' Hier folgt das Makro, das einen Tabellenbereich an eine andere Stelle
kopiert.

End Sub



Worksheet_Change ist eine Ereignisprozwdur und gehört in das Codefenster
der entsprechenden Tabelle. Also deine 2002er Version öffnen, mit Alt+F11
in den VB-Editor wechseln, dort im Projektexplorer einen Doppelklick auf
das entsprechende Tabellenblatt und dann den Code in das Fenster einfügen.
Du brauchst die Zellen nicht einzeln aufzuführen. Du kannst sie als Bereich
eingeben:
If Intersect(Target, Range("A1:A3")) Is Nothing _
Then Exit Sub


Mit freundlichen Grüssen
Claus Busch
Win XP PRof SP2 / Vista Ultimate SP2
Office 2003 SP2 /2007 Ultimate SP2

Ähnliche fragen