Makrokollision
22.02.2007 11:20:00
Kurt
Ich habe einige Tabellenblätter mit einem Markro versehen, dass bei Aktivierung des Tabellenblattes aktiv wird, versehen. Ich nutze diese Methode um Kopf- und Fusszeilen je nach gewählter Ausgabesprache anzupassen. Die Werte der Kopf- und Fusszeilen hole ich aus einer Tabelle namens "Ligua" (=Sprache).
Das Makro hierzu sieht wie folgt aus:
Private Sub Worksheet_Activate()
'Formattiert Kopf- und Fusszeilen
KopfzeileRechts = Sheets("Start").Range("F20")
FusszeileLinks = Sheets("Lingua").Range("A67")
With ActiveSheet.PageSetup
.RightHeader = "&""Frutiger 45 Light,Bold""&11" & KopfzeileRechts
.LeftFooter = FusszeileLinks
End With
End Sub
Das funktioniert so weit gut. Nun habe ich aber noch ein weiteres Makro, welches Daten importiert neu bündelt und einige Daten hin und her kopiert. Auch das funktioniert einwandfrei. Sobald aber beide Makros aufeinander treffen, erhalte ich einen Fehler.
Sheets("Planung Kapazität").Select
Range("B8").Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
Range("A1").Select
Ich vermute, dass das reguläre Makro (Datenaufbereitung) schneller unterwegs ist, als das Makro, das die Kopf- und Fusszeile aktualisiert. Das Zieltabellenblatt ist also noch nicht bereit, die Selection PasteSpezial-Anweisung zu empfangen.
Hat jemand eine Idee, wie ich das Problem einfach lösen kann, ohne dass ich die Kopf- und Fusszeilenanpassung im Makro "Datenaufbereitung" integrieren muss? Die Worksheet Activate Methode möchte ich grundsätzlich beibehalten!
Danke im Voraus!
Gruss
Kurt