powered by simpleCommunicator - 2.0.58     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Копирование только форматов и формул строки
21 сообщений из 21, страница 1 из 1
Копирование только форматов и формул строки
    #36090486
AlexLev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Excel 2003. Прошу привести красивое решение, как можно програмно скопировать строку, чтобы скопировались только форматы и формулы?
Желательно именно строку, ну можно и диаппазон. Важно только, чтоб не было привязки к именам и содержимому ячеек, потому как столбцы могут добавляться.
Если есть принципиальная разность, - то лучше вариант для спаренных, и, не спаренных строк.
Спасибо и Вам.
...
Рейтинг: 0 / 0
Копирование только форматов и формул строки
    #36090550
Korcar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
  ThisWorkbook.Worksheets( 1 ).Range("1:1").Copy
  ThisWorkbook.Worksheets( 2 ).Range("1:1").PasteSpecial xlPasteFormulas
  ThisWorkbook.Worksheets( 2 ).Range("1:1").PasteSpecial xlPasteFormats

а что значит "спареные строки"?
...
Рейтинг: 0 / 0
Копирование только форматов и формул строки
    #36090561
Сергей06
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AlexLev,
Не понятно что за спареные строки.
Если мы вставляем только формулы, то и константы тоже скопируются.
Для того, чтобы народ начал помогать, лучше помочь народу с файлом примером.
То как есть, и то как хотелось бы иметь скопированные строки.
...
Рейтинг: 0 / 0
Копирование только форматов и формул строки
    #36090637
AlexLev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Korcar[src vba]
а что значит "спареные строки"?
Ну, это я назвал так тот случай, когда в новую строку (последнюю) параметры берутся из предыдущей.
...
Рейтинг: 0 / 0
Копирование только форматов и формул строки
    #36090909
Korcar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
то есть надо скопировать формулу так, чтобы она ссылалась на первоначальный источник? тогда уж проще просто само значение копирнуть
...
Рейтинг: 0 / 0
Копирование только форматов и формул строки
    #36091024
AlexLev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Korcar ,
Нет, нет. Вначале вы меня правильно поняли. Я потом попробую этот прием. Большое спасибо, Я давно хотел реализовать такую возможность. Просто сейчас "разрываюсь" - не все успеваю...
...
Рейтинг: 0 / 0
Копирование только форматов и формул строки
    #36091525
AlexLev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот попробовал. И наткнулся на очередной "заморок".
Дело в том, что Специальная вставка, при копировании формул, копирует все значения: текст, даты и прочеее. А хотелось бы, чтобы скопировались только сами формулы , те что начинаются с "=".
...
Рейтинг: 0 / 0
Копирование только форматов и формул строки
    #36092110
Korcar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
проверь в цикле значения на наличие формул и усе нормики буд)
...
Рейтинг: 0 / 0
Копирование только форматов и формул строки
    #36093909
KL (XL)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
5.
6.
Sub test()
    On Error Resume Next
    With Rows( 4 )
        Rows( 3 ).Copy .Cells
        .Cells.SpecialCells(xlCellTypeConstants).ClearContents
    End With
End Sub
...
Рейтинг: 0 / 0
Копирование только форматов и формул строки
    #36093940
AlexLev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не могу воздержаться от комментария.
Я еще не пробовал, но уже вижу, что это "шикарно"!
По сравнению с тем, что примерно есть на эту тему в Интернете:
Как скопировать форматы и формулы из строки в нижележащую область (AutoFill)
...
Рейтинг: 0 / 0
Копирование только форматов и формул строки
    #36094794
AlexLev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Попробовал. Отличное решение! Мне очень понравилось! Так, как я глубоко не вникал в сам принцип, то для меня это смотрится как фокус!
Но, ... нашел все-таки "ложку дегтя": оказывается, что эта конструкция не добавляет строку в сам список, если диаппазон находится в списке...
...
Рейтинг: 0 / 0
Копирование только форматов и формул строки
    #36095339
KL (XL)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AlexLevПопробовал. Отличное решение! Мне очень понравилось! Так, как я глубоко не вникал в сам принцип, то для меня это смотрится как фокус!
Но, ... нашел все-таки "ложку дегтя": оказывается, что эта конструкция не добавляет строку в сам список, если диаппазон находится в списке...

AlexLev, я не вижу никакой ложки дегтя, а лишь то, что вы хронически умалчиваете о существенных обстоятельствах при постановке задачи. Не помню, чтобы вы упомянули о том, что вам надо добавить строку, или о том, что работа ведется с объектом список. Потому что если это так, то все еще проще - нужно добавить строку в данный объект, а он позаботится о копировании всего остального:

Код: plaintext
1.
2.
Sub test()
    Activesheet.ListObjects("Table1").ListRows.Add
End Sub
...
Рейтинг: 0 / 0
Копирование только форматов и формул строки
    #36095426
AlexLev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
KL (XL)...вы хронически умалчиваете о существенных обстоятельствах...
Еще раз благодарю!
Да нет, я не умалчиваю. Мне на данный момент и не нужно добавлять в список. Просто обязательно понадобится "на потом". Вот я и решил до конца довести эту тему, чтоб потом не возвращаться.
А при постановке задачи-вопроса, - заранее и не знаешь разные тонкости, поэтому что-то и упустишь. Но это ведь не страшно. Форум-то живой. Кому-то одно решение подойдет, другому - другое. Ведь не для меня одного это понадобится.
...
Рейтинг: 0 / 0
Копирование только форматов и формул строки
    #36095449
Deggasad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AlexLev...Форум-то живой. Кому-то одно решение подойдет, другому - другое. Ведь не для меня одного это понадобится.
Живой-живой, не дождетесь... :)
...
Рейтинг: 0 / 0
Копирование только форматов и формул строки
    #36095486
KL (XL)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AlexLev...Но это ведь не страшно. Форум-то живой. Кому-то одно решение подойдет, другому - другое. Ведь не для меня одного это понадобится.

AlexLev, прежде всего, мое сообщение - это не выговор, а конструктивный "feedback", так что прошу не обижаться и воспринимать как личные нападки :-) Я рад, что смог помочь.
Насчет "это не страшно": на самом деле, исходя из моего опыта", это может иметь определенные последствия для спрашивающего. Не даром в правилах подобных форумов пишут - изложите задачу детально или пришлите файл с примером. Многие из тех, кто отвечает, ограничены во времени и движимы "голым энтузиазмом". Если после того, как они потратили свое время на решение задачи с учетом первичной информации, вы начинаете вводить ранее не упомянутые параметры, да еще заставляющие в корне менять решение, то рано или поздно отвечающие поддадутся естественной фрустрации и вероятно охладеют к вашей теме. Поставьте себя на их место - никто не хочет тратить свое время на решение заведомо неверно поставленной задачи ;-)
...
Рейтинг: 0 / 0
Копирование только форматов и формул строки
    #36095592
KL (XL)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AlexLevПопробовал. Отличное решение! Мне очень понравилось! Так, как я глубоко не вникал в сам принцип, то для меня это смотрится как фокус!
Но, ... нашел все-таки "ложку дегтя": оказывается, что эта конструкция не добавляет строку в сам список, если диаппазон находится в списке...

AlexLev, чтобы мое решение не казалось вам фокусом можно представить его в менее экономичной форме:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
Sub test()
    'Инструкция On Error перехватывает ошибку в случае 
    'ненахождения свойством SpecialCells констант в копируемой строке
    On Error Resume Next
    
    'Здесь использована сонструкция "Range.Copy(Destination)" 
    'вместо привычной "Range.Copy -> Sheet.Paste(Destination)"
    'или "Range.Copy -> Range.PasteSpecial(Paste, Operation, SkipBlanks, Transpose)"
    'Главное преимущество использованного метода в том,
    'что после копирования он не выбирает диапазона назначения,
    ActiveSheet.Rows( 3 ).Copy ActiveSheet.Rows( 4 )

    'Про свойство SpecialCells достаточно подробно и ясно написано
    'в Справке. Это то же самое, что используется при ручном 
    'выборе меню Правка->Перейти...-> Выделить
    ActiveSheet.Rows( 4 ).SpecialCells(xlCellTypeConstants).ClearContents
End Sub

И здесь, кстати, тоже можно добавить вставку строки методом Insert :-)
...
Рейтинг: 0 / 0
Копирование только форматов и формул строки
    #36095653
Deggasad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
KL (XL)... то рано или поздно отвечающие поддадутся естественной фрустрации и вероятно охладеют к вашей теме...
И чем больше таких вопросов в процентном соотношении - тем больше вероятность, что охладеют к форуму вцелом, т.е. форум не будет жив.
Но повторюсь - не дождетесь :)
...
Рейтинг: 0 / 0
Копирование только форматов и формул строки
    #36095671
KL (XL)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Deggasad...тем больше вероятность, что охладеют к форуму вцелом, т.е. форум не будет жив.
Такого, признаться, наблюдать не приходилось :-)
...
Рейтинг: 0 / 0
Копирование только форматов и формул строки
    #36095854
Deggasad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
KL (XL)Deggasad...тем больше вероятность, что охладеют к форуму вцелом, т.е. форум не будет жив.
Такого, признаться, наблюдать не приходилось :-)
Просто ты человек достаточно холодного ума.
Ну или пытаешься казаться таким. :)
...
Рейтинг: 0 / 0
Копирование только форматов и формул строки
    #36096140
AlexLev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Уважаемые, благодарю вас за обсуждение этой темы.
Я сам являюсь программистом по 1С и VBA для меня довольно проблемно.
Я сам являюсь ценителем отлаженного програмного кода, когда в минимуме строк заключено максимум возможностей. Но так же и хороши более развернутые примеры - на них я могу учиться основам. Так что не беспокойтесь, ни какие ваши труды не пропадут даром, все это пойдет в мою справочную литературу. Спасибо.
На сегодня мой рабочий день уже закончен, а Интернетом я пользуюсь только на работе.
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
Копирование только форматов и формул строки
    #38470398
Evgeniy76
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
KL (XL),
чето у меня это не работает :(
...
Рейтинг: 0 / 0
21 сообщений из 21, страница 1 из 1
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Копирование только форматов и формул строки
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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