hello hello.
 
j'ai un souci en exécutant ce qui suit
 
Sub GpEffLocVides()
Dim NomFeuil
NomFeuil = "GroupesEffLocVides"
'Mise en place de la nouvelle feuille
     Sheets.Add After:=Sheets(Worksheets.Count)
     ActiveSheet.Name = NomFeuil
'mise en place de la ligne d'intitulé de colone
     Sheets("Groupes" ).Activate
     Rows(1).Select
     Selection.Copy
     Sheets(NomFeuil).Select
     Range("A1" ).Select
     ActiveSheet.Paste
     Application.CutCopyMode = False
'Ta variable de ligne pour le test de valeur
Dim l
l = 2 'car ta première ligne ce sont tes intitulés
'ta variable de linge pour la recopie
Dim lig
lig = 2
'on met en place une boucle pour passer tes valeur
Do While Sheets("Groupes" ).Cells(l, 1) <> "" 'fait tant que n'est pas vide
    'Si Eff locaux vides = "" et si eff locaux vides = 0
     If Sheets("Groupes" ).Cells(l, 23) = "" And _
          Sheets("Groupes" ).Cells(l, 23) = 0 Then
     'tu copie la ligne dans la nouvelle feuille
          Sheets("Groupes" ).Activate
          Rows(l).Select
          Selection.Copy
          Sheets(NomFeuil).Activate
          Cells(lig, 1).Select
          ActiveSheet.Paste
          Application.CutCopyMode = False
     'tu ajoute 1 à ligne pour la prochaine copie
          lig = lig + 1
     'tu supprime la ligne
          Sheets("Groupes" ).Rows(l).Delete
     Else
          'tu passes à la ligne suivante
          l = l + 1
     End If
Loop
Call GpDatEffLocVides
End Sub
----------------------------------------------------------------------
Sub GpDatEffLocVides()
Dim dat
dat = "& Year(Date) - 1" '2004'
'mise en place de la ligne d'intitulé de colone
     Sheets("Groupes" ).Activate
     Rows(1).Select
     Selection.Copy
     Sheets("GroupesEffLocVides" ).Select
     Range("A1" ).Select
     ActiveSheet.Paste
     Application.CutCopyMode = False
'Ta variable de ligne pour le test de valeur
Dim l
l = 2 'car ta première ligne ce sont tes intitulés
'ta variable de linge pour la recopie
Dim lig
lig = Sheets("GroupesEffLocVides" ).Cells(1, 1).End(xlDown).Row + 1
'on met en place une boucle pour passer tes valeur
Do While Sheets("Groupes" ).Cells(l, 1) <> "" 'fait tant que n'est pas vide
    'Si Date Eff locaux vides = "" et si date eff locaux vides = 0
     If Sheets("Groupes" ).Cells(l, 24) = "" And _
          Sheets("Groupes" ).Cells(l, 24) = 0 Then
     'tu copie la ligne dans la nouvelle feuille
          Sheets("Groupes" ).Activate
          Rows(l).Select
          Selection.Copy
          Sheets("GroupesEffLocVides" ).Activate
          Cells(lig, 1).Select
          ActiveSheet.Paste
          Application.CutCopyMode = False
     'tu ajoute 1 à ligne pour la prochaine copie
          lig = lig + 1
     'tu supprime la ligne
          Sheets("Groupes" ).Rows(l).Delete
     Else
          'tu passes à la ligne suivante
          l = l + 1
     End If
Loop
End Sub
 
une fois exécuté "GpEffLocVides()" s' il y a au moins une ligne de trouvée, GpDatEffLocVides() se déroule sans problème.
par contre, s'il n'y a aucune ligne de trouvée j'ai un message d'erreur "erreur définie par l'application ou par l'objet"
 
HELP !!!  
 
 
 
Message édité par peanutz le 22-11-2005 à 14:39:58