Demande d'aide pour boucle VBA

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Hawkeye56

XLDnaute Junior
Bonjour à tous,

Je suis complètement débutant en VBA et j'ai besoin de votre aide.

J'ai un tableau de dotation de vêtement. Je souhaite faire une macro établissant les fiches de préparation pour chaque employé.
Déclencher le filtre auto "non vide" pour le 1er employé copier le résultat (là j'ai 2 plages non contigues) coller dans l'onglet "préparation"
Et recommencer pour chacun des employés jusqu'à la dernière colonne non vide.



Voilà ou j'en suis:Ca fonctionne mais pour le premier employé seulement


Sub Macro3()
'
' Macro3 Macro
' Macro enregistrée le 12/01/2008

Range("E10:G10").Select
Selection.AutoFilter Field:=1, Criteria1:="<>"
'Déclenche le filtre automatique "non vide"
Range("A7:C" & Range("A65536").End(xlUp).Row).Select
'Sélectionne la 1ère plage
Selection.Copy
Sheets("préparation").Select
'Se place sur la 1ère cellule vide de la colonne A
[A65536].Select
Selection.End(xlUp)(2).Select
'Copie la premère plage
ActiveSheet.Paste
Sheets("Saisonniers").Select
Range("E7:E" & Range("A65536").End(xlUp).Row).Select
'Sélectionne la 2ème plage
Selection.Copy
Sheets("préparation").Select
'Se place sur la 1ère cellule vide de la colonne D
[D65536].Select
Selection.End(xlUp)(2).Select
ActiveSheet.Paste
'Copie la 2ème plage
Sheets("Saisonniers").Select
Selection.AutoFilter Field:=1
Application.CutCopyMode = False
'Déclenche le filtre automatique "tous"
ActiveWindow.SmallScroll ToRight:=3
'Décale de 3 colonnes vers la droite

End Sub

Il ya probablement une façon de faire plus simple mais je suis vraiment débutant.

D'avance je vous remercie de votre aide
Je joins mon fichier ce sera plus parlant
 

Pièces jointes

Dernière édition:
Re : Demande d'aide pour boucle VBA

Bonsoir Skoobi,

Ben non, ça ne marche point.

La macro remet bien le filtre auto en "Tout", j'ai vérifié

Dans le fichier joint j'ai effacé toutes les quantités dans l'onglet "bâtiments", en lançant la macro tu constateras que le collage se fait impeccablement avec les noms, prénoms... et rien d'autres, normal. Mais si tu remets de nouvelles quantités et que tu relances la macro alors des lignes blanches apparaissent, le nom de famille n'y est plus. Je ne comprends pas pourquoi .
J'ai tout remis en forme plusieurs fois en pensant avoir fait une mauvaise manip' mais là c'est un mystère...
 

Pièces jointes

Dernière édition:
Re : Demande d'aide pour boucle VBA

Re,

Oui effectivement.
Celà se produit lorsqu'il n'y a qu'une seul valeur dans le tableau.
J'ai corrigé la macro (partie verte):

Code:
Sub test()
Sheets("préparation").Cells.Delete
dercol = [IV7].End(xlToLeft).Column
num = -2
For col = 5 To dercol Step 3
    der = Cells(65536, col).End(xlUp).Row
    num = num + 3
    Selection.AutoFilter Field:=num, Criteria1:="<>"
    Range("A7:C" & Range("A65536").End(xlUp).Row).SpecialCells(xlCellTypeVisible).Copy Sheets("préparation").[A65536].End(xlUp)(4)
    Range(Cells(7, col), Cells(der, col + 2)).SpecialCells(xlCellTypeVisible).Copy Sheets("préparation").[D65536].End(xlUp)(4)
    Set fintableau = Sheets("préparation").[A65536].End(xlUp)
[B][COLOR="Green"]    If fintableau.End(xlUp).Value <> "Service" Then
        fintableau.End(xlUp).Offset(-1, 0).EntireRow.Delete
    Else
        fintableau.Offset(-1, 0).EntireRow.Delete
    End If[/COLOR][/B]
    Sheets("préparation").Columns("A:A").ColumnWidth = 28#
    Sheets("préparation").Columns("B:B").ColumnWidth = 15#
    
    ActiveSheet.ShowAllData
Next
End Sub

PS: attention à la synthaxe de "Service"....
 
Re : Demande d'aide pour boucle VBA

Bravo Skoobi!
Tu es un champion. 🙂

Je m'arrachais les cheveux sur ce problème, je ne comprends pas pourquoi il est survenu mais tu l'as résolu c'est l'essentiel.

Cette fois je pense que ça devrait aller.
De nouveau un grand MERCI
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
10
Affichages
547
Réponses
3
Affichages
193
Réponses
2
Affichages
500
  • Question Question
Microsoft 365 Code VBA
Réponses
2
Affichages
516
  • Question Question
Microsoft 365 Question code VBA
Réponses
2
Affichages
447
Réponses
6
Affichages
734
Retour