Identifications ancienne/nouvelle référence stock

flint6593

XLDnaute Occasionnel
Bonjour,
Je vous écrit car je suis vraiment bloqué.
Je suis en charge de la gestion des stocks et nous sommes en plein nettoyage.
Pour ce faire nous avons eu une extraction de notre base de données sous Excel, le problème c'est que tout n'est pas bien identifié.

Mon Excel comprends 5 colonnes:
- Position (ancienneté), REF de base, le code changement, Nouvelle REF, code mouvement, Dernière REF.

En gros je travail par famille et j'ai besoin de relier chaque REF de base (colonne B) à la dernière REF connue (colonne F) et ceci pour les codes changements 001 et 002.

Cela n'est pas très clair, mais je met un fichier en exemple avec ce que j'ai et ce que j'aimerais...

Je suis preneur de tout conseils possibles... J'ai 16000 lignes à traiter, à la main j'en ai jusqu'à Noel...

Merci d'avance!!

Flint!
 

Pièces jointes

  • Classeur3.xlsx
    19.7 KB · Affichages: 70
  • Classeur3.xlsx
    19.7 KB · Affichages: 66
  • Classeur3.xlsx
    19.7 KB · Affichages: 67

franciszen

XLDnaute Nouveau
Re : Identifications ancienne/nouvelle référence stock

Bonjour, j'ai regardé ton fichier, il en ressort d'après moi que les anciennes références contenaient des caractères ex TP3100 et que tu les subsitues par des chiffres le code TP33100 deviens 779-407-925 c'est bien cela
 

flint6593

XLDnaute Occasionnel
Re : Identifications ancienne/nouvelle référence stock

Le but étant de retrouver pour chaque REF (colonne B), la dernière REF connue et l'indiquer dans la colonne F.
Les évolutions de ref sont tracées par les codes 001 ou 002 uniquement.
 

ROGER2327

XLDnaute Barbatruc
Re : Identifications ancienne/nouvelle référence stock

Bonjour à tous.


À flint6593 :
Deux questions (pour l'instant) :​
  1. Dans la mise à jour apparaît une colonne MVT. Comment la calcule-t-on ?​
  2. Mise à part cette nouvelle colonne, ce résultat​
    Capture4.jpg
    est-il correct ? Sinon, où sont les erreurs ?​
Merci d'avance.​


ROGER2327
#6762


Mardi 10 Phalle 140 (Sainte Nitouche, orante - fête Suprême Quarte)
3 Fructidor An CCXXI, 6,0575h - lycoperdon
2013-W34-2T14:32:17Z
 

Pièces jointes

  • Capture4.jpg
    Capture4.jpg
    73.1 KB · Affichages: 69
  • Capture4.jpg
    Capture4.jpg
    73.1 KB · Affichages: 69
Dernière édition:

flint6593

XLDnaute Occasionnel
Re : Identifications ancienne/nouvelle référence stock

Bonjour,
Désolé de ne pas être passé hier... Les inventaires de stocks c'est... vraiment chiant!! :)

@ROGER2327:
C'est tout à fait ça!
La colonne MVT ne se calcule pas, elle est donnée en fonction de la colonne CHANGE.
MVT = 1 pour CHANGE = 001 et MVT = 2 pour CHANGE = 000, 002 et 003.
C'est l'extraction qui donne l'info.
Tu as utilisé des formules ou des macros? J'ai oublié de préciser que j'utilise pas mal de macro, je me débrouille un peu.
Je veux bien ta méthode !! :)
Merci!!!

@franciszen:
Ca pourrais fonctionner, faut que je regarde car je ne dois pas changer la mise en forme pour les lignes...
Mais je vais tester!!!
Merci,
 

flint6593

XLDnaute Occasionnel
Re : Identifications ancienne/nouvelle référence stock

franciszen,
Malheureusement cela n'est pas tout à fait correct car on ne suit pas l'évolution entre les référecences.

Plusieurs REF peuvent avoir la même NEW REF, et la NEW REF peut se retrouver dans la colonne REF plus haut.
C'est le cheminement qui est compliqué...

Je vais partir sur cette base et essayer de le développer par macro...

Merci quand même...
 

ROGER2327

XLDnaute Barbatruc
Re : Identifications ancienne/nouvelle référence stock

Re...


franciszen,
Malheureusement cela n'est pas tout à fait correct car on ne suit pas l'évolution entre les référecences.

Plusieurs REF peuvent avoir la même NEW REF, et la NEW REF peut se retrouver dans la colonne REF plus haut.
C'est le cheminement qui est compliqué...
(...)
Si c'est compliqué pour vous, ça l'est encore plus pour moi qui n'ai pas le cahier des charges. Il suffirait que vous décrivissiez le processus complet pour qu'on arrive rapidement à une solution...

En attendant, voici la procédure que j'utilise :​
VB:
Sub tata()
Dim i&, j&, l&, c&, a$, r, v(), w()

    With Sheets("Feuil1").Range("B3:F3") 'Plage de titre

        With .Parent.Range(.Cells, .Parent.Cells(.Parent.Rows.Count, .Column).End(xlUp))
            a = .Address
            v = .Value
        End With
        .Parent.Copy After:=.Parent
    End With
    l = UBound(v)
    c = UBound(v, 2) + 1
    With Range(a).Resize(, c)
        With Columns(.Column).Offset(, 4)
            .Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromLeftOrAbove
            .NumberFormat = "General"
        End With
        w = .Value
        w(1, 5) = "Mvt"
        For i = 2 To l
            If IsEmpty(w(i, 3)) Then
                w(i, 5) = Empty
            ElseIf w(i, 3) = "001" Then
                w(i, 5) = 1
            ElseIf w(i, 3) Like "00[0,2-3]" Then
                w(i, 5) = 2
            End If
            If v(i, 3) = "001" Or v(i, 3) = "002" Then
                r = v(i, 4)
                For j = 1 To l
                    If r = v(j, 2) Then Exit For
                Next
                If j <= l Then w(i, 6) = w(j, 6)
            End If
        Next
        .Resize(, c).Value = w
    End With
End Sub
Elle est à placer dans un module standard.
Attention à bien adapter cette ligne !​
VB:
    With Sheets("Feuil1").Range("B3:F3") 'Plage de titre
Le résultat est placé dans une nouvelle feuille afin de préserver l'intégrité des données originales.

Dans le classeur joint, la procédure est associée au raccourcis-clavier Ctrl Maj M.​



ROGER2327
#6770


Jeudi 12 Phalle 140 (Sainte Andouille, amphibologue - fête Suprême Quarte)
5 Fructidor An CCXXI, 5,3247h - saumon
2013-W34-4T12:46:45Z
 

Pièces jointes

  • Copie de Classeur3.xlsm
    28 KB · Affichages: 41
  • Copie de Classeur3.xlsm
    28 KB · Affichages: 45
  • Copie de Classeur3.xlsm
    28 KB · Affichages: 51

flint6593

XLDnaute Occasionnel
Re : Identifications ancienne/nouvelle référence stock

Bonjour,
J'imagine que ce n'est absolument pas simple, et je n'ai en rien critiqué ou blâmé.
Franciszen ayant passé de son temps à m'aider, je ne me serais jamais permis...

ROGER2327, merci pour ce code, c'est parfait!!!!!

Sujet clôturé, merci encore pour tout!!!!!!!!!!!!!!!!! :D
 

Discussions similaires

Membres actuellement en ligne

Statistiques des forums

Discussions
312 489
Messages
2 088 855
Membres
103 977
dernier inscrit
Hermet