Borrar el contenido de la celda con condición VBA

Mimi59 -  
michel_m Mensajes publicados 18903 Fecha de registro   Estado Colaborador Última intervención   -
Bonjour,
Estoy empezando con VBA y me gustaría hacer una macro que borre el contenido de una selección de celdas si el valor de una celda es igual a 0 (resultado de una fórmula);
Sin embargo, incluso cuando no es nulo, también se borran, no entiendo por qué;
Aquí está mi macro:
Sub efface_var()
Dim MaValeur As Integer
MaValeur = Sheets("Date").Range("g10").Value
If MaValeur = 0 Then
Sheets("Síntesis").Select
Range("p32:p40,s32:s40,p90:p110,s90:s110,u90:u110,p152:p192,s152:s192,u152:u192").ClearContents
End If
End Sub
Gracias por su ayuda.

3 respuestas

  1. cousinhub29 Mensajes publicados 1113 Fecha de registro   Estado Miembro Última intervención   383
     
    Hola,

    Intenta así :

    Sub efface_var() Dim Plage As Range Set Plage = Sheets("Synthèse").Range("p32:p40,s32:s40,p90:p110,s90:s110,u90:u110,p152:p192,s152:s192,u152:u192") If Sheets("Date").Range("g10").Value = 0 Then Plage.ClearContents End Sub 


    Buenas noches
    1
  2. mimi59
     
    Gracias, pero aún así cuando el valor de la celda G10 es >0, el rango de valores se borra, no entiendo qué está mal. ¡Debería funcionar! Me está volviendo loco, tengo que entregar mi archivo pero la macro está fallando.
    0
  3. michel_m Mensajes publicados 18903 Fecha de registro   Estado Colaborador Última intervención   3 320
     
    Hola

    acabo de probar tu macro: no hay problemas

    verifica quizás si G10 es realmente numérico y no es una fecha...

    de lo contrario, no veo
    --
    Michel
    0