|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
18.12.2013, 09:31 | #1 |
Пользователь
Регистрация: 12.10.2010
Сообщений: 66
|
копирование формул
Здравствуйте!
Подскажите, пожалуйста как скопировать формулу У меня в столбце по строкам идет формула, =Лист1!G17 =Лист1!G18 =Лист1!G20 и т.д т.е. ссылки на разные строки и очень много строк мне надо копировать формулы, чтобы менялся столбец =Лист1!H17 =Лист1!H18 =Лист1!H20 копировать на разные листы при этом задавать столбец, а строки оставались те же Хотелось бы макросом, так как очень много. Последний раз редактировалось evdss; 18.12.2013 в 09:50. |
18.12.2013, 10:04 | #2 | |
Старожил
Регистрация: 15.05.2008
Сообщений: 2,058
|
Цитата:
Потом можно будет подредактировать получившийся макрос.
"Дайте людям рыбы, и вы накормите их на весь день; научите их ловить рыбу - и вы накормите их на всю жизнь"
"Большое спасибо" - Z261597841314, R208907249777, U447361470499 |
|
18.12.2013, 10:14 | #3 |
Пользователь
Регистрация: 12.10.2010
Сообщений: 66
|
если рекодером, то просто вставляется Sub Макрос3()
' ' Макрос3 Макрос ' Range("D3:D103").Select Selection.Copy Sheets("tjg03").Select Range("D3").Select ActiveSheet.Paste End Sub т.е формула не меняется, которую я копирую, а надо поменять формулу в этих ячейках, т.е. задавать столбец в формуле |
18.12.2013, 10:28 | #4 |
Старожил
Регистрация: 11.05.2010
Сообщений: 5,166
|
Как вариант - взять формулы в массив, в массиве их изменить, выгрузить массив в другой лист.
Код:
webmoney: E265281470651 Z422237915069 R418926282008
Последний раз редактировалось Hugo121; 18.12.2013 в 10:34. |
18.12.2013, 10:35 | #5 |
Пользователь
Регистрация: 12.10.2010
Сообщений: 66
|
в этом месте не понимает a = Sheets(1).[a1:a10].Formula
Последний раз редактировалось evdss; 18.12.2013 в 10:45. |
18.12.2013, 10:56 | #6 | |
Форумчанин
Регистрация: 16.04.2010
Сообщений: 695
|
Цитата:
если правильно понял, немного подкорректировал пример Hugo121: Код:
Единственный способ стать умнее, играть с более умным противником...
|
|
18.12.2013, 11:02 | #7 |
Пользователь
Регистрация: 12.10.2010
Сообщений: 66
|
спасибо большое, вы просто меня спасли
|
18.12.2013, 11:05 | #8 |
Старожил
Регистрация: 11.05.2010
Сообщений: 5,166
|
Я "!" оставил специально, чтоб например не заменилось что-то другое в формулах, например в CEILING().
Но конечно нужно смотреть по месту. Почему "не понимает a = Sheets(1).[a1:a10].Formula " - не знаю... Стиль ссылок не влияет, проверил... P.S. Т.е. уже понимает? А вообще это можно было сделать обычной заменой в диапазоне по Ctrl+H
webmoney: E265281470651 Z422237915069 R418926282008
|
18.12.2013, 11:23 | #9 |
Форумчанин
Регистрация: 16.04.2010
Сообщений: 695
|
Hugo121 абсолютно прав, самый простой способ в вашей ситуации, это обычная замена, стандартными средствами эксель
Вот еще один пример макроса: Код:
Единственный способ стать умнее, играть с более умным противником...
|
18.12.2013, 11:30 | #10 |
Старожил
Регистрация: 11.05.2010
Сообщений: 5,166
|
Единственное что если делать такое Ctrl+H макросом, то заранее нужно знать, что на что изменится при копировании формул в конкретный диапазон, и по факту пересчёт формул произойдёт два раза (до замены, и после).
Если делать через массив - то меняем исходные известные формулы, пересчёт будет только после выгрузки уже изменённого массива. В общем, через массив проще, контроль больше, можно сделать варианты замены по условию.
webmoney: E265281470651 Z422237915069 R418926282008
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Копирование куска формул на последнюю страницу | deatmach | Microsoft Office Excel | 2 | 09.02.2013 20:43 |
Макрос - Копирование значений, а не формул. | frslav | Microsoft Office Excel | 2 | 17.04.2012 20:04 |
Копирование формул | Nesnakomez | Microsoft Office Excel | 3 | 02.04.2010 13:17 |
Копирование формул | PIKA4Y | Microsoft Office Excel | 3 | 21.12.2009 16:05 |