Есть ли способ получить точное - например, в десятичном формате - положение х / у направляющей с помощью VBA?
При получении положения направляющих в PPT через VBA результат не такой точный, как требуется. Десятичные разряды опущены. Это сбивает с толку меня, так как тип переменной "Single", который должен включать десятичные разряды.
Основная цель - «привязать» формы всех видов к направляющим с помощью VBA. Вариант использования: пользователь выбирает одну или несколько фигур и хочет выровнять их все по крайней левой направляющей в презентации, просто нажав кнопку.
Пока мой код работает нормально, единственная проблема заключается в том, что фигуры не точно совмещены с направляющими.
Sub align_left()
Dim shp As Shape
Dim gd As Guide
With ActiveWindow.Selection
On Error Resume Next
x_gd = ActiveWindow.Width
MsgBox x_gd
For Each gd In ActivePresentation.SlideMaster.Guides
If gd.Orientation = ppVerticalGuide And gd.Position < x_gd Then
x_gd = gd.Position
End If
Next
MsgBox x_gd
For Each shp In .ShapeRange
shp.Left = x_gd
Next
End With
End Sub
Ожидается: фигуры «привязываются» к направляющим.
Фактически: фигуры перемещаются ЗАКРЫТО на направляющие, но в зависимости от положения направляющей между направляющими и формами все еще остается зазор.