PDA

Vollständige Version anzeigen : vba borders fehler 1004 nach eingespielten Sicherheitsabdates


bube_h
24.03.2009, 18:09
Hallo Forum,
kennt jemand das Problem mit dem Setzen von Zellrahmen unter vba?

Ich konnte zweifelsfrei verifizieren, dass nach Aufspielen von Sicherheitsupdates die bisher jahrelang fehlerlos funktionierenden Makros beim Setzen der Weight-Eigenschaft hängen bleiben.
Der Code:
With Range(Cells(JZeile, QSpalte), Cells(QZeile, TSpalte))
.Borders(xlBottom).Weight = xlHairline
.Borders(xlLeft).Weight = xlHairline
.Borders(xlRight).Weight = xlHairline
End With
war bisher immer lauffähig.

Durch die vielen Fehlerbenachrichtigungen von den Usern meines Tools (Abwesenheitsplaner) musste ich den Code in z.B. Borders(xlEdgeLeft) ändern.
das sowohl unter Xl2002 bis 2007 funktionierte.

Die wahre Ursache der Probleme (Speicher?) ist für mich aber deshalb noch nicht gefunden!
Der Abbruch erfolgte zwar immer noch an der gleichen Programmzeile aber an unterschiedlichen Zelladressen.

Ein heute neu installierter PC mit Office2007 produzierte nach der Aufspielung von 28 Sicherheitspatches einen weiteren Programmabbruch an einer ganz anderen Makro-Stelle aber bei der selben Borders.Weight-Eigenschaft (vorher gings fehlerlos).

Wer kann mir zu diesem Thema Lösungsansätze vermitteln?
Gruß Bernd

jinx
24.03.2009, 18:25
Moin, Bernd,

For lngCounter = 1 To 3
With Cells(lngCounter + 4, 3).Borders(lngCounter)
.Weight = xlHairline
.Color = RGB(255, 0, 0)
End With
Next lngCounter
Obwohl der untere Rand eigentlich statt der 3 die 4 sein müsste, wenn ich mich recht erinnere.

bube_h
24.03.2009, 18:51
Nicht der Code ist mein Problem, sondern die Probleme nach Einsatz von net.framework 2 oder den Patches.
bb

bube_h
01.04.2009, 17:26
Hallo Forum,
nach einigen Test mit PC's die xl2002, xl2003 und xl2007 installiert hatten bin ich zu der folgenden Erkenntnissen gekommen.
1) Problematisch war das Setzen einer Rahmenlinie immer dann, wenn ich über berechnete Cells-Adressierung einen Rahmen setzen wollte.
2) Wenn ich die berechnete Cells-Adresse in einen String umgewandelt hatte und sie dann einer Range-Funktion übergeben habe, war das Setzen eines Rahmens weniger störanfällig.
3) Eine noch vorhandene bedingte Formatierung mit einem rechten Rahmen (Wochenabschluss Sonntag) störte das normale Setzen der Rahmenlinien beträchtlich.
4) Abhilfe brachte die vorherige Löschung der bedingten Formatierung, Setzen des normalen Rahmens und anschließende Aktivierung der bedingten Formatierung.
5) Auch das Ausblenden von Zeilen und Spalten direkt am Sichtbereich(Datenbereich) war ein auslösender Fehler beim Setzen von Rahmenlinien.
Dies konnte ich durch eine zusätzliche Spalte/Zeile mit kleinem Breitenmaß korrigieren.
Das alles nur um die wechselnden Tagesspalten eines jeden Monats pro Jahres wieder optisch zu restaurieren.

Wie oben schon berichtet traten diese Probleme erst nach installiereten Patches oder Sicherheitsupdates auf.
Vorher funktionierte mein Tool jahrelang ohne diese aufgetretenen Fehler.

Vielleicht bleiben ja andere Anwender auch an dem Auftreten dieser Ungereimtheiten hängen und können mit meinen Lösungsansätzen etwas für sich erreichen.
Gruß Bernd