VBA
Résolu/Fermé
flyersgoaler
Messages postés
29
Date d'inscription
jeudi 13 novembre 2008
Statut
Membre
Dernière intervention
4 octobre 2016
-
Modifié par pijaku le 19/04/2016 à 13:32
flyersgoaler Messages postés 29 Date d'inscription jeudi 13 novembre 2008 Statut Membre Dernière intervention 4 octobre 2016 - 19 avril 2016 à 15:07
flyersgoaler Messages postés 29 Date d'inscription jeudi 13 novembre 2008 Statut Membre Dernière intervention 4 octobre 2016 - 19 avril 2016 à 15:07
1 réponse
pijaku
Messages postés
12263
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
4 janvier 2024
2 751
19 avril 2016 à 13:46
19 avril 2016 à 13:46
Bonjour,
Pour le message, tu peux utiliser une fonction personnalisée :
Pour l'insertion, tu peux utiliser une Sub (pas très utile pour une seule ligne de code) :
Ton code d'appel devient donc :
A noter, tu peux utiliser AND dans ton test If.
Ainsi ton code d'appel devient :
Pour le message, tu peux utiliser une fonction personnalisée :
Private Function Message(Sujet As String, Ligne As Long) As String Select Case UCase(Sujet) Case "ROUGE" Message = "Projet " & Range("B" & Ligne) & Chr(32) & Range("AE" & Ligne) & " : Rouge n'est pas la bonne couleur." Case "SOLEIL" Message = "Projet " & Range("B" & Ligne) & Chr(32) & Range("AE" & Ligne) & " : Soleil est en erreur" End Select End Function
Pour l'insertion, tu peux utiliser une Sub (pas très utile pour une seule ligne de code) :
Private Sub Insere() Sheets(4).Range("A1").Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove End Sub
Ton code d'appel devient donc :
If Range("E" & y) = "Rouge" Then If Range("AG" & y).Value <> 0 Then Sheets(4).Range("A1").Value = Message("Rouge", y) Insere End If End If If Range("AK" & y) = "Soleil" Then If Len(Range("AD" & y)) < 5 Then Sheets(4).Range("A1").Value = Message("Soleil", y) Insere End If End If
A noter, tu peux utiliser AND dans ton test If.
Ainsi ton code d'appel devient :
If Range("E" & y) = "Rouge" And Range("AG" & y).Value <> 0 Then Sheets(4).Range("A1").Value = Message("Rouge", y) Insere End If If Range("AK" & y) = "Soleil" And Len(Range("AD" & y)) < 5 Then Sheets(4).Range("A1").Value = Message("Soleil", y) Insere End If
19 avril 2016 à 15:07