Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Изменить формулу с помощью макроса - Мир MS Excel

Регистрация · Логин: · Пароль: · · Забыли пароль?
  • Страница 1 из 1
  • 1
Модератор форума: _Boroda_, Manyasha, SLAVICK, китин  
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Изменить формулу с помощью макроса (Формулы/Formulas)
Изменить формулу с помощью макроса
Kaktus8 Дата: Четверг, 19.03.2020, 05:43 | Сообщение № 1
Группа: Пользователи
Ранг: Участник
Сообщений: 70
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
Уважаемые знатоки!
Подскажите, пожалуйста,
как во всех формулах синего столбца прописать перед ссылками на ячейки из красного столбца знак $ (доллара), т.е сделать эти ссылки абсолютными?
Например: вместо
Код
=ЕСЛИ(A3=1;K3;U3)
получить
Код
=ЕСЛИ($A3=1;K3;U3)

Как сделать это для всех формул из синего столбца, не переправляя каждую ячейку вручную?

Пытался сделать это с помощью записи макроса, но при протягивании формулы вправо прописывается ссылка только на ту ячейку, для которой записывался макрос. :(
К сообщению приложен файл: 15_1.xlsx(10.9 Kb)


Сообщение отредактировал Kaktus8 - Четверг, 19.03.2020, 05:44
 
Ответить
СообщениеУважаемые знатоки!
Подскажите, пожалуйста,
как во всех формулах синего столбца прописать перед ссылками на ячейки из красного столбца знак $ (доллара), т.е сделать эти ссылки абсолютными?
Например: вместо
Код
=ЕСЛИ(A3=1;K3;U3)
получить
Код
=ЕСЛИ($A3=1;K3;U3)

Как сделать это для всех формул из синего столбца, не переправляя каждую ячейку вручную?

Пытался сделать это с помощью записи макроса, но при протягивании формулы вправо прописывается ссылка только на ту ячейку, для которой записывался макрос. :(

Автор - Kaktus8
Дата добавления - 19.03.2020 в 05:43
krosav4ig Дата: Четверг, 19.03.2020, 06:59 | Сообщение № 2
Группа: Друзья
Ранг: Старожил
Сообщений: 2247
Репутация: 935 ±
Замечаний: 0% ±

Excel 2007,2010,2013
Используйте FormulaR1C1
[vba]
Код
[AE:AN 3:4].FormulaR1C1="=IF(RC1=1,RC[-20],RC[-10])"
[/vba]


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
 
Ответить
СообщениеИспользуйте FormulaR1C1
[vba]
Код
[AE:AN 3:4].FormulaR1C1="=IF(RC1=1,RC[-20],RC[-10])"
[/vba]

Автор - krosav4ig
Дата добавления - 19.03.2020 в 06:59
Kaktus8 Дата: Четверг, 19.03.2020, 07:50 | Сообщение № 3
Группа: Пользователи
Ранг: Участник
Сообщений: 70
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
krosav4ig,
спасибо за помощь!

Прошу прощения, но я в написании макросов полный ноль. Только через встроенный макрорекордер пользуюсь.
Я так понял, что нужно открыть макрос для редактирования и вставить туда эту строку?
А Вы не могли бы полный текст макроса привести (для файла-примера)?
А я попробую по образцу разобраться.

Была ещё мысль с помощью формулы сделать, но хочется именно макросом, чтобы один раз изменить ячейки и не вводить лишних вычислений, а то рабочая таблица и так уже слишком громоздкая и перегруженная.

В любом случае, большое спасибо!
yes
 
Ответить
Сообщениеkrosav4ig,
спасибо за помощь!

Прошу прощения, но я в написании макросов полный ноль. Только через встроенный макрорекордер пользуюсь.
Я так понял, что нужно открыть макрос для редактирования и вставить туда эту строку?
А Вы не могли бы полный текст макроса привести (для файла-примера)?
А я попробую по образцу разобраться.

Была ещё мысль с помощью формулы сделать, но хочется именно макросом, чтобы один раз изменить ячейки и не вводить лишних вычислений, а то рабочая таблица и так уже слишком громоздкая и перегруженная.

В любом случае, большое спасибо!
yes

Автор - Kaktus8
Дата добавления - 19.03.2020 в 07:50
krosav4ig Дата: Четверг, 19.03.2020, 09:55 | Сообщение № 4
Группа: Друзья
Ранг: Старожил
Сообщений: 2247
Репутация: 935 ±
Замечаний: 0% ±

Excel 2007,2010,2013
[vba]
Код
Sub x()
    [AE:AN 3:4].FormulaR1C1 = "=IF(RC1=1,RC[-20],RC[-10])"
End Sub
[/vba]
К сообщению приложен файл: 15_1.xlsm(19.7 Kb)


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
 
Ответить
Сообщение[vba]
Код
Sub x()
    [AE:AN 3:4].FormulaR1C1 = "=IF(RC1=1,RC[-20],RC[-10])"
End Sub
[/vba]

Автор - krosav4ig
Дата добавления - 19.03.2020 в 09:55
Nic70y Дата: Четверг, 19.03.2020, 10:49 | Сообщение № 5
Группа: Друзья
Ранг: Экселист
Сообщений: 6087
Репутация: 1338 ±
Замечаний: 0% ±

ru13;10;03
для конкретного случая

если я правильно понял
К сообщению приложен файл: 6306065.gif(18.2 Kb)


Яндекс Деньги 41001841029809

Сообщение отредактировал Nic70y - Четверг, 19.03.2020, 10:51
 
Ответить
Сообщениедля конкретного случая

если я правильно понял

Автор - Nic70y
Дата добавления - 19.03.2020 в 10:49
Kaktus8 Дата: Четверг, 19.03.2020, 12:37 | Сообщение № 6
Группа: Пользователи
Ранг: Участник
Сообщений: 70
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
krosav4ig,
спасибо, большое!
Работает! Буду разбираться.

Nic70y:
Гениально!
Как же это я про такую элементарную вещь забыл? %)
Спасибо, большое! Всё получилось!
yes


Сообщение отредактировал Kaktus8 - Четверг, 19.03.2020, 12:38
 
Ответить
Сообщениеkrosav4ig,
спасибо, большое!
Работает! Буду разбираться.

Nic70y:
Гениально!
Как же это я про такую элементарную вещь забыл? %)
Спасибо, большое! Всё получилось!
yes

Автор - Kaktus8
Дата добавления - 19.03.2020 в 12:37
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Изменить формулу с помощью макроса (Формулы/Formulas)
  • Страница 1 из 1
  • 1
Поиск:

Яндекс цитирования
© 2010-2020 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!