Bonjour seniorpapou,
je vois qur tu te souviens de m apremière demande, fichier opérationnel grace à ton aide précieuse et je tiens à t'en remercier.
Concernant cette demande ce que je souhaite, mais je ne sais pas si cela est réalisable, c'est :
lorsque j'applique mon filtre avec un N° de devis (forcément 7 lignes car 1 devis = 7 lignes), je souhaite vérifier si dans la cellule (se trouvant en position colonne 2 et 3émé ligne filtrée) l'information "VALIDER" est contenu
si oui => msg box (devis non modifiable)
Si non => je continue l'exécution de la macro
Ci-dessous macro
monarticle = "07-01-003"
If Sheets("feuil1" ).FilterMode Then ActiveSheet.ShowAllData
Application.DisplayAlerts = False
ligneinser = Sheets("feuil2" ).Cells(65527, 1).End(xlUp).Row + 1
Range("a1" ).AutoFilter Field:=1, Criteria1:=monarticle
nombsel = Application.WorksheetFunction.Subtotal(3, Range("a:a" )) - 1
If nombsel <> 14 Then
Call MsgBox("Le devis est inconnu ou erreur dans la base", , "Merci de vérifier votre N° de devis" )
Else
if .............?
Call MsgBox("attention", , " devis non modifiable" )
Else
Range(Cells(2, 1), Cells(65527, 1).End(xlUp).Offset(-7, 0)).Select
Selection.EntireRow.Copy
ActiveSheet.Paste Destination:=Sheets("feuil2" ).Cells(ligneinser, 1)
Selection.Delete
End If
End If
ActiveSheet.ShowAllData
Application.DisplayAlerts = True
Range("a1" ).Select
End Sub
Ci-joint fichier
http://cjoint.com/?dmrf2inJle
le devis 07-01-003 devrait renvoyer avec la macro que je cherche =>msg box (devis non modifiable) car quand j'applique le filtre à l'intersection de la 2éme colonne et de la 3ème ligne filtrée j'ai dans la cellule = VALIDER
a ta disposition,