Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

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

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

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

Здравствуйте!
Имеем команду VBA
Код:

Selection.ShapeRange.IncrementRotation 3

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

Спасибо!

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

icq: 4190413
skype: pilipnik
По умолчанию

Да без проблем:
Код:

ActiveSheet.Shapes("Линия 1").IncrementRotation 3

P.S. никак часики ваяете?
__________________
mailto: kuklp60@gmail.com, ящики для благодарностей:
WM Z206653985942, R334086032478, U238399322728

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

Спасибо за ответ!Хочу попробовать автоматизировать задачку по расчёту эпюр по сопромату. Вбил исходные данные в прогу на входе и получил красивую картинку на выходе. Ексель, по моему, должен справиться с этим. Ну, это пока только прикидки
Red_Garry вне форума   Ответить с цитированием
Старый 17.05.2017, 14:27   #4
IgorGO
МегаМодератор
СуперМодератор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Адрес: УКРАЇНА, Київ
Сообщений: 8,996
Репутация: 1710

icq: 7934250
skype: i2x0,5
По умолчанию

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

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

Вопрос вдогонку:
Как изменить координаты графического объекта?
Есть такой код
Код:

Worksheets("Лист1").Shapes("strela").ScaleWidth 2, msoFalse, msoScaleFromTopLeft

а нельзя ли явно указать x1,y1,x2,y2?

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

Код:

with Worksheets("Лист1").Shapes("strela")
.Top = XXXX
.Left = XXXX
end with

__________________
Mailto: media.project@ukr.net
Aleksandr H. вне форума   Ответить с цитированием
Старый 18.05.2017, 10:38   #8
Red_Garry
Форумчанин
 
Регистрация: 03.10.2010
Сообщений: 55
Репутация: 10
По умолчанию

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

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

Спасибо!
Red_Garry вне форума   Ответить с цитированием
Старый 18.05.2017, 10:57   #10
IgorGO
МегаМодератор
СуперМодератор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Адрес: УКРАЇНА, Київ
Сообщений: 8,996
Репутация: 1710

icq: 7934250
skype: i2x0,5
По умолчанию

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

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

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


04:41.


Powered by vBulletin® Version 3.8.8 Beta 2
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.

RusProfile.ru


Справочник российских юридических лиц и организаций.
Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru