fusion de liste un peu spécial

maguetlolo

XLDnaute Junior
Bonjour à tous

je reviens vers vous pour un probleme de fusion de liste
Imaginons cette liste:

Date / Heure / Défaut / N° d'article
08/01/08 / 14:15:15 / 100 / 031765414698756357
08/01/08 / 14:35:24 / 150 / 031765414698756357
08/01/08 / 14:45:01 / 245 / 031765414698756357
08/01/08 / 18:45:24 / 154 / 031765414698756357
08/01/08 / 20:15:12 / 214 / 031765414698756357

et imaginons cette autre liste :

Date / Heure / processus / N° d'article

08/01/08 / 14:10:12 / entrée / 031765414698756357
08/01/08 / 18:40:10 / sortie / 031765414698756357


Il me faut fusionner ces deux listes afin de savoir si les défauts concernant le processus d'entrée de l'article en stock ou le processus de sortie et donc obtenir :


Date / Heure / Défaut / N° d'article / processus
08/01/08 / 14:15:15 / 100 / 031765414698756357 / entrée
08/01/08 / 14:35:24 / 150 / 031765414698756357 / entrée
08/01/08 / 14:45:01 / 245 / 031765414698756357 / entrée
08/01/08 / 18:45:24 / 154 / 031765414698756357 / sortie
08/01/08 / 20:15:12 / 214 / 031765414698756357 / sortie

A savoir bien sur qu'il peut y avoir plusieurs jours entre l'entrée et la sortie de l'article ou bien quelques heure, ou carrément quelques minutes. et également, dans ma vrai liste, il peut y avoir jusque 50 000 N° d'article (soit 50 000 lignes)
Je me doute que je suis peut-être un peu gourmand, mais sait'on jamais certains disent que l'on peut tout faire en VBA!!
 
Dernière édition:

ninbihan

XLDnaute Impliqué
Re : fusion de liste un peu spécial

Bonsoir à tous,

Un essai avec zone nommée et sommeprod...


Bonne soirée,

Ninbihan
 

Pièces jointes

  • processus defaut - Copie.xls
    31.5 KB · Affichages: 35
  • processus defaut - Copie.xls
    31.5 KB · Affichages: 34
  • processus defaut - Copie.xls
    31.5 KB · Affichages: 34

ninbihan

XLDnaute Impliqué
Re : fusion de liste un peu spécial

Bonjour,


Alors un essai en VBA...

Bonne journée,


Ninbihan
 

Pièces jointes

  • processus defaut - Copie.xls
    42 KB · Affichages: 38
  • processus defaut - Copie.xls
    42 KB · Affichages: 37
  • processus defaut - Copie.xls
    42 KB · Affichages: 39

ninbihan

XLDnaute Impliqué
Re : fusion de liste un peu spécial

Re,
Salut Chti160

Juste un essai en déterminant la feuille source à partir du jour du défaut
Code:
Sub process()
Dim Source As Variant
With Sheets("défaut")
For Each Cell In .Range("A2:A" & .Range("A" & .Cells.Rows.Count).End(xlUp).Row)
Source = Sheets("processus(" & Day(Cell) & ")").Range("A1").CurrentRegion
Cell.Offset(0, 3).ClearContents
    For i = 1 To UBound(Source)
        If Cell.Offset(0, 2) = Source(i, 3) And Cell >= Source(i, 1) And Cell <= Source(i, 2) Then
            Cell.Offset(0, 3) = Source(i, 4)
            Exit For
        End If
    Next i
Next Cell
End With
Erase Source
End Sub

Bonne fin d'après midi,

Ninbihan
 

maguetlolo

XLDnaute Junior
Re : fusion de liste un peu spécial

Re,
Salut Chti160

Juste un essai en déterminant la feuille source à partir du jour du défaut
Code:
Sub process()
Dim Source As Variant
With Sheets("défaut")
For Each Cell In .Range("A2:A" & .Range("A" & .Cells.Rows.Count).End(xlUp).Row)
Source = Sheets("processus(" & Day(Cell) & ")").Range("A1").CurrentRegion
Cell.Offset(0, 3).ClearContents
    For i = 1 To UBound(Source)
        If Cell.Offset(0, 2) = Source(i, 3) And Cell >= Source(i, 1) And Cell <= Source(i, 2) Then
            Cell.Offset(0, 3) = Source(i, 4)
            Exit For
        End If
    Next i
Next Cell
End With
Erase Source
End Sub

Bonne fin d'après midi,

Ninbihan




j'ai un défaut: l'indice n'appartient pas a la selection
 

Discussions similaires

Réponses
17
Affichages
3 K

Statistiques des forums

Discussions
313 770
Messages
2 102 235
Membres
108 181
dernier inscrit
Chr1sD