Шаг 102.
VBA в MSExcel. Работа с графическими объектами. Методы, создающие объекты Shape (продолжение)

    На этом шаге мы рассмотрим методы AddLine и AddTextBox.

    Метод AddLine возвращает объект Shape, являющийся линией (отрезком). Синтаксис:

  AddLine (BeginX, BeginY, EndX, EndY)

    Аргументы:

    Метод AddTextBox возвращает объект Shape, являющийся надписью. Синтаксис:

  AddTextBox (Orientation, Left, Top, Width, Height)

    Аргументы:

    Следующая последовательность инструкций создает три графических объекта: две линии, первая из которых со стрелкой, вторая без стрелки и текстовое поле (рисунок 1).


Рис.1. Графические объекты: линии и текстовое поле

    Вручную эти объекты можно было создать на рабочем листе, используя кнопки Стрелка (Arrow) , Линия (Line) и Надпись (Text Box) панели инструментов Рисование (Drawing).

  ' Линия со стрелкой
  ActiveSheet.Shapes.AddLine(57#, 30#, 174#, 59.25).Select
  With Selection.ShapeRange.Line
    .Weight = 6#
    .Visible = msoTrue
    .Style = msoLineSingle
    .BeginArrowheadStyle = msoArrowheadNone
    .EndArrowheadStyle = msoArrowheadTriangle
    .EndArrowheadWidth = msoArrowheadWidthMedium
    .EndArrowheadLength = msoArrowheadLengthMedium
    .Visible = msoTrue
  End With
  ' Простая линия
  ActiveSheet.Shapes.AddLine(219.75, 23.25, 334.5, 67.5).Select
  With Selection.ShapeRange.Line
    .Visible = msoTrue
    .Style = msoLineThinThick
    .Weight = 4.5
  End With
  ' Текстовое поле
  ActiveSheet.Shapes. _
    AddTextbox(msoTextOrientationHorizontal, _
    69.75, 87.75, 116.25, 76.5).Select
  Selection.Characters.Text = "Пример двух линий"
  With Selection.Characters(Start:=1, Length:=17).Font
    .Name = "Arial Cyr"
    .FontStyle = "полужирный"
    .Size = 12
    .Strikethrough = False
    .Superscript = False
    .Subscript = False
    .OutlineFont = False
    .Shadow = False
    .Underline = xlUnderlineStyleNone
    .ColorIndex = 5
  End With
  With Selection.ShapeRange.Fill
    .ForeColor.SchemeColor = 42
    .Visible = msoTrue
    .Solid
  End With
Текст этого примера можно взять здесь.

    На следующем шаге мы закончим изучение этого вопроса.




Предыдущий шаг Содержание Следующий шаг