Уважаемые форумчане, помогите решить такую проблему: На рабочем листе, стрелки (нарисованная линия с окончанием в виде стрелки) постоянно должны создаваться /перемещаться (по принципу drag-and-drop) /удаляться, и в каждый момент времени на листе стрелок может быть абсолютно разное количество.
С созданием стрелок проблем нет - каждая из них создается из конкретной активной ячейки с помощью макроса
Заранее хочу сообщить что я в VBA новенькая, и для опытных этот код наверняка покажется г.... кодом. Но главное, что он свое дело делает.
Перемещение (по принципу drag-and-drop) выполняется мышью.
А вот с удалением стрелок проблема. Подскажите, как можно макросом удалить стрелку, которая начинается из конкретной ячейки? (т е чтобы в коде идентификация удаляемой стрелки (перед удалением) определялась от конкретной ячейки, в которой расположено начало стрелки, и только потом стрелка удалялась). Также если из конкретной ячейки начинаются две и более стрелок, то они тоже должны быть удалены.
Заранее спасибо всем откликнувшимся!
С созданием стрелок проблем нет - каждая из них создается из конкретной активной ячейки с помощью макроса
Код |
---|
ActiveCell.Select With ActiveSheet.Shapes.AddLine(Selection.Left + Selection.Width / 2, Selection.Top + Selection.Height / 2, Selection.Left + Selection.Width / 2 + 50, Selection.Top + Selection.Height / 2 + 50).Line .EndArrowheadStyle = msoArrowheadTriangle .ForeColor.RGB = RGB(0, 0, 0) .Weight = 1 End With |
Перемещение (по принципу drag-and-drop) выполняется мышью.
А вот с удалением стрелок проблема. Подскажите, как можно макросом удалить стрелку, которая начинается из конкретной ячейки? (т е чтобы в коде идентификация удаляемой стрелки (перед удалением) определялась от конкретной ячейки, в которой расположено начало стрелки, и только потом стрелка удалялась). Также если из конкретной ячейки начинаются две и более стрелок, то они тоже должны быть удалены.
Заранее спасибо всем откликнувшимся!