SERGE_BLIZNUK
Silver Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Код: Public Sub AddIf_to_eror_formula() Dim cFormulaCol As Integer Dim i As Long, vFormula As String Dim vFirst As Long, vLast As Long col1 = ActiveSheet.UsedRange.Column col2 = col1 + ActiveSheet.UsedRange.Columns.Count - 1& For cFormulaCol = col1 To col2 vFirst = ActiveSheet.UsedRange.Row vLast = vFirst + ActiveSheet.UsedRange.Rows.Count - 1& For i = vFirst To vLast vFormula = Trim$(Cells(i, cFormulaCol).Formula) If (Application.WorksheetFunction.IsError(Cells(i, cFormulaCol).Value)) Then If Application.Evaluate("Error.Type(" & Cells(i, cFormulaCol).Address & ")") = 2 Then If Mid$(vFormula, 1&, 1&) = "=" Then vFormula = Mid$(vFormula, 2&) vFormula = "=IF(ISERROR(" & vFormula & "),0," & vFormula & ")" Cells(i, cFormulaCol).Formula = vFormula End If End If End If Next i Next cFormulaCol End Sub |
|