Supprimer contenu cellule selon autre cellule

Bonjour,

Sur Excel j'essaie de créer une macro qui permet d'analyser une valeur d'une cellule et qui en fonction de sa valeur, supprime le contenu d'une autre cellule. Jusqu'à là pas trop de soucis, un simple "IF range("L5") < 1 then range("Q5") = " " ..... Cependant j'aimerai appliquer cette formule à tout un tableau entier sans devoir écrire l'analyse pour chaque ligne indépendamment ...

Donc éviter de devoir faire :
If Range("L5") < 1 Then
Range("Q5") = ""
End If
If Range("L6") < 1 Then
Range("Q6") = ""
End If
If Range("L7") < 1 Then
Range("Q7") = ""
End If

etc...

Dans mon tableau exemple il n'y a que 11 lignes mais le but serait d'appliquer ça ensuite à un tableau bien plus grand (environ 1000 à 2000 lignes)

Est-ce qu'il y a une solution qui analyse pour toutes les lignes de la plage définie qui dès qu'il y a une valeur dans le contenu de cette plage, qui pour la ligne correspondante supprime la donnée dans colonne "Q" ?

Soit : "Si dans plage "L5:L15" il y a une valeur < 1 alors la ligne correspondante en colonne "Q" = ""
sachant que dans "L5: L15" il peut y avoir plusieurs cellules concernées en même temps.

Je connais déjà la formule range("Q" & (activecell.row)) = "" mais cela s'applique uniquement sur la ligne "actuellement sélectionnée"..

Comment faire pour que l'analyse s'applique à l'entier de la plage souhaitée ?

Merci d'avance de vos réponses à cette question.

4 réponses

  1. Bonjour

    Const lideb = 5
    
    Sub ok()
    Dim li As Long, lifin As Long
    lifin = Range("L" & Rows.Count).End(xlUp).Row
    For li = lideb To lifin
      If Range("L" & li).Value < 1 Then Range("Q" & li).Value = ""
    Next li
    End Sub

    Cdlmnt
    1
    1. Salut, merci de ta réponse mais ton code n'est pas fonctionnel ...

      "Erreur d'exécution '1004':
      La méthode 'Range' de l'objet '_Global' a échoué"
      0
  2. Tu ne dis pas sur quelle ligne se produit l'erreur
    Peut être un pb d'accès à une feuille
    Le fichier
    https://www.cjoint.com/c/HHvlWxsUGqB

    Cdlmnt
    1
    1. Voilà le lien de mon fichier "exemple" pour 11 lignes
      https://www.cjoint.com/c/HHvneuOYxFw

      (Il faut l'enregistrer avant d'ouvrir car comme c'est un XLSM l'explorateur risque de trouver une erreur) - firefox
      0
  3. https://www.cjoint.com/c/HHvofjyZHAB

    Cdlmnt
    1
    1. Re bonjour,

      Pourriez-vous me renvoyer votre précédent fichier? Il n'est plus disponible en téléchargement...

      Merci d'avance et meilleures salutations
      0
  4. https://www.cjoint.com/c/HHEmSt4TbeB

    Cdlmnt
    0