Bonjour,
Je suis novice en macro. Habituellement j'utilise que l'enregistreur de macro, mais là je ne peux résoudre mon problème sans le langage VBA. J'ai recherché quelques heures hier, mais sans succès.
Mon problème :
J'ai crée une macro qui filtre les données d'un tableau selon un critère d'équipement puis copie les pièces affectées sur cet équipement sur un autre tableau. Le problème est que ce mois si aucune pièces n'a été sortie sur un équipement. Quand je lance la macro, elle ne trouve pas le critère demandé (logiquement) et bug. J'aimerais rajouter une condition SI le critère n'est pas présent alors passer au deuxième critère. Je vous transmets ma ligne de code actuelle (les équipements sont 1, Video 1, 2 et 3).
	
	
	
	
	
		
Je ne peux pas vous transmettre le fichier pour des raisons de confidentialité. Je vous remercie par avance de votre aide.
	
		
			
		
		
	
				
			Je suis novice en macro. Habituellement j'utilise que l'enregistreur de macro, mais là je ne peux résoudre mon problème sans le langage VBA. J'ai recherché quelques heures hier, mais sans succès.
Mon problème :
J'ai crée une macro qui filtre les données d'un tableau selon un critère d'équipement puis copie les pièces affectées sur cet équipement sur un autre tableau. Le problème est que ce mois si aucune pièces n'a été sortie sur un équipement. Quand je lance la macro, elle ne trouve pas le critère demandé (logiquement) et bug. J'aimerais rajouter une condition SI le critère n'est pas présent alors passer au deuxième critère. Je vous transmets ma ligne de code actuelle (les équipements sont 1, Video 1, 2 et 3).
		Code:
	
	
	Sub pieces_generales2()
'
' pieces_generales2 Macro
' Tri les pieces par equipement
'
'
    Sheets("Calculs").Select
    Range("A16:E16").Select
    Selection.AutoFilter
    Range("D16").Select
    ActiveSheet.Range("$A$16:$E$37").AutoFilter Field:=4, Criteria1:="1" _
        , Operator:=xlOr, Criteria2:="=Vidéo 1"
    Range("A17:E49").Select
    Selection.Copy
    Range("I4").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    ActiveSheet.Range("$A$16:$E$37").AutoFilter Field:=4, Criteria1:="2"
    Range("A17:E51").Select
    Application.CutCopyMode = False
    Selection.Copy
    Range("O4").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    ActiveSheet.Range("$A$16:$E$37").AutoFilter Field:=4, Criteria1:="3"
    Range("A17:E50").Select
    Application.CutCopyMode = False
    Selection.Copy
    Range("U4").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Range("I4:M16").Select
    Application.CutCopyMode = False
    Selection.Borders(xlDiagonalDown).LineStyle = xlNone
    Selection.Borders(xlDiagonalUp).LineStyle = xlNone
    With Selection.Borders(xlEdgeLeft)
        .LineStyle = xlContinuous
        .ColorIndex = 0
        .TintAndShade = 0
        .Weight = xlThin
    End With
    With Selection.Borders(xlEdgeTop)
        .LineStyle = xlContinuous
        .ColorIndex = 0
        .TintAndShade = 0
        .Weight = xlThin
    End With
    With Selection.Borders(xlEdgeBottom)
        .LineStyle = xlContinuous
        .ColorIndex = 0
        .TintAndShade = 0
        .Weight = xlThin
    End With
    With Selection.Borders(xlEdgeRight)
        .LineStyle = xlContinuous
        .ColorIndex = 0
        .TintAndShade = 0
        .Weight = xlThin
    End With
    With Selection.Borders(xlInsideVertical)
        .LineStyle = xlContinuous
        .ColorIndex = 0
        .TintAndShade = 0
        .Weight = xlThin
    End With
    With Selection.Borders(xlInsideHorizontal)
        .LineStyle = xlContinuous
        .ColorIndex = 0
        .TintAndShade = 0
        .Weight = xlThin
    End With
    Range("A16:E16").Select
    Selection.AutoFilter
    Sheets("Calculs").Select
End Sub
	Je ne peux pas vous transmettre le fichier pour des raisons de confidentialité. Je vous remercie par avance de votre aide.