我需要创建标有数字的形状,但形状不会显示整数。
例如,显示的数字为1到9,但是对于10到19,它只显示1。
我不想改变它必须相同的半径。
Sheets(xRiS).Select
Dim textRectangles As Shape
Dim radius As Integer
radius = 15
Set textRectangles = ActiveSheet.Shapes.AddShape(msoShapeOval, (Range("D13").Left - radius / 2), _
Range("D13").Top - radius / 2, radius, radius)
textRectangles.Name = "Groups " & i
textRectangles.TextFrame.Characters.Text = i
textRectangles.TextFrame.VerticalAlignment = xlVAlignCenter
textRectangles.TextFrame.HorizontalAlignment = xlHAlignCenter
textRectangles.TextFrame.Characters.Font.Size = 9
textRectangles.TextFrame.Characters.Font.Name = "Georgia"
textRectangles.Fill.ForeColor.RGB = RGB(220, 105, 0)
textRectangles.Fill.Transparency = 0.5
这是目前的结果:
这是我想要的结果:
如何配置形状以显示数字为10-19的数字?
答案 0 :(得分:0)
有几个理论选项,但似乎它们都不适用于radius = 15
和textRectangles.TextFrame.Characters.Font.Size = 9
。
首先是textRectangles.TextFrame.AutoSize = True
调整形状大小以修复文本 - 然而,这将显着扩展radius
。
第二个是textRectangles.TextFrame2.AutoSize = msoAutoSizeTextToFitShape
- 但是,这仅在最小值为radius = 33
时才有效。
您可能需要考虑增加半径。