Macro-copier automatiquement les données d'une feuille + filtre avancé

Bonsoir,

J'ai voulu concevoir un filtre en utilisant l'option "filtre avancer". L'idée est de filtrer des commandes sur une machine ou toutes les machines de la date xx/xx/xxxx à la date xx/xx/xxxx. Ce n'est pas évident pour moi.(J'ai réussi à comprendre le concept de "Macros" , c'est déjà un début)

Toutefois, j'ai analysé mon problème et je pense commencer par vous demander l'aide à résoudre les tâches suivantes:

1- Comment puis-je copier automatiquement ( à chaque modification) une zone du tableau dans l'onglet "planning" sur l'onglet "Source"

2- Quelles sont les formules nécessaires pour avoir un filtre de la date à la date.C'est à dire de --- à ---.

3- J'ai essayé deux méthodes ( sur tableau de bord ), je ne sais pas sur laquelle dois-je corriger et continuer !!!!

Merci d'avance.

Bonjour,

1- Comment puis-je copier automatiquement ( à chaque modification) une zone du tableau dans l'onglet "planning" sur l'onglet "Source"

par une macro événementielle qui va se déclencher au changement d'une valeur

elle se met non pas dans un module mais directement dans la feuille

capture d ecran 702
Private Sub Worksheet_Change(ByVal Target As Range)
    If Intersect(Target, Range("B15:E15")) Is Nothing Then Exit Sub
    Filtrer
End Sub

2- Quelles sont les formules nécessaires pour avoir un filtre de la date à la date.C'est à dire de --- à ---.

J'ai changé quelques formules dans la zone V15:Y15 (73050 = 31/12/2099)

Merci Steelson,

Mais j'aimerai aussi garder la feuille Planning ( ou l'on verra l'évolution de la réalisation des commandes) et ça sera la source qui sera automatiquement mise à jour à partir du tableau du planning.

Est ce une macro événementielle,qu'il faudra !!!

Est ce que excel pourra me donner la date du 14/07/2020 qui est comprise entre le 13/07/20 et 15/07/2020 ?

capture1

Après si je sélectionne que le 12/07/2020 j'ai toutes les dates qui s'affichent !!

capture2

J'ai changé quelques formules dans la zone V15:Y15 (73050 = 31/12/2099)

pourquoi jusqu'à 2099 !!

J'ai changé quelques formules dans la zone V15:Y15 (73050 = 31/12/2099)

pourquoi jusqu'à 2099 !!

Tu peux mettre la date que tu veux, mais le filtre ne fonctionne pas avec ""

Est ce que excel pourra me donner la date du 14/07/2020 qui est comprise entre le 13/07/20 et 15/07/2020 ?

C'est le cas aujourd'hui

capture d ecran 703

Après si je sélectionne que le 12/07/2020 j'ai toutes les dates qui s'affichent !!

Non pas toutes, toutes celles postérieures à 12/07/2020

Idem si tu ne mets qu'une date de fin, tu auras toutes celles antérieures à cette date.

Mais j'aimerai aussi garder la feuille Planning ( ou l'on verra l'évolution de la réalisation des commandes) et ça sera la source qui sera automatiquement mise à jour à partir du tableau du planning.

Pour bien comprendre ... planning se déverse dans la source (tout ou selon quels critères ?) et ensuite la source dans tableau de bord ?

Non pas toutes, toutes celles postérieures à 12/07/2020

Idem si tu ne mets qu'une date de fin, tu auras toutes celles antérieures à cette date.

Excellent , c'est que je voulais faire mais je n'ai pas su comment expliquer ce besoin un grand merci.

Pour bien comprendre ... planning se déverse dans la source (tout ou selon quels critères ?) et ensuite la source dans tableau de bord ?

Bien , l'onglet de " planning" est une version de gantt en couleur adaptée au besoin.

L'actualisation se fera toujours au niveau de l'onglet " planning" pour les colonnes de A à H . Et j'aimerai que cette actualisation des colonnes de A à H se retrouve copié systématiquement sur l'onglet "Source".

J'ai actualisé ( en affaires /date /machines ) mon planning.

Sauf que je me retrouve à un petit problème ,j'ai mis la date de 14/7/20 = F3+E3 et la date de 15/07/2020 = G3+1 et cette méthode ne prend pas en compte les weekends !!

capture3

Sauf que je me retrouve à un petit problème ,j'ai mis la date de 14/7/20 = F3+E3

=SERIE.JOUR.OUVRE(F3;E3)

et la date de 15/07/2020 = G3+1 et cette méthode ne prend pas en compte les weekends !!

=SERIE.JOUR.OUVRE(G3;1)

on peut aussi prendre en compte les jours fériés par cette méthode

L'actualisation se fera toujours au niveau de l'onglet " planning" pour les colonnes de A à H . Et j'aimerai que cette actualisation des colonnes de A à H se retrouve copié systématiquement sur l'onglet "Source".

Pour recopier ...

Sub recopier()
With Sheets("Source").ListObjects(1)
    If Not .DataBodyRange Is Nothing Then .DataBodyRange.Delete
    .ListRows.Add
    Sheets("Planning ").Range("A3:H" & Sheets("Planning ").Range("A" & Rows.Count).End(xlUp).Row).Copy _
        Destination:=.DataBodyRange.Cells(1, 1)
End With
End Sub

Pour recopier ...

et pour que ça fonctionne je dois mettre un H3 car je n'ai rien sur l'onglet source !!!

j'ai repéré la faille ou pas

Sub recopier()
With Sheets("Source").ListObjects(1)
    If Not .DataBodyRange Is Nothing Then .DataBodyRange.Delete
    .ListRows.Add
    Sheets("Planning ").Range("A3:H3" & Sheets("Planning ").Range("A" & Rows.Count).End(xlUp).Row).Copy _
        Destination:=.DataBodyRange.Cells(1, 1)
End With
End Sub

on peut aussi prendre en compte les jours fériés par cette méthode

comment puis-je modifiée les workday ( généralement ça sera Samedi et Dimanche or pour mon cas je veux mettre Vendredi et Samedi)!!

c'est bon j'ai trouvé , c'est par WORKDAY.INTL , sauf que le friday and sunday n'existent pas!!

Pour recopier ...

et pour que ça fonctionne je dois mettre un H3 car je n'ai rien sur l'onglet source !!!

j'ai repéré la faille ou pas

Qul est le problème ? je n'ai pas compris ...

on peut aussi prendre en compte les jours fériés par cette méthode

comment puis-je modifiée les workday ( généralement ça sera Samedi et Dimanche or pour mon cas je veux mettre Vendredi et Samedi)!!

je parlais de jours fériés, pas du week end

c'est bon j'ai trouvé , c'est par WORKDAY.INTL , sauf que le friday and sunday n'existent pas!!

=SERIE.JOUR.OUVRE.INTL(F3;E3;"0000110")

et

=SERIE.JOUR.OUVRE.INTL(G3;1;"0000110")

Bonjour Steelson,

Je me demandais s'il existe un code me permettant d'afficher, cette la première ligne au haut lorsque je devais taper dans mon filtre

le 13/7/20. Ou bien le 15/7/20 pour la deuxième ligne.

Exemple: L'ajout d'une colonne Travaux en cours .

capture 5

Machine

Type

Date début

Date fin

Travaux en cours

13/07/20

Je veux que le filtre me face sortir les affaires entre 12/7/20 et 14/7/20 car le 13/7/20 y est compris. C'est possible !!

J'ai oublié d'expliquer que le P faisait référence à une commande planifiée et R à une commandé réalisée.

La date 21/07/2020 contient la formule : =WORKDAY.INTL(G9;1;16)

Or les 0.5 c'est une 1/2 journée.

capture 6

Donc je devrai avoir par ex:

Confection bride0.5j20/07/2020/07/20

Réparation arbre

0.5j20/07/2020/07/20

Idem pour 1.5 j

Confection bride1.5j20/07/2021/07/20
Réparation arbre0.5j21/07/2022/07/20

Je ne sais pas s'il ya une possibilité de jumeler toutes ces exigences avec=WORKDAY.INTL(G9;1;16) .

Y'a t-il une solution miraculeuse,SVP!

PS: J'ai appris beaucoup de chose ces deux jours ,merci.

On pourrait "bricoler" quelque chose ... mais le plus propre serait d'ajouter des heures pour le calcul.

On dérive quand même par rapport au sujet initial.

On dérive quand même par rapport au sujet initial.

Je croyais régler l'affaire qu'avec un filtre avancé or je constate que j'ai beaucoup à apprendre sur Excel et le VBA.

C'est ce que je voulais faire au début, intégrer des heures de travail, enfin estimé la réalisation en heur sauf que c'est compliqué en matière du respect du délai en jour et demie journée, c'est plus pratique.

Et par rapport aux travaux en cours en deux dates, est ce possible !

Il faudrait que tu m'expliques un peu plus comment est fait ton fichier, quand tu mets R pourquoi les dates sont à 0 ? est-ce que tu fais la sommes depuis le début ou depuis la dernière réalisation R ? est-ce une gamme qui se suit d'opé en opé ?

On peut compter en demi-journée sans mettre d'heures à condition de cumuler les journées depuis le début et compter à partir du début. Mais quel "début" ?

Rechercher des sujets similaires à "macro copier automatiquement donnees feuille filtre avance"