Hallo Community,
ich habe folgende Herausforderung ;-)
Ich habe ein Tabellenblatt bei dem per Makro Zeilen gelöscht bzw. hinzugefügt werden können. Diese erfolgt immer bei den letzten Zeilen in einem Bereich. Die Zeilen über der Letzen haben eine gepunktete Rahmenlinie. Die Letzte eine Rahmenlinie geschlossen unten (Bereich von A:E.).
Die Zeile (Bereich von A:E.). darunter ist im verbunden, mit dem Inhalt Änderungen, nach der suche ich als fixen Punkt.
Wenn ich jetzt Zeilen lösche ist die Rahmenlinie unten weg, klar. Nun habe ich ein Makro erstellt welches diese vor dem Druck wieder hinzufügt, dann verschwindet aber die Toplinie bei derZeile darunter. Warum?
Vertausche ich das Vorgehen erst Rahmenlinie oben hinzufügen und dann bei Zeile darüber unten einfügen ist die bei der Zeile darunter weg.
Hier mein Code:
Sub RahmenlinienEinfügen()
Dim ws As Worksheet
Dim rng As Range
Dim cell As Range
Dim foundRow As Long
' Arbeitsblatt festlegen (aktives Blatt)
Set ws = ActiveSheet
' Bereich festlegen, in dem gesucht wird (Spalte A)
Set rng = ws.Columns("A:E")
' Suche nach "Change History"
On Error Resume Next
Set cell = rng.Find(What:="Änderungen", LookIn:=xlValues, LookAt:=xlWhole, MatchCase:=False)
On Error GoTo 0
' Wenn gefunden
If Not cell Is Nothing Then
foundRow = cell.Row
'Rahmenlinie oben für die Zeile mit "Änderungen" (Spalte A:E)
With ws.Range(ws.Cells(foundRow, 1), ws.Cells(foundRow, 5)).Borders(xlEdgeTop)
.LineStyle = xlContinuous
.Weight = xlThin
.Color = RGB(0, 0, 0) ' Schwarz
End With
' Rahmenlinie unten für die Zeile darüber (Spalte A:E), falls vorhanden
If foundRow > 1 Then
With ws.Range(ws.Cells(foundRow - 1, 1), ws.Cells(foundRow - 1, 5)).Borders(xlEdgeBottom)
.LineStyle = xlContinuous
.Weight = xlThin
.Color = RGB(0, 0, 0) ' Schwarz
End With
End If
End If
End Sub
|