¿Cómo evitar que un macro se detenga al dividir entre cero?

Buenas tardes a todos

Estoy tratando de sacar unos promedios mediante la ejecución de un macro; pero, en algunos casos se divide entre cero y me da "error 6". Se que es cuando se divide entre cero porque al cambiar este valor el macro se ejecuta correctamente. Trate con esto pero no sirvió:

For k = 14 To 314 Step 1
CeldaBusqueda = Sheets("Control de materiales").Cells(k, 2).Value
If CeldaBusqueda <> "" Then
If Application.WorksheetFunction.IsError(ActiveCell) = True Then
Costo_promedio_MP = Worksheets("Control de materiales").Cells(k, 13).Value / Worksheets("Control de materiales").Cells(k, 10).Value
Worksheets("Control de materiales").Cells(k, 13).Value = Costo_promedio_MP
End If
End If
Next k

El ciclo For es porque debo recorrer todas las filas de la tabla. La primera instrucción If es para que el macro funcione un poco mas rapido al detenerse en la primera linea que este en blanco (porque no hay código de material y por ende, tampoco hay valores para promediar).

La segunda instrucción If se supone que detecta el error pero igual el macro da error y se detiene al encontrar un valor de división entre cero.

Trate también

If Application.WorksheetFunction.IsError(ActiveCell) = True Then

ActiveCell = "0"

Else

Costo_promedio_MP = Worksheets("Control de materiales").Cells(k, 13).Value / Worksheets("Control de materiales").Cells(k, 10).Value
Worksheets("Control de materiales").Cells(k, 13).Value = Costo_promedio_MP
End If

Pero igual se detiene.

¿Alguna sugerencia?

Muchas gracias de antemano...

Añade tu respuesta

Haz clic para o