Выбрать дату в календареВыбрать дату в календаре

Страницы: 1
Копирование правил условного форматирования в EXCEL 2010
 
Добрый день!
Я так и не смог с этим ничего сделать. Приходится 2007 экселем пользоваться.
...Точнее я пока забил. Вариант с добавлением строк, а затем копированием в них формул и правил форматирования, скорее всего сработает, но его нужно настроить.
Изменено: zolotaryov_av - 21.05.2014 10:19:36
Копирование правил условного форматирования в EXCEL 2010
 
Эх, этот вариант содержит для меня больше всего рисков:
- макросом пользуется огромное количество людей;
- он используется для выполнения оперативной работы в весьма сжатые сроки;
- нет хорошего специалиста по VBA - пока протестируем, сломается куча граблей. Да и вообще придерживаюсь принципа: лезть в отлаженный механизм только когда других вариантов ну совсем нет.

Мне все-таки на данный момент ближе вариант с использованием 2003/2007 версии экселя.
Однако, хочу посоветоваться, может стоит обратиться в тех.поддержку майкрософт? Все-таки непонятно, почему начиная с 2010 версии изменилась эта логика копирования правил условного форматирования.
Изменено: zolotaryov_av - 29.01.2013 14:33:15
Копирование правил условного форматирования в EXCEL 2010
 
Расширил пример. Примерная идея работы макроса:
- я встаю на одну из ячеек диапазона A2:A4, например на A3;
- запускаю его, он выполняет свои проверки, затем берет строку 3 (т.е. ту, в которой я нахожусь) и начинает ее копировать. При этому полностью сохраняется форматирование, формулы в ячейках, расширяются нужные диапазоны (строки 1 и 5 скрыты, чтобы не рвались диапазоны).

Так вот, когда это делает 2003/2007 эксель - правила условного форматирования не копируются, расширяется диапазон для исходного правила (оно действительно для диапазона E1:E5).
Копирование правил условного форматирования в EXCEL 2010
 
Z, у меня тоже самое стоит. Может Вы тоже не копировали, а делали вставку новой строки?
Копирование правил условного форматирования в EXCEL 2010
 
nilem, добрый день!
Так и получается, полностью копируется строка: формулы, проверки данных, условное форматирование, просто форматирование. Поэтому макрос и работает по принципу копирования строки.
Я даже не думал делать вставку строки. Сейчас проверил, во вставленной строке остается все кроме формул. Только вот возможно ли переписать макрос, чтобы он потом протягивал формулы? Увы, но VBA я не знаю совсем. Вот макрос:
Код
Public Function Insert_N_Rows_nc(frr As Variant, nr As Variant) As VariantDim more_ins As Boolean Dim mf As Variant Dim nmf As Variant Dim mfl As Variant Dim aws As WorksheetDim wasn As StringDim IsProtected As BooleanDim Wanm As StringDim earfirst As VariantDim earlast As VariantDim wanum As VariantDim awsn As StringDim rc As VariantDim oSet aws = ActiveSheetrc = -4awsn = aws.NameIsProtected = aws.ProtectionModeIf IsProtected Then Run "UPAS"mf = 1more_ins = TrueIf nr = 1 Then   mfl = 1   more_ins = FalseElse    While (more_ins)        Rows(CStr(frr) & ":" & CStr(frr + mf - 1)).Select        Application.CutCopyMode = False        Selection.Copy        Selection.Ins ert Shift:=xlDown        nmf = mf * 2        If nmf * 2 > nr Then            more_ins = False        Else            mf = nmf        End If    Wend    mfl = nr - nmfEnd IfIf mfl > 0 Then    Rows(CStr(frr) & ":" & CStr(frr + mfl - 1)).Select    Application.CutCopyMode = False    Selection.Copy    Selection.Ins ert Shift:=xlDown    o = 1End IfApplication.CutCopyMode = FalseCells(frr, 1).Sele ctrc = 0e_inr:If IsProtected Then Run "PAS"Se t aws = NothingInsert_N_Rows_nc = rcEnd F unction


PAS и UNPAS блокируют и разблокируют защищенные ячейки соответственно.
Копирование правил условного форматирования в EXCEL 2010
 
Добрый день!
Имеется рабочая книга в формате .xls, используемая для корпоративных нужд. В книге есть листы с возможностью добавления (с помощью VBA) строк. Для каждой строки есть одна ячейка с условным форматированием (отдельный столбец). Правило условного форматирования одно общее для всех ячеек столбца (указан диапазон для правила).
Суть проблемы в том, что в excel 2010 при копировании строк создается дополнительное правило условного форматирования, релевантное для появившейся при копировании ячейки. В excel 2003 и 2007 просто расширяется диапазон для правила. В результате чего работать с 2010 версией невозможно, даже добавление 1000 строк вызывает проблему, файл открывается минут 20 после появления в книги большого количества правил.

Подскажите, возможно ли как-то решить данную проблему?
Необходимо реализовать копирование с расширением диапазона действия правила в excel 2010.
Макрос пока выкладывать смысла не вижу, так как стандартное копирование/вставка строки работают по-разному: в 2003/2007 расширяется диапазон, в 2010 добавляется новое правило для ячейки.
В приложенном файле для столбца E указано правило условного форматирования. Если добавить строчку внутри диапазона, для которого работает форматирования, то произойдет следующее: в 2003/2007 диапазон расширится, в 2010/2013 добавится копия правила, применяемая только для скопированной ячейки столбца E.

Заранее спасибо!
Страницы: 1
Наверх