Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 17.05.2017, 11:52   #1
Red_Garry
Пользователь
 
Регистрация: 03.10.2010
Сообщений: 55
По умолчанию Работа с графическим объектом на рабочем листе

Здравствуйте!
Имеем команду VBA
Код:
Selection.ShapeRange.IncrementRotation 3
- некий выделенный объект, к примеру, линия, поворачивается на угол 3. Вопрос:
Можно ли поворачивать объект не выделяя его? Т.е. дать команду объекту с УКАЗАННЫМ именем повернуться (или изменить координаты), не задействуя Selection?

Спасибо!

Последний раз редактировалось Red_Garry; 17.05.2017 в 11:57.
Red_Garry вне форума Ответить с цитированием
Старый 17.05.2017, 12:34   #2
kuklp
Участник клуба
 
Регистрация: 02.05.2010
Сообщений: 1,390
По умолчанию

Да без проблем:
Код:
ActiveSheet.Shapes("Линия 1").IncrementRotation 3
P.S. никак часики ваяете?
mailto: kuklp60@gmail.com, ящики для благодарностей:
WM Z206653985942, R334086032478, U238399322728

Последний раз редактировалось kuklp; 17.05.2017 в 12:36.
kuklp вне форума Ответить с цитированием
Старый 17.05.2017, 13:11   #3
Red_Garry
Пользователь
 
Регистрация: 03.10.2010
Сообщений: 55
По умолчанию

Спасибо за ответ!Хочу попробовать автоматизировать задачку по расчёту эпюр по сопромату. Вбил исходные данные в прогу на входе и получил красивую картинку на выходе. Ексель, по моему, должен справиться с этим. Ну, это пока только прикидки
Red_Garry вне форума Ответить с цитированием
Старый 17.05.2017, 13:27   #4
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

если значения в характерных точках посчитаны - используйте диаграммы excel и получите картинку, которая полностью совпадет с внешним видом эпюры, так, как будто Вы рисовали ее вручную
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума Ответить с цитированием
Старый 17.05.2017, 13:36   #5
Red_Garry
Пользователь
 
Регистрация: 03.10.2010
Сообщений: 55
По умолчанию

Спасибо за ответ
Red_Garry вне форума Ответить с цитированием
Старый 18.05.2017, 08:52   #6
Red_Garry
Пользователь
 
Регистрация: 03.10.2010
Сообщений: 55
По умолчанию

Вопрос вдогонку:
Как изменить координаты графического объекта?
Есть такой код
Код:
Worksheets("Лист1").Shapes("strela").ScaleWidth 2, msoFalse, msoScaleFromTopLeft
а нельзя ли явно указать x1,y1,x2,y2?

Спасибо!
Red_Garry вне форума Ответить с цитированием
Старый 18.05.2017, 08:58   #7
Aleksandr H.
2 the Nation Glory
Старожил
 
Аватар для Aleksandr H.
 
Регистрация: 27.05.2014
Сообщений: 3,289
По умолчанию

Код:
with Worksheets("Лист1").Shapes("strela")
.Top = XXXX
.Left = XXXX
end with
Кто умер, но не забыт, тот бессмертен.
Лао-Цзы.
Aleksandr H. вне форума Ответить с цитированием
Старый 18.05.2017, 09:38   #8
Red_Garry
Пользователь
 
Регистрация: 03.10.2010
Сообщений: 55
По умолчанию

Спасибо!
Red_Garry вне форума Ответить с цитированием
Старый 18.05.2017, 09:49   #9
Red_Garry
Пользователь
 
Регистрация: 03.10.2010
Сообщений: 55
По умолчанию

И ещё вопрос вдогонку, если можно.
Есть нужда графические объекты привязать к определённому месту рабочего листа, например, сделать графический указатель на определённую ячейку. Как определить графические координаты требуемой ячейки?

Спасибо!
Red_Garry вне форума Ответить с цитированием
Старый 18.05.2017, 09:57   #10
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

а у ячейки есть такие же свойства .Top, .Left, как и у стрелки, (есть еще ширина и высота и у ячейки, и у стрелки)
простыми арифметическими действиями Вы можете сосчитать координаты "вашей" стрелки-указателя и упереть ее в требуемую точку
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Нахождение кратчайшего пути в графе, расстояния которого записаны в таблице на рабочем листе. VBA Jullia Microsoft Office Excel 4 19.05.2016 00:30
Как узнать сколько кнопок на рабочем листе? RISagitov Microsoft Office Excel 7 26.10.2015 15:51
работа на одном листе с данными из LISTBOX, данные на другом листе konstantin1990 Microsoft Office Excel 3 22.07.2013 15:15
как увеличить число строк на рабочем листе? kragius Microsoft Office Excel 11 22.09.2011 13:27