powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Как узнать адрес Shapes'a?
14 сообщений из 14, страница 1 из 1
Как узнать адрес Shapes'a?
    #33952659
Taranaga
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Лист ексель.
На листе в ячейке нарисован квадрат.

Вопрос: как узнать адрес ячейки, в которой нарисован квадрат?

Что нужно дописать чтобы переменная z получила значение "B2"?
Код: plaintext
z=Sheets( 1 ).Shapes( 1 )...
...
Рейтинг: 0 / 0
Как узнать адрес Shapes'a?
    #33952673
Taranaga
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
TaranagaЧто нужно дописать чтобы переменная z получила значение "B2"?
То есть "B3".
...
Рейтинг: 0 / 0
Как узнать адрес Shapes'a?
    #33953789
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
? ActiveSheet.Shapes( 1 ).TopLeftCell.Address
? ActiveSheet.Shapes( 1 ).BottomRightCell.Address
Кнопкой F2 пользоваться умеешь? Запусти VBA, нажми F2, выбери слева Shape, найди справа все что угодно.
...
Рейтинг: 0 / 0
Как узнать адрес Shapes'a?
    #33954503
Taranaga
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Так вот ты какой... СЕВЕРНЫЙ ОЛЕЕЕЕНь....
А я то все думал, как F2 пользоваться...
Спасибо!
Пойду посыпать голову пеплом :)
...
Рейтинг: 0 / 0
Как узнать адрес Shapes'a?
    #33954946
Taranaga
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну здесь чтото уже и F2 не помогает...
А как быть если нужно узнать имя шапеса над которым находится мышка?
...
Рейтинг: 0 / 0
Как узнать адрес Shapes'a?
    #33956429
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Для Shape - никак.
Позицию мыши можно отслеживать только на Chart или UserForm объектах.
Excel это не всего-лишь электронная таблица. Это не ГУЙ для рисования чего угодно.
...
Рейтинг: 0 / 0
Как узнать адрес Shapes'a?
    #33956475
Taranaga
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А методом крадущегося через ж... тигра?

Например по таймеру генерится событие нажатия левой кнопки и, в случае, если выделился шапес - прога кричит его имя...
Это можно както реализовать?
...
Рейтинг: 0 / 0
Как узнать адрес Shapes'a?
    #33956499
Фотография k-nike
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А может тогда лучше отслеживать изменение курсора мыши при наведении на shape?

...
Рейтинг: 0 / 0
Как узнать адрес Shapes'a?
    #33956508
Фотография k-nike
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Или можно назначить шейпсам макрос. Типа, кликнул на нем - получил его имя.

...
Рейтинг: 0 / 0
Как узнать адрес Shapes'a?
    #33956512
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
TaranagaА методом крадущегося через ж... тигра?
Например по таймеру генерится событие нажатия левой кнопки и, в случае, если выделился шапес - прога кричит его имя...
Это можно както реализовать?нуууу... в теории... для Shape можно задать .OnAction="MyMacro" а в том макросе делать уже все что угодно. Но оно запустится только при клике по Shape'у....... Так что да, если таймером постоянно долбить по виртуальной левой кнопке... По идее будет работать, но учти что два клика в ячейке запускают редактирование ячейки. Так что несчастный пользователь вряд ли сможет воспользоваться клавиатурой после включения такого дятла :)

Не используй Эксель для ГУЯ, не порти себе кровь.
Возьми лучше что-нибудь более универсальное, хоть тот же Visual Basic или Delphi и делай ГУЙ там, запуская Эксель через ОЛЕ только для показа итоговых результатов.
...
Рейтинг: 0 / 0
Как узнать адрес Shapes'a?
    #33957429
Taranaga
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
White Owlнуууу... в теории... для Shape можно задать .OnAction="MyMacro" а в том макросе делать уже все что угодно. Но оно запустится только при клике по Shape'у....... Так что да, если таймером постоянно долбить по виртуальной левой кнопке... По идее будет работать, но учти что два клика в ячейке запускают редактирование ячейки. Так что несчастный пользователь вряд ли сможет воспользоваться клавиатурой после включения такого дятла :).OnAction - нашел
А как на таймер дятла повесить?
White OwlНе используй Эксель для ГУЯ, не порти себе кровь.
Возьми лучше что-нибудь более универсальное, хоть тот же Visual Basic или Delphi и делай ГУЙ там, запуская Эксель через ОЛЕ только для показа итоговых результатов.Да это понятно... Только иной раз всеже бывает желание сделать стандартными средствами нестандандартные вещи да и юзерам в этом случае не нужно будет ничего ставить :)
...
Рейтинг: 0 / 0
Как узнать адрес Shapes'a?
    #33957440
Taranaga
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
k-nikeА может тогда лучше отслеживать изменение курсора мыши при наведении на shape?

А как это событие изловить?
...
Рейтинг: 0 / 0
Как узнать адрес Shapes'a?
    #33957494
Фотография k-nike
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Taranaga k-nikeА может тогда лучше отслеживать изменение курсора мыши при наведении на shape?А как это событие изловить?
Если б я знал, не писал бы слово "может"))) Предполагаю, без API здесь не обойтись.

...
Рейтинг: 0 / 0
Как узнать адрес Shapes'a?
    #33959419
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
TaranagaА как на таймер дятла повесить?
Ну вот классический пример работы с таймером. Замени в нем обновление ячейки на посылку WM_CLICK и усе.
...
Рейтинг: 0 / 0
14 сообщений из 14, страница 1 из 1
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Как узнать адрес Shapes'a?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]