macro il else if then

centrino34

XLDnaute Nouveau
bonjour qui peut m aider je n arrive pas a régler ma macro une case cocher décoche l autre avec les résultat dans la cellule merci d avance
[Private Sub CheckBox5_Click()
If CheckBox5.Value = True Then
CheckBox6.Value = False


ElseIf Range("D8") <= 82 Then Range("F16") = "1"
Range("G16") = "1111111111"
ElseIf Range("D8") <= 164 Then Range("F16") = "2"
Range("G16") = "1111111111"
ElseIf Range("D8") <= 240 Then Range("F16") = "3"
Range("G16") = "1111111111"
ElseIf Range("D8") <= 320 Then Range("F16") = "4"
Range("G16") = "1111111111"
ElseIf Range("D8") <= 400 Then Range("F16") = "5"
Range("G16") = "1111111111"
Else
Range("F16").Value = ""
Range("G16").Value = ""
End If

End Sub

Private Sub CheckBox6_Click()
If CheckBox6.Value = True Then
CheckBox5.Value = False


ElseIf Range("D8") <= 82 Then Range("F17") = "1"
Range("G17") = "2222222222"
ElseIf Range("D8") <= 164 Then Range("F17") = "2"
Range("G17") = "2222222222"
ElseIf Range("D8") <= 240 Then Range("F17") = "3"
Range("G17") = "2222222222"
ElseIf Range("D8") <= 320 Then Range("F17") = "4"
Range("G17") = "2222222222"
ElseIf Range("D8") <= 400 Then Range("F17") = "5"
Range("G17") = "2222222222"
Else
Range("F17").Value = ""
Range("G17").Value = ""
End If
End Sub]
 

Lone-wolf

XLDnaute Barbatruc
Re : macro il else if then

Bonjour centrino et bienvenu sur le Forum.

Tu voudrais bien mettre un fichier joint, pour plus de facilité à pouvoir t'aider?

Si non, essaie comme ceci:

Code:
Private Sub CheckBox5_Click()
If Range("D8") = "" Then Exit Sub

If CheckBox5.Value = True Then
CheckBox6.Value = False
Range("F17:G17").ClearContents
If Range("D8") <= 82 Then: Range("F16") = 1: Range("G16") = "1111111111": Exit Sub
If Range("D8") <= 164 Then: Range("F16") = 2: Range("G16") = "1111111111": Exit Sub
If Range("D8") <= 240 Then: Range("F16") = 3: Range("G16") = "1111111111": Exit Sub
If Range("D8") <= 320 Then: Range("F16") = 4: Range("G16") = "1111111111": Exit Sub
If Range("D8") <= 400 Then: Range("F16") = 5: Range("G16") = "1111111111": Exit Sub
Else
CheckBox6.Value = True
Range("F16:G16").ClearContents
If Range("D8") <= 82 Then: Range("F17") = 1: Range("G17") = "2222222222": Exit Sub
If Range("D8") <= 164 Then: Range("F17") = 2: Range("G17") = "2222222222": Exit Sub
If Range("D8") <= 240 Then: Range("F17") = 3: Range("G17") = "2222222222": Exit Sub
If Range("D8") <= 320 Then: Range("F17") = 4: Range("G17") = "2222222222": Exit Sub
If Range("D8") <= 400 Then: Range("F17") = 5: Range("G17") = "2222222222": Exit Sub
End If
End Sub


A+ :cool:
 
Dernière édition:

Pierrot93

XLDnaute Barbatruc
Re : macro il else if then

Bonjour,

une autre approche, nom des iobjets à adapter :
Code:
Option Explicit
Private Sub CheckBox1_Click()
CheckBox2 = Not CheckBox1
End Sub
Private Sub CheckBox2_Click()
CheckBox1 = Not CheckBox2
End Sub

A noter que l'utilisation d'"OptionButton" permettrait une exclusion automatique.... A voir selon ton projet...

bonne journée
@+

Edition : bonjour Loup Solitaire:)
 
Dernière édition:

GCFRG

XLDnaute Occasionnel
Re : macro il else if then

Salut, une autre variante avec "Select Case" A tester!
Code:
Private Sub CheckBox5_Click()
If Range("D8") = "" Then Exit Sub
    If CheckBox5.Value = True Then
        CheckBox6.Value = False
        Range("F17:G17").ClearContents
        Select Case Range("D8").Value
            Case Is <= 82
            Range("F16") = 1: Range("G16") = "1111111111": Exit Sub
            Case Is <= 164
            Range("F16") = 2: Range("G16") = "1111111111": Exit Sub
            Case Is <= 240
            Range("F16") = 3: Range("G16") = "1111111111": Exit Sub
            Case Is <= 320
            Range("F16") = 4: Range("G16") = "1111111111": Exit Sub
            Case Is <= 400
            Range("F16") = 5: Range("G16") = "1111111111": Exit Sub
        End Select
    Else
        CheckBox6.Value = True
        Range("F16:G16").ClearContents
        Select Case Range("D8").Value
            Case Is <= 82
            Range("F17") = 1: Range("G17") = "2222222222": Exit Sub
            Case Is <= 164
            Range("F17") = 2: Range("G17") = "2222222222": Exit Sub
            Case Is <= 240
            Range("F17") = 3: Range("G17") = "2222222222": Exit Sub
            Case Is <= 320
            Range("F17") = 4: Range("G17") = "2222222222": Exit Sub
            Case Is <= 400
            Range("F17") = 5: Range("G17") = "2222222222": Exit Sub
        End Select
    End If

End Sub
et pour etre sur d'ecrire dan la bonne feuille mettre au début du code
With Sheets("Nom de ta feuille")
ton code en replacant tous les "Range" par ".Range"
Exp:
With Sheets("Feuil1")
.Range("F16") = 1: .Range("G16") = "1111111111": Exit Sub

End with

Gilbert
 
Dernière édition:

Discussions similaires

Réponses
1
Affichages
389

Statistiques des forums

Discussions
314 667
Messages
2 111 701
Membres
111 264
dernier inscrit
Monnoye