У меня есть следующий макрос, который должен создать поле, связанное с определенным рабочим листом в рабочей книге, на каждом листе рабочей книги:
Option Explicit
Sub gndhnkl()
Dim ws As Worksheet
Dim sh As Shape
For Each ws In ThisWorkbook.Worksheets
If InStr(1, ws.Name, "Summering", vbBinaryCompare) <= 0 Then
For Each sh In ws.Shapes
sh.Delete
Next sh
Call Macro1(ws)
End If
Next ws
End Sub
Sub Macro1(ws As Worksheet)
Dim venstre As Double, topp As Double, breidde As Double, høgde As Double
Dim sh As Shape
venstre = ws.Range("B16").Left
topp = ws.Range("B16").Top
breidde = 110
høgde = 68
Set sh = ws.Shapes.AddShape(msoShapeRoundedRectangle, venstre, topp, breidde, høgde)
With sh.TextFrame2.TextRange
.Characters.Text = "Til summering, person"
.Font.Size = 13
.ParagraphFormat.Alignment = msoAlignCenter
.Parent.VerticalAnchor = msoAnchorMiddle
End With
ws.Hyperlinks.Add Anchor:=sh, Address:="", SubAddress:=Replace(Summering_person.Range("A1").Address(external:=True), "[" & ThisWorkbook.Name & "]", "", 1, -1, vbBinaryCompare)
End Sub
По большей части это работает так же, как я ожидаю, но по какой-то причине размер шрифта в добавленной форме не установлен на 13, как я ожидаю, но остается 11.
т.е. похоже, что строка .Font.Size = 13
(sh.TextFrame2.TextRange.Font.Size = 13
) не выполнена.
Где здесь моя ошибка, и что мне нужно сделать, чтобы макрос установил размер шрифта для фигуры?