J'aimerais savoir comment d=E9terminer une plage de donn=E9es dans la
colonne B avec le d=E9but et la fin de cette plage selon un crit=E8re
donn=E9 dans la colonne A ?
Par exemple :
Si valeur1 =3D critere alors Maplage =3D "cette plage commence =E0 "
DebutPlg " et se termine =E0 " FinPlg"
ensuite j'aimerais savoir quel est le test qui m'informe si cette
valeur1 donn=E9e est le debut ou la fin de cette plage ?
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
apt
Bon j'ai pu adopte un code de Daniel;
'-------------------------------------------------------- Private Sub testvaleur(Val As Integer) Dim Debut, Fin ctr = Application.Match(Val * 1, Range("A:A"), 0) If IsNumeric(ctr) Then Debut = Range("B2")(ctr, 1).Value 'Valeur de la 2eme Col qui corresponde 'et puis on doit continuer pour trouver la derniere occurence Fin = Range("B2")(ctr + 7, 1).Value MsgBox "La valeur " & Val & " se trouve dans la plage de " & Debut & " au " & Fin End If End Sub '-------------------------------------------------------
mais voila au lieu de m'avoir cette phrase :
La valeur 14 se trouve dans la plage de 01-04-06 au 07-08-06
La valeur 14 se trouve dans la plage de 02-04-06 au 08-08-06
Ou est le problème ?
Bon j'ai pu adopte un code de Daniel;
'--------------------------------------------------------
Private Sub testvaleur(Val As Integer)
Dim Debut, Fin
ctr = Application.Match(Val * 1, Range("A:A"), 0)
If IsNumeric(ctr) Then
Debut = Range("B2")(ctr, 1).Value 'Valeur de la 2eme Col qui
corresponde
'et puis on doit continuer pour trouver la derniere occurence
Fin = Range("B2")(ctr + 7, 1).Value
MsgBox "La valeur " & Val & " se trouve dans la plage de " & Debut
& " au " & Fin
End If
End Sub
'-------------------------------------------------------
mais voila au lieu de m'avoir cette phrase :
La valeur 14 se trouve dans la plage de 01-04-06 au 07-08-06
'-------------------------------------------------------- Private Sub testvaleur(Val As Integer) Dim Debut, Fin ctr = Application.Match(Val * 1, Range("A:A"), 0) If IsNumeric(ctr) Then Debut = Range("B2")(ctr, 1).Value 'Valeur de la 2eme Col qui corresponde 'et puis on doit continuer pour trouver la derniere occurence Fin = Range("B2")(ctr + 7, 1).Value MsgBox "La valeur " & Val & " se trouve dans la plage de " & Debut & " au " & Fin End If End Sub '-------------------------------------------------------
mais voila au lieu de m'avoir cette phrase :
La valeur 14 se trouve dans la plage de 01-04-06 au 07-08-06
La valeur 14 se trouve dans la plage de 02-04-06 au 08-04-06
et voila ce que je voudrais avoir :
La valeur 14 se trouve dans la plage de 02-04-06 au 07-04-06
apt
Bon j'ai changer la procedure pour fonctionner en generale :
Private Sub testvaleur(Val As Integer) Dim Debut, Fin, vFin, ComptPlg ctr = Application.Match(Val * 1, Range("A:A"), 0) If IsNumeric(ctr) Then Debut = Range("B2")(ctr, 1).Value 'Valeur de la 2eme Col qui corresponde ComptPlg = 0 While IsNumeric(vFin) vFin = Application.Match(Val * ComptPlg, Range("A:A"), 0) ComptPlg = ComptPlg + 1 Wend Fin = Range("B2")(vFin, 1).Value End If MsgBox "La valeur " & Val & " se trouve dans la plage de " & Debut & " au " & Fin End Sub '------------------------------------------------------
mais elle ne marche pas !!!
Qqn peut me renseigner ?
Merci.
Bon j'ai changer la procedure pour fonctionner en generale :
Private Sub testvaleur(Val As Integer)
Dim Debut, Fin, vFin, ComptPlg
ctr = Application.Match(Val * 1, Range("A:A"), 0)
If IsNumeric(ctr) Then
Debut = Range("B2")(ctr, 1).Value 'Valeur de la 2eme Col qui
corresponde
ComptPlg = 0
While IsNumeric(vFin)
vFin = Application.Match(Val * ComptPlg, Range("A:A"), 0)
ComptPlg = ComptPlg + 1
Wend
Fin = Range("B2")(vFin, 1).Value
End If
MsgBox "La valeur " & Val & " se trouve dans la plage de " & Debut &
" au " & Fin
End Sub
'------------------------------------------------------
Bon j'ai changer la procedure pour fonctionner en generale :
Private Sub testvaleur(Val As Integer) Dim Debut, Fin, vFin, ComptPlg ctr = Application.Match(Val * 1, Range("A:A"), 0) If IsNumeric(ctr) Then Debut = Range("B2")(ctr, 1).Value 'Valeur de la 2eme Col qui corresponde ComptPlg = 0 While IsNumeric(vFin) vFin = Application.Match(Val * ComptPlg, Range("A:A"), 0) ComptPlg = ComptPlg + 1 Wend Fin = Range("B2")(vFin, 1).Value End If MsgBox "La valeur " & Val & " se trouve dans la plage de " & Debut & " au " & Fin End Sub '------------------------------------------------------