Suivie de dossier
#1
Aspirant XLPages

Inscription: 13/04/2010

Messages: 29

Système d'exploitation:
PC
Version Excel utilisée:
excel 2007
Posté le : 27-05-2010 09h35
 Bonjour le forum!

En ce moment je bloque contre quelque chose que je n'arrive pas à faire malgré mes quelques recherches sur la toile....

Voila mon problème :

Dans le cadre d'améliorer le suivie des dossiers d'une entreprise, je souhaite créer un planning. Ce planning est composé de plusieurs étapes :
      - L'employé rempli les champs en jaune de la 1ère étape, une fois que tout les champs sont remplis, il met "OK" dans la colonne "Validation". 
      - Ensuite, une macro permet de couper/coller une ligne. Avec une TextBox, on rentre le "N° Devis" de la ligne que l'on veut couper/coller. La macro vérifie que sa colonne validation est "OK", s'il est "OK" alors la macro couper/coller cette ligne dans le tableau suivant, sur la 1ère ligne libre.
      - On passe ensuite au 2ème tableau, les données du 1er tableau y sont, on doit juste remplir les champs en jaune.
      - Et ainsi de suite....

Je n'arrive pas a faire la macro qui arrive sélectionne la bonne ligne à couper coller :(.

En espérant avoir été clair, merci d'avance 


Pièce jointe:
xlsm Suivie_Dossier2.xlsm   [ Taille: 32.89 Ko - Téléchargements: 493 ]
Hors Ligne
Rapport   Haut 

Re: Suivie de dossier
#2
Webmestre

Inscription: 18/05/2006
De Saône-et-Loire (71)

Messages: 1539

Système d'exploitation:
PC
Version Excel utilisée:
97, 2000, 2002, 2003, 2007, 2010, 2013, 2016 et 365
Posté le : 27-05-2010 10h50
Bonjour vodkaddict, le Forum,

Je viens de jeter un oeil sur ton fichier... si tu parles de couper/coller, cela sous-entend donc que des lignes vont être supprimée d'un tableau pour être ajoutée (ou insérée) dans le suivant. Comment comptes-tu pouvoir gérer des tableaux, les uns à la suite des autres en accordéon comme ça? Ca me paraît un peu "usine" ton truc à vrai dire, non ?

Dans la même optique, ton premier tableau comporte 10 lignes exploitables : et si les dossiers avaient un peu de retard et s'empilaient en attente jusqu'à dépasser ce quota de 10, que se passe-t'il ? Tu insérerais une ou plusieurs lignes supplémentaires ? Dans ce cas, retour à ma remarque précédente, comment gérer ce nouveau décalage de ligne ?

Par ailleurs, les colonnes (libellés) de chaque tableau ne sont apparemment pas toujours dans le même ordre et s'entremêlent avec de nouvelles colonnes vides (que l'employé devra remplir) ce qui ne facilite évidemment pas non plus la mise en oeuvre d'un automatisme VBA...

Evidemment, on peut tenter de contourner dans une macro toutes ces contraintes, mais à quel prix ? Ca sent l'usine à gaz VBA à plein nez !

Et si tu souhaites ensuite effectuer une modification de ton fichier, tu vas galérer tout autant pour trouver quelqu'un suffisamment motivé pour reprendre l'usine en question...

Non, je pense sincèrement qu'il conviendrait que tu revois un peu la conception de ton suivi de dossiers pour tenter de l'adapter et en simplifier une automatisation par macro.

Cordialement,

Didier_mDF
Image redimensionnée
Le Webmaster

La réponse vous satisfait ? Merci de revenir solder le sujet en [résolu], voir ce lien
Hors Ligne
Rapport   Haut 

Re: Suivie de dossier
#3
Aspirant XLPages

Inscription: 13/04/2010

Messages: 29

Système d'exploitation:
PC
Version Excel utilisée:
excel 2007
Posté le : 27-05-2010 11h26
Tu as raison, les tableaux en cascade ce n'est vraiment pas terrible.... Je m'en suis rendu compte après avoir posté.

J'ai donc créer une feuille pour chaque tableau ("En attente de livraison",....) comme cela si les commandes arrive en masse, il y aura toujours de la place.

J'ai fait un programme mais cela fait un peu usine à gaz ^^". Enfin je fais avec les quelques connaissances que je possède en VBA >_>.

En tout cas je te remercie de ta réponse toujours aussi rapide :)

Je te met mon programme si tu veux y jeter un coup d'oeil.

PS : "Feuil6" sert juste pour le transfert des données  
Pièce jointe:
xlsm Suivie_Dossier4.xlsm   [ Taille: 26.29 Ko - Téléchargements: 559 ]
Hors Ligne
Rapport   Haut 

Re: Suivie de dossier
#4
Webmestre

Inscription: 18/05/2006
De Saône-et-Loire (71)

Messages: 1539

Système d'exploitation:
PC
Version Excel utilisée:
97, 2000, 2002, 2003, 2007, 2010, 2013, 2016 et 365
Posté le : 27-05-2010 22h01
Bien, vodkaddict, tu trouveras ci-joint mon interprétation de la situation.

J'ai utilisé le code VBA suivant :

DANS LE MODULE DE CODE DE L'OBJET THISWORKBOOK
Option Explicit
' myDearFriend!  -  www.mdf-xlpages.com

Private Sub Workbook_SheetBeforeDoubleClick(ByVal Sh As Object, ByVal Target As Range, Cancel As Boolean)
    If Not Application.Intersect(Target, Sh.Columns(1), Sh.UsedRange) Is Nothing And UCase(Target.Value) = "OK" Then
        Cancel = True
        Traitement Sh.Index, Target.Row
    End If
End Sub
 
DANS UN MODULE DE CODE STANDARD
Option Explicit
' myDearFriend!  -  www.mdf-xlpages.com
Sub Traitement(F As Byte, Lsource As Long)
Dim TabSource As Variant
Dim Lcible As Long
Dim C As Integer, Ccible As Integer
    'Mémorise le tableau source
    With Sheets(F)
        TabSource = Application.Intersect(.UsedRange, .Rows("5:10000")).Formula
    End With
    With Sheets(F).Next
        'Détermine la première ligne libre dans le tableau cible
        Lcible = .Cells(.Rows.Count, 5).End(xlUp).Row + 1
        'Pour chaque colonne du tableau source
        For C = 1 To UBound(TabSource, 2)
            If TabSource(1, C) <> "Validation" Then
                'Cherche l'entête équivalente
                Ccible = .Rows(5).Find(What:=TabSource(1, C), LookAt:=xlWhole).Column
                'Recopie les données dans le tableau cible
                .Cells(Lcible, Ccible).Formula = TabSource(Lsource - 4, C)
            End If
        Next C
        .Activate
    End With
    'Efface l'ancienne ligne du tableau source
    Sheets(F).Rows(Lsource).SpecialCells(xlCellTypeConstants, 23).ClearContents
End Sub
Finalement, peu de lignes de code suffisent si le projet est construit en prenant en compte les contraintes liées à l'automatisme VBA.

Pour réaliser le fichier joint, le plus long pour moi (trop long !) ce fut de reconstruire tes tableaux pour en avoir déjà un par onglet, mais aussi, pour supprimer toutes les cellules fusionnées que tu avais dispersées un peu partout.

Une chose à retenir vodkaddict : les cellules fusionnées, c'est l'ennemi des macros ! C'est même souvent l'ennemi des formules aussi, bref c'est à proscrire.
Souvent, la fusion de cellules ne sert à rien si ce n'est qu'à être utilisée à des fins esthétiques. Or dans ce dernier cas, ça peut être avantageusement remplacé en utilisant simplement l'option d'alignement horizontal de texte "centré sur plusieurs colonnes" (c'est ce que j'ai fait dans la pièce jointe).

Par ailleurs, pour que cette macro fonctionne, les entêtes de colonne :
- doivent être impérativement en ligne n° 5 sur chaque onglet.
- doivent comporter des libellés "uniques" (sans doublon dans un même tableau) : par exemple, pour le libellé "Version" qu'on retrouvait dans plusieurs colonnes, je l'ai modifié en "Version DC", "Version CCA", "Version BJ", etc... pour n'obtenir que des entêtes uniques et reconnaissables par la macro.
- dans chaque onglet, on retrouvera ces mêmes libellés écrits exactement de la même façon (attention donc aux minuscules, majuscules et aux éventuels caractères espaces résiduels, sous peine de plantage).

J'espère que ça correspondra à ce que tu cherches...

Cordialement,
Pièce jointe:
zip mDFpourVodkaddict.zip   [ Taille: 32.21 Ko - Téléchargements: 500 ]

Didier_mDF
Image redimensionnée
Le Webmaster

La réponse vous satisfait ? Merci de revenir solder le sujet en [résolu], voir ce lien
Hors Ligne
Rapport   Haut 

Re: Suivie de dossier
#5
Aspirant XLPages

Inscription: 13/04/2010

Messages: 29

Système d'exploitation:
PC
Version Excel utilisée:
excel 2007
Posté le : 28-05-2010 09h46
Wooh :o

Franchement je suis impressionné de voir que tu fais pareil que mon programme (en mieux bien sur) en si peu de ligne ^^".

Encore une fois je te remercie pour ton aide :).

Et merci aussi des petits conseils par rapport à la fusion des cellules, je ne le savais pas, je vais éviter maintenant ^^.

Edité par vodkaddict le 28/05/2010 17:12:25
Hors Ligne
Rapport   Haut 


Vous pouvez voir les sujets.
Vous ne pouvez pas débuter de nouveaux sujets.
Vous ne pouvez pas répondre aux contributions.
Vous ne pouvez pas éditer vos contributions.
Vous ne pouvez pas effacez vos contributions.
Vous ne pouvez pas ajouter de nouveaux sondages.
Vous ne pouvez pas voter en sondage.
Vous ne pouvez pas attacher des fichiers à vos contributions.
Vous ne pouvez pas poster sans approbation.

[Recherche avancée]


Qui consulte actuellement ce sujet ?   1 Utilisateur(s) anonymes