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

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

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

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

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

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 05.12.2007, 12:51   #1
skachkovgd
 
Регистрация: 04.12.2007
Сообщений: 3
По умолчанию адрес не активной ячейки при вызове функции

В ячейке A1 и B5 введена функция =F() без параметров в результате
надо посчитать f=row*col A1=1*1=1 в B5=2*5=10
или просто определить адрес ячейки которая выполняет действия функции f()
курсор стоит на ячейки A2 , те активная ачейка в данный момент A2
метод .activte потому он даст адрес A2
skachkovgd вне форума
Старый 05.12.2007, 13:32   #2
SAS888
Старожил
 
Аватар для SAS888
 
Регистрация: 05.12.2007
Сообщений: 4,180
По умолчанию

Насколько я Вас правильно понял, нужно определить адреса всех ячеек, содержащих одинаковые формулы. Если так, то нужно пройтись по нужному диапазону и просто сравнить, например:
If Range("A1").Formula = Cells(x, y).Formula Then ...
Т.е. если формулы совпадают, тогда выполнять то, что требуется.
Чем шире угол зрения, тем он тупее.
SAS888 вне форума
Старый 05.12.2007, 14:06   #3
skachkovgd
 
Регистрация: 04.12.2007
Сообщений: 3
По умолчанию

SAS888
нет все намного я могу прописать адрес ячейки в параметры функции только после этого каждый раз при изменении данных(данные формируются на основании sql запроса) придется переписывать формулы в ячейках нуторная работа
легче изменить саму функцию в макросе и нечего не меняя на рабочем листе. Проще нужен адрес не активной ячейки в котором вычисляется функция
Спасибо за ответ
skachkovgd вне форума
Старый 06.12.2007, 07:01   #4
SAS888
Старожил
 
Аватар для SAS888
 
Регистрация: 05.12.2007
Сообщений: 4,180
По умолчанию

Не совсем понял, что значит "неактивная ячейка, в которой вычисляется функция"? Если ячейка содержит функцию - ее адрес известен; если кто-то передает функцию в ячейку - ее адрес тоже известен. Что искать? Может нужны адреса ячеек (параметры функции) с которыми оперирует функция? Можно по подробнее.
Чем шире угол зрения, тем он тупее.
SAS888 вне форума
Старый 06.12.2007, 09:50   #5
skachkovgd
 
Регистрация: 04.12.2007
Сообщений: 3
По умолчанию

спасибо всем нашел решение
Public Function f()
Application.Volatile
With Application.Caller
f = .Column * .Row
End With
End Function
skachkovgd вне форума
Закрытая тема


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
потеря параметров при вызове формы из dll... Roof Общие вопросы Delphi 4 22.08.2008 22:08
Найти адрес ячейки... Bu$ter Microsoft Office Excel 7 11.06.2008 14:52
Connection timed out при вызове IdSMTP1.Connect(10000); dimon000 Работа с сетью в Delphi 3 11.01.2008 22:49
как узнать ip адрес зная mac адрес Roman Работа с сетью в Delphi 9 25.06.2007 12:39