Страницы: 1
RSS
удалить с листа некоторые формулы
 
Доброго времени суток!    
Есть лист с кучей формул. Необходимо очистить лист от ненужных формул, оставить только формулы автосумм. Значения в ячейках с "ненужными" формулами - оставить.    
 
В файле с примером - "убить" формулы типа "ТА*". Открывать с выключенным автоматическим пересчетом.    
Спасибо!
 
CTRL+H   заменить +сумм   на ~сумм, например  
 
дальше правка-перейти-выделить-формулы  
 
копировать-вставить значения  
 
опять ctrl+H  обратная замена
Живи и дай жить..
 
{quote}{login=The_Prist}{date=11.01.2010 01:24}{thema=Re: удалить с листа некоторые формулы}{post}{quote}{login=park13}{date=11.01.2010 01:22}{thema=удалить с листа некоторые формулы}{post}Открывать с выключенным автоматическим пересчетом.{/post}{/quote}А это как? Это Вы должны книгу сохранить с выключенным автоматическим пересчетом.{/post}{/quote}  
 
неа - надо выключить автоматический пересчет и открывать - параметры пересчета не в книге хранятся
Живи и дай жить..
 
в первом моем - +сумм - неправильно, правильно: =сумм
Живи и дай жить..
 
Sub Макрос1()  
'  
' Макрос1 Макрос  
' Макрос записан 11.01.2010 (********)  
'  
 
'  
   Selection.SpecialCells(xlCellTypeFormulas, 23).Select  
   Selection.Replace What:="=ta*", Replacement:="", LookAt:=xlPart, _  
       SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _  
       ReplaceFormat:=False  
End Sub
 
{quote}{login=The_Prist}{date=11.01.2010 01:24}{thema=Re: удалить с листа некоторые формулы}{post}А это как? Это Вы должны книгу сохранить с выключенным автоматическим пересчетом.{/post}{/quote}  
Первый раз сохранил, но забыл про "пересчет перед закрытием". Вот еще раз для контроля )
 
Вот народ с кошельками набежал :)  
Автор вроде значения просил...  
For Each rr In ActiveSheet.UsedRange  
If rr.Formula Like "ТА*" Then rr.Value = rr.Value  
Next
Bite my shiny metal ass!      
 
{quote}{login=Лузер™}{date=11.01.2010 01:38}{thema=}{post}Вот народ с кошельками набежал :)  
Автор вроде значения просил...  
For Each rr In ActiveSheet.UsedRange  
If rr.Formula Like "ТА*" Then rr.Value = rr.Value  
Next{/post}{/quote}  
будучи точным  
если формула не сумм(***) то значение
 
Есть книга в которой в некоторых ячейках вычисление формулы приводит к ощибкам.  
 
Необходимо заменить все ячейки с ошибками вида    
1)отсутвующая пользовательская функция  
2)поруганная связь  
...итдитп  
на числовые значения.  
 
НО при этом сохранить в книге все корректные формулы - формулы которые не будут выдавать ошибку, если её влияющие ячейки содержат значения.  
 
Понятно что для книги в целом это тяжко, а вот для листа вполне возможно
 
{quote}{login=The_Prist}{date=11.01.2010 01:42}{thema=Re: }{post}{quote}{login=Лузер™}{date=11.01.2010 01:38}{thema=}{post}Автор вроде значения просил...{/post}{/quote}Ну да...Сначала так и подумал, что значения оставить надо, но смутила фраза: "Необходимо очистить лист от ненужных формул"  
 
В моем случае тогда так:  
If rCell.Formula Like sMask Then rCell = rCell.Value{/post}{/quote}  
 
Всем большое спасибо. Буду использовать этот вариант)
Страницы: 1
Наверх