XL 2016 distribuer les lignes selon le nom de la 1ère colonne

eastwick

XLDnaute Impliqué
Bonjour à toutes et tous,
Voici un fichier que j'utilise souvent avec formules matricielles. Il fonctionne très bien mais rame grave ! J'aimerais une autre méthode, moins invasive.
Voici donc ma requête : dans l'onglet dépôt (vert), vous avez des infos.
Il s'agit de redistribuer ces infos vers les onglets correspondants (oranges). Le nom de l'onglet (destination) = nom inscrit dans la 1ère colonne de l'onglet dépôt.
Attention, les onglets qui réceptionnent les infos ont des colonnes supplémentaires N T et U qui sont à part.
Vous avez un exemple avec les onglets tous et DST.
Merci d'avance ce que vous pourrez faire pour le gain de temps !
NB : onglet "inconnue" = colonne A contenant XXX et non "inconnue" comme la logique le voudrait.
 

ChTi160

XLDnaute Barbatruc
Bonjour eastwick
première remarque
il y'a peu de données dans le corps de la BDD pour beaucoup de données dans la Colonne "A"
de plus par exemple ta Feuille s'appelle "DST" et dans ta BDD on a un "DST."
y'a t'il toujours cette colonne pleines de Données et le reste vide ?
si non met un fichier plus représentatif !
merci
peux tu expliquer ?
jean marie
 

eastwick

XLDnaute Impliqué
Oui, je sais ce sont des données professionnelles et je n'ai pas envie qu'un collègue les retrouve, ça me causerait souci ! DST. va bien sur l'onglet DST, tu peux lui ajouter un point si tu veux.
La colonne A avec plus de 1000 lignes correspond aux données actualisées, je dois hélas supprimer le contenu des autres cellules adjacentes, dommage car ce serait plus représentatif effectivement. Mais oui les colonnes B à Q de l'onglet dépôt doivent toutes trouver leur place dans l'onglet dont le nom est imposé par la colonne A, DST., DSI, DSE, IFAS, BI, etc etc
Merci de faire ce que tu pourras, j'ai peu de temps pour préparer un fichier plus complet, j'essaierai de le faire un week-end si besoin
Tu es du nord au fait ?
 

ChTi160

XLDnaute Barbatruc
Te
62210 avion !
dommage pour le fichier plus représentatif c'est pas compliqué de mettre des données bidons .
Je vais donc attendre le weekend qui te permettra de mettre un fichier plus représentatif . Lol
bonne continuation
Jean marie
 

eastwick

XLDnaute Impliqué
Voici donc un fichier plus concret. L'onglet vert doit alimenter les onglets oranges. La destination de chaque ligne de l'onglet vert dépend de sa première cellule qui contient le nom de l'onglet sauf : DST. va sur DST et XXX va sur inconnue. J'ai laissé les formules matricielles sur le dernier onglet orange pour vous montrer comment je procédais. Efficace mais très long et pénible. Attention l'onglet vert peut avoir jusque 3000 lignes qui doivent toutes être redistribuées sur les onglets suivants. Pour l'onglet "tous", je fais un copier-coller en tant que valeur. NB attention aux colonnes supplémentaires N T U dans les onglets de destination, qui elles, ne doivent pas être alimentées par "dépôt" (onglet vert). Je ne fais que redire ce que j'ai écrit à l'origine...
Merci d'avance car si vous parvenez à me trouver une solution, je gagnerai un temps précieux !
 

Pièces jointes

  • opérations.xlsm
    952.3 KB · Affichages: 4

ChTi160

XLDnaute Barbatruc
Re
une approche perfectible !
je ne sais pas contrairement a toi comment tout cela fonctionne
j'efface donc les données présentent pour coller les données présentent dans la feuille "dépôt"
j'ai pour travailler isolé les procédure des différentes feuilles "Orange"
VB:
Private Sub Worksheet_Change(ByVal Target As Range)
tu regardes et tu me dis
Bonne fin de journée
jean marie
 

Pièces jointes

  • Suivi_des_opérations Chti160-3.xlsm
    650.4 KB · Affichages: 2

eastwick

XLDnaute Impliqué
Ahhhh !!! Ben écoute, ça parait prometteur. Je vais modifier les cellules XXX en "inconnue", ça fonctionne apparemment bien. Je peux garder ma macro de mise en page dans dépôt ? En effet, la source nait d'une base de données bien plus complexe et touffue... En tous cas, merci, je pense que je devrais en tirer grande satisfaction !
 

eastwick

XLDnaute Impliqué
Juste un petit conflit, les lignes commençant par XXX vont bien sur "tous", mais pas sur "inconnue". Je pensais changer mais inconnue qualifie l'opération et non le responsable... Si tu peux peaufiner ça, ce serait top. Sinon, je corrige ma macro pour n'avoir que "inconnue" comme syntaxe et non plus "XXX"
Dans l'onglet "tous", les infos comment à se déposer en B10 au lieu de B8. Merci pour tout et bonne soirée.
 
Dernière édition:

ChTi160

XLDnaute Barbatruc
re
Le problème venait du fait que le Nom de la Feuille dans la Procédure était
" Case Is = "Inconnue" 'le Nom de la Feuille est "Inconnue"
alors que la feuille avait pour Nom "inconnue" sans majuscule .
j'ai donc mis une majuscule au Nom de la Feuille et le problème a été réglé !
tu peux si tu le veux mettre les deux sans Majuscule !
jean marie
 

Pièces jointes

  • Suivi_des_opérations Chti160-4.xlsm
    651.1 KB · Affichages: 3

ChTi160

XLDnaute Barbatruc
Re
Effectivement , un problème de variable x qui gardait la valeur du nombre de Lignes de la dernière feuille ! ici "Inconnue" 4 lignes donc x restait à 4 au depart de la Boucle !
j'ai donc modifié ainsi
VB:
Public Function Dispache(ByVal T As Variant)
x = 0 'Ici'
With Worksheets("tous")
Jean marie
 

Discussions similaires