Effacer le contenu de plusieurs cellules Le sujet est résolu

Y compris Power BI, Power Query et toute autre question en lien avec Excel
Répondre
Avatar du membre
YannisB
Membre fidèle
Membre fidèle
Messages : 160
Inscrit le : 11 avril 2019
Version d'Excel : Excel 2010

Message par YannisB » 27 juin 2019, 14:22

Bonjour, :mrgreen:
Je cherche une parcelle de code qui me permettrait, quand je double clique sur une cellule de la colonne B (de B5 à B50), de vider le contenu des cellules de la ligne, de A à H, puis de faire de même pour toutes les lignes en dessous, mais uniquement si elles ne contiennent rien dans la cellule B.

ex: je double click sur B5, ça vide de A5 à H5, puis si B6 est vide, ça vide de A6 à H6 etc...


merci d'avance! :mrgreen:
Avatar du membre
xorsankukai
Membre impliqué
Membre impliqué
Messages : 2'334
Appréciations reçues : 267
Inscrit le : 7 octobre 2014
Version d'Excel : 2010 FR

Message par xorsankukai » 27 juin 2019, 14:34

Bonjour YannisB, le forum,

Dommage que tu n’ai pas joint un fichier..... :bof:

Donc une réponse hasardeuse à tester....
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)

Dim i As Integer

 If Not Application.Intersect(Target, Range("B5:B50")) Is Nothing Then
  Range("A" & Target.Row & ":H" & Target.Row).ClearContents
   For i = 5 To 50
    If Range("B" & i) = "" Then Range("A" & i & ":H" & i).ClearContents
   Next i
 End If
 Cancel = True
End Sub
Cordialement,
Modifié en dernier par xorsankukai le 27 juin 2019, 14:42, modifié 1 fois.
xorsankukai

La connaissance, c’est partager le savoir qui nous fait grandir.
Avatar du membre
i20100
Passionné d'Excel
Passionné d'Excel
Messages : 6'040
Appréciations reçues : 352
Inscrit le : 16 mars 2017
Version d'Excel : 2010

Message par i20100 » 27 juin 2019, 14:35

Bonjour,

à tester,
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Set isect = Application.Intersect(Target, Range("B5:B50"))
If Not isect Is Nothing Then
  If Target = "" Then
    Range("A" & Target.Row).ClearContents
    Range("C" & Target.Row & ":H" & Target.Row).ClearContents
  End If
End If
End Sub
Prenons soins de nous et de notre vaisseau spatial, nous n’en n’avons qu’un ...notre planète terre
isabelle
Avatar du membre
YannisB
Membre fidèle
Membre fidèle
Messages : 160
Inscrit le : 11 avril 2019
Version d'Excel : Excel 2010

Message par YannisB » 27 juin 2019, 14:43

Merci de vos réponses, le fichier est trop complexe pour être envoyé en exemple à mon avis, le fonctionnement est long a comprendre :lol:
J'avais oublié de vous préciser qqch, c'est dès que l'on rencontre une cellule ("B"&i) non vide, on s'arrète, j'ai alors testé cela, mais j'ai apparemment un else sans if, pourtant il y est... :lole:


Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)

Dim i As Integer

 If Not Application.Intersect(Target, Range("B5:B50")) Is Nothing Then
  Range("A" & Target.Row & ":H" & Target.Row).ClearContents
   For i = 5 To 50
    If Range("B" & i) = "" Then Range("A" & i & ":H" & i).ClearContents
    Else: GoTo 8
   Next i
8
 End If
End Sub
    
EDIT: ce que j'ai fais n'est pas cohérent, si je double cloque sur B16, je veux vérifier à 17, 18, 19 etc et pas de 5 à 50 :lole:
En plus il n'y avait pas de end if, je l'ai vu après
Avatar du membre
xorsankukai
Membre impliqué
Membre impliqué
Messages : 2'334
Appréciations reçues : 267
Inscrit le : 7 octobre 2014
Version d'Excel : 2010 FR

Message par xorsankukai » 27 juin 2019, 14:59

Re,

A tester...
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)

Dim i As Integer, dl As Integer
 

 If Not Application.Intersect(Target, Range("B5:B50")) Is Nothing Then
  Range("A" & Target.Row & ":H" & Target.Row).ClearContents
   For i = Target.Row To 50
    If Range("B" & i) = "" Then Range("A" & i & ":H" & i).ClearContents
   Next i
 End If
 Cancel = True
End Sub
xorsankukai

La connaissance, c’est partager le savoir qui nous fait grandir.
Avatar du membre
YannisB
Membre fidèle
Membre fidèle
Messages : 160
Inscrit le : 11 avril 2019
Version d'Excel : Excel 2010

Message par YannisB » 27 juin 2019, 15:05

J'ai modifié un peu ce que tu m'a donné et maintenant cela marche parfaitement! merci de votre aide! :mrgreen:
Répondre
  • Sujets similaires
    Réponses
    Vues
    Dernier message