Страницы: 1
RSS
Как перемещать фигуры по координатам в таблице
 
Здравствуйте.
У меня появился вопрос по макросам ВБА.

На листе несколько фигур.
Как по обновляющимся координатам в таблице J:L - единократно перемещать фигуры ?
(Не удалять и размещать заново, а именно перемещать те что есть.)
 
А X и Y - это что за координаты?
 
задайте фигурам новые значения для свойств Top и Left - они переместятся в новые координаты
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете!
 
Юрий М, это координаты куда надо переместить фигуры.
 
только сначала приведи в порядок имена шейпов
Код
Sub qwert()
    Dim r, m, i, o
    m = [j6..l26].Value
    On Error Resume Next
    For i = 1 To UBound(m)
        Set o = ActiveSheet.Shapes(m(i, 1))
        o.Left = m(i, 2)
        o.Top = m(i, 3)
    Next i
End Sub
Изменено: Александр Моторин - 28.07.2020 00:52:12
 
Код
Sub Remove2()
  Dim r&, s$
  r = 6: On Error Resume Next
  With ActiveSheet.Shapes
  Do While Not IsEmpty(Cells(r, 10))
    .Item(Cells(r, 10)).Left = Cells(r, 11)
    .Item(Cells(r, 10)).Top = Cells(r, 12)
    If Err Then s = s & ", " & Cells(r, 10): Err.Clear
    r = r + 1
  Loop
  End With
  If s <> "" Then MsgBox "Не найдены овалы:" & vbLf & Right(s, Len(s) - 2)
End Sub
Изменено: Ігор Гончаренко - 28.07.2020 01:04:35
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете!
 
Спасибо за подсказки.
 
Цитата
plank1433 написал:
это координаты куда надо переместить фигуры.
Это как раз понятно ))
Я спрашивал, что за система координат. Теперь ясно: Top и Left.
Страницы: 1
Наверх