Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1204to1208
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Zeilenhöhe per VBA

Zeilenhöhe per VBA
Mandy
Hallo,
ich nutze folgenden Code, um auf einer Seite um die Zellen mit Inhalt einen Rahmen zu ziehen:
Dim rngC As Range, r As Range, s As Shape
Application.ScreenUpdating = False
For Each rngC In Range(Cells(7, 2), Cells(Rows.Count, 2).End(xlUp))
For Each r In rngC.Resize(, 5)
Set s = ActiveSheet.Shapes.AddShape(msoShapeRoundedRectangle, 1, 1, 1, 1)
With s
.Width = r.Width
.Left = r.Left
.Height = r.Height - 2
.Top = r.Top
.Fill.Visible = False
End With
Next r
Next rngC
Wie kann ich erreichen, damit der Code die entsprechende Zeile erst auf optimale Höhe stellt (autofit) , BEVOR der Rahmen gesetzt wird.
Wenn ich das nachhher mache, muss ich jedes mal die GRösse meiner Rahmen nachjustieren.
Danke
Mandy

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Zeilenhöhe per VBA
24.03.2011 10:14:41
Hajo_Zi
Hallo Mandy,
warum benutzt Du nicht den Rahmen, den Excel schon hat?

AW: Zeilenhöhe per VBA
24.03.2011 10:16:07
Mandy
HI,
weil dieser abgerundete Ecken hat.
Mandy
AW: Zeilenhöhe per VBA
24.03.2011 10:19:58
Matthias
Hallo
probiers so:
Sub mandy()
Dim rngC As Range, r As Range, s As Shape
Application.ScreenUpdating = False
For Each rngC In Range(Cells(7, 2), Cells(Rows.Count, 2).End(xlUp))
Rows(rngC.Row).AutoFit
For Each r In rngC.Resize(, 5)
Set s = ActiveSheet.Shapes.AddShape(msoShapeRoundedRectangle, 1, 1, 1, 1)
With s
.Width = r.Width
.Left = r.Left
.Height = r.Height - 2
.Top = r.Top
.Fill.Visible = False
End With
Next r
Next rngC
End Sub
Gruß Matthias
Anzeige
Danke geht, aber nun anderes Problem:
24.03.2011 11:18:49
Mandy
Hallo,
ja, das Funktioniert, habe aber mit dem Code ein neues Problem: (liegt aber an mir) :
die Autoformen waren seither immer gleich hoch, darum waren auch die abgerundeten Ecken immer gleich groß. (Adjustments.Item)
Wenn ich nun den Fall habe, dass eine Autoform, aufgrund der grossen Textmenge höher gemacht werden soll, dann wird automatisch auch die Kurfe mit größer gezogen. es scheint so: je höher die Zeile oder AutoForm, deste größer wird der Bogen.
Ich habe es versucht mit :
.Adjustments.Item(1) = 0.0824
Dieser Wert scheint sich aber immer an der Höhe der Autoform zu orientieren.
Frage: Gibt es eine Einstellung ,mit der ich die Adjustments.Item Eigenschaft auf einen festen Wert stellen kann, egal, wie hoch die Autoform ist ?
zB .Adjustments.Item(1) = 0.0824
Das sieht nämlich total bescheuert aus, wenn zwei Autoformen in zwei unterschiedlichen Zeile mit unterschiedlichen Höhen direkt übereinander liegen und der eine Bogen ist viel größer als der andere.
Danke für Eure Hilfe
Mandy
Anzeige
AW: Danke geht, aber nun anderes Problem:
24.03.2011 12:16:40
Rudi
Hallo,
z.B.
.Adjustments.Item(1) = 5 / .Height
Gruß
Rudi
Danke, das funktioniert owT
25.03.2011 07:22:48
Mandy

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige