Obrigado!
Pois é, eu já sabia que em alguns registros daria 0, porem não sabia que daria erro de estouro.
Como faço para contornar o erro sem perder o critério da linha?
James, sem entrar no contexto dos calculos, por isso removi as linhas referente aos mesmos, se entendi corretamente, você tem de criar as Condições para se os Valores nas respectivas Colunas forem "ZERO" e se não forem, ficaria mais ou menos assim:
Sub calculaprotege()
Const AColuna = "A" '<- REGISTRO
Const KColuna = "K" '<- CFOP
Const JColuna = "J" '<- CST ICMS
Const NColuna = "N" '<- ALIQUOTA
Const GColuna = "G" '<- VALOR CONTABIL
Const MColuna = "M" '<- BASE DE CALCULO
Const OColuna = "O" '<- ICMS
Const AMColuna = "AM" '<- PROTEGE
' Inserts random numbers on the active worksheet
Dim PctDone As Single
Dim lRow As Long
Dim lLast As Long
Dim ws As Worksheet
Set ws = ActiveSheet
With ws
lLast = .Cells(.Rows.Count, AColuna).End(xlUp).Row
'Considerando uma linha de cabeçalho
For lRow = lLast To 2 Step -1
'AQUI VERFICAMOS SE OS VALORES NOS RESPECTIVOS ENDEREÇOS SÃO ZERO
If .Cells(lRow, OColuna).Value = 0 Or .Cells(lRow, GColuna).Value = 0 Then
MsgBox "Colunas com Valores ZERO"
'Aqui colocar o que fazer quando encontrar ZEROS
Else
MsgBox "Nas Celulas - (lRow, OColuna) e Cells(lRow, GColuna) não teem Valores ZERO"
'Aqui colocar as instruções para continuar
End If
Next lRow
End With
End Sub
Veja que deixei espaço apos os Msgbox para você colocar as definições do que fazer.
Veja se é isto e qq duvida retorne.
[]s
Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel
Postado : 11/11/2013 6:41 pm