A voir également:
- Codage VBA - If ... Elseif ... Then - Novice
- Codage ascii - Guide
- Codage binaire - Guide
- Excel compter cellule couleur sans vba - Guide
- Controleur de codage/decodage pci ✓ - Forum Pilotes (drivers)
- Vba ouvrir un fichier excel avec chemin ✓ - Forum VB / VBA
5 réponses
Bonjour,
Peut pas marcher votre code, vous mettez les conditons pour boucler sans fin d'ou erreur excel !!
Peut pas marcher votre code, vous mettez les conditons pour boucler sans fin d'ou erreur excel !!
Bonjour, merci de votre réponse, je ne cherche pas a boucler sans fin, mais simplement à avoir un système booléen qui me permet de revenir a mon point de départ...
En gros une fois arrivé à Actu 3 J'aimerais qu'il se produise une autre action et que le code reparte a l'action 1 qui dans le cas du dessus serais ecrire Expertise.
Pensez vous que c'est réalisable ?
J'ai commencer a écrire cela qui marche mais juste sur une action et sur une cellule ...
Dim cell As String, ex As String
cell = Range("J12").Value
If cell = "Expertise" Then ex = "Actu 1"
Range("J12").Value = ex
Quand j'essai d'intégrer un ElseIf cela ne marche plus :
Dim cell As String, ex As String
cell = Range("J12").Value
If cell = "Expertise" Then ex = "Actu 1"
Range("J12").Value = ex
ElseIf cell = "Actu 1" Then ex = "Actu 2"
Range("J12").Value = ex
ElseIf cell = "Actu 2" Then ex = "Actu 3"
Range("J12").Value = ex
J'avance tranquillement mais je crain de ne jamais y arriver ... lol :/
En gros une fois arrivé à Actu 3 J'aimerais qu'il se produise une autre action et que le code reparte a l'action 1 qui dans le cas du dessus serais ecrire Expertise.
Pensez vous que c'est réalisable ?
J'ai commencer a écrire cela qui marche mais juste sur une action et sur une cellule ...
Dim cell As String, ex As String
cell = Range("J12").Value
If cell = "Expertise" Then ex = "Actu 1"
Range("J12").Value = ex
Quand j'essai d'intégrer un ElseIf cela ne marche plus :
Dim cell As String, ex As String
cell = Range("J12").Value
If cell = "Expertise" Then ex = "Actu 1"
Range("J12").Value = ex
ElseIf cell = "Actu 1" Then ex = "Actu 2"
Range("J12").Value = ex
ElseIf cell = "Actu 2" Then ex = "Actu 3"
Range("J12").Value = ex
J'avance tranquillement mais je crain de ne jamais y arriver ... lol :/
Super merci je venais en effet de me rendre compte de l'importance du retour a la ligne aprés Then...
Maintenant j'aimerais appliquer cette fonction a une plage (colonne...)
toute la colonne J a partir de la ligne 12
Mais la macro va être lente alors j'aimerais que sa actualise juste les cases avec une valeur et non pas les cases vide.
Ou sinon simple faire une plage de J12:J100 ce qui sera suffisant
Je suis entrain de chercher
Maintenant j'aimerais appliquer cette fonction a une plage (colonne...)
toute la colonne J a partir de la ligne 12
Mais la macro va être lente alors j'aimerais que sa actualise juste les cases avec une valeur et non pas les cases vide.
Ou sinon simple faire une plage de J12:J100 ce qui sera suffisant
Je suis entrain de chercher
Bonjour
je préfère le Select case
A+
Maurice
je préfère le Select case
Sub TestM() Select Case Range("J12").Value Case "Expertise" Range("J12").Value = "Actu 1" Case "Actu 1" Range("J12").Value = "Actu 2" Case "Actu 2" Range("J12").Value = "Actu 3" End Select End Sub
A+
Maurice
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
J'ai reussi,
maintenant je suis confronté a un autre problème c'est que j'aimerais switcher deux valeur présente dans deux autre colonne lorsque les conditions "Expertise" et "Critique 1" sont reunies
je vous fourni ce que j'ai fait :
Dim ligne As Integer
Dim colonne As Integer
ligne = 12
colonne = 10
Do
If Cells(ligne, colonne).Value = "Expertise" Then
Cells(ligne, colonne).Value = "Actualisation 1"
ElseIf Cells(ligne, colonne).Value = "Actualisation 1" Then
Cells(ligne, colonne).Value = "Actualisation 2"
ElseIf Cells(ligne, colonne).Value = "Actualisation 2" Then
Cells(ligne, colonne).Value = "Actualisation 3"
ElseIf Cells(ligne, colonne).Value = "Actualisation 3" Then
Cells(ligne, colonne).Value = "Expertise"
Else
End If
ligne = ligne + 1
Loop While Cells(ligne, colonne).Value <> 0
ligne = 12
colonne = 12
Do
If Cells(ligne, colonne).Value = "Critique 1" Then
Cells(ligne, colonne).Value = "Critique 2"
ElseIf Cells(ligne, colonne).Value = "Critique 2" Then
Cells(ligne, colonne).Value = "Critique 3"
ElseIf Cells(ligne, colonne).Value = "Critique 3" Then
Cells(ligne, colonne).Value = "Critique 4"
ElseIf Cells(ligne, colonne).Value = "Critique 4" Then
Cells(ligne, colonne).Value = "Critique 1"
Else
End If
ligne = ligne + 1
Loop While Cells(ligne, colonne).Value <> 0
maintenant je suis confronté a un autre problème c'est que j'aimerais switcher deux valeur présente dans deux autre colonne lorsque les conditions "Expertise" et "Critique 1" sont reunies
je vous fourni ce que j'ai fait :
Dim ligne As Integer
Dim colonne As Integer
ligne = 12
colonne = 10
Do
If Cells(ligne, colonne).Value = "Expertise" Then
Cells(ligne, colonne).Value = "Actualisation 1"
ElseIf Cells(ligne, colonne).Value = "Actualisation 1" Then
Cells(ligne, colonne).Value = "Actualisation 2"
ElseIf Cells(ligne, colonne).Value = "Actualisation 2" Then
Cells(ligne, colonne).Value = "Actualisation 3"
ElseIf Cells(ligne, colonne).Value = "Actualisation 3" Then
Cells(ligne, colonne).Value = "Expertise"
Else
End If
ligne = ligne + 1
Loop While Cells(ligne, colonne).Value <> 0
ligne = 12
colonne = 12
Do
If Cells(ligne, colonne).Value = "Critique 1" Then
Cells(ligne, colonne).Value = "Critique 2"
ElseIf Cells(ligne, colonne).Value = "Critique 2" Then
Cells(ligne, colonne).Value = "Critique 3"
ElseIf Cells(ligne, colonne).Value = "Critique 3" Then
Cells(ligne, colonne).Value = "Critique 4"
ElseIf Cells(ligne, colonne).Value = "Critique 4" Then
Cells(ligne, colonne).Value = "Critique 1"
Else
End If
ligne = ligne + 1
Loop While Cells(ligne, colonne).Value <> 0