danke fürs Lob und Lösungsalternative:
11.07.2013 09:43:50
Klaus
Hallo Benedikt,
danke für dein Lob, geht runter wie Öl :-)
Eigentlich wollte ich schreiben: "Was Jack schon schrieb, es geht nicht". Aber weil ich so schön gebauchpinselt wurde biete ich einen Workaround :-)
Sub ErstelleUnterlinie()
Call MakeBorderUnderline(Range("A15:G15"), 3.5, 255, 0, 0)
End Sub
Sub MakeBorderUnderline(rng As Range, iWeight As Double, rRGB As Integer, gRGB As Integer, bRGB _
As Integer)
Dim objLine As Object
Set objLine = ActiveSheet.Shapes.AddConnector(msoConnectorStraight, 348, 75.75, 411, 75.75)
With objLine
.Top = rng.Offset(1, 0).Top
.Left = rng.Left
.Line.Weight = iWeight
.Line.ForeColor.RGB = RGB(rRGB, gRGB, bRGB)
.Width = rng.Width
End With
End Sub
Call MakeBorderUnderline(Range("A15:G15"), 3.5, 255, 0, 0)
erstellt eine quasi-Unterstreichung des Bereiches A15:G15 mit einer Linienstärke von 3,5 in der Farbe rot (RGB 255,0,0). Alles variablen, die du anpassen kannst wie du möchtest.
Wenn die Range mehrere Zeilen oder verbundene Zellen umfasst, passiert Blödsinn! Fehlerbehandlung hab ich keine eingebaut.
Das ist zwar streng genommen keine Rahmenlinie, sieht aber (auf dem Ausdruck) genauso aus! Und ich glaube, darum geht es hier.
Grüße,
Klaus M.vdT.