XL 2016 Pour les pros de la manipulation de données

cortilolo

XLDnaute Nouveau
Bonjour à tous,
j'ai besoin d'une aide car ça fait un moment que je suis sur un truc qui a l'air hyper simple mais que je n'arrive pas à automatiser.
En fichier joint, je vous laisse le fichier avec deux onglet.
dans l'onglet j'ai c'est un extrait d'une base de données que j'ai
dans l'onglet je veux, c'est un extrait de la base de données que je voudrais obtenir

En résumé je veux mettre des attributs de champ qui sont en colonne en ligne

Merci d'avance de votre aide
 

Pièces jointes

  • test.xlsx
    8.7 KB · Affichages: 18

cortilolo

XLDnaute Nouveau
alors @soan je reviens vers toi parce qu'en fait ça ne marche pas dès que j'ai 3 colonnes dans l'onglet j'ai.
Je te remets un fichier test joint pour te montrer ce que je veux dans l'onglet du même nom.
Merci d'avance
 

Pièces jointes

  • test.xlsm
    17.3 KB · Affichages: 2

soan

XLDnaute Barbatruc
Inactif
Allô tonton ? c'est Roro. Oui, dis donc, voilà pourquoi j'te téléphone. Allô tonton ? Coupez pas, j'suis avec Marseille. Oui, allô tonton ? oh, Alfonso ? c'est toi Alfonso ? c'est Roro. Alors dis donc, tout s'est bien passé, j'ai passé la frontière belge. J'vais à Bruxelles, puis avec le billet d'avion, j'apporte le colis comme tu m'as dit à New York, à l'adresse que tu m'as indiquée. Tu veux que j'te répète l'adresse que tu m'as dite ? Non ? Ah bon, non, bon. All... tonton ? pourquoi tu tousses ? Oui, toi qui m'prends toujours pour un imbécile. « Y'a qu'toi qui peut traverser les frontières », tu m'dis tout l'temps. Alors dis donc, voilà pourquoi j't'appelle. Allô, Marseille, coupez pas. Bon, c'est au sujet des vingt kilos de bicarbonate de soude. Allô tonton ? Mais pourquoi tu tousses ? Bicarbonate. Oh, alors, ce téléphone, alors. « B » comme hip hip hip hourra. « I » comme interdit d'séjour. « C » comme came. Tu comprends rien du tout. Il comprend rien à c'que j'lui dis. T'es, t'es stupéfiant alors. Allô tonton ? Pourquoi tu tousses ? Alors voilà c'qui s'passe ; euh, j'suis au p'tit café, à côté d'la douane, là. J'suis avec les douaniers, là. Allô tonton ? Pourquoi tu tousses ? Oui, où il est le bicarbonate ? Oh, ben il risque rien ! Il est dans les mains du chef douanier, là. Alors dis donc, voilà pourquoi j't'appelle. Trois fois rien. C'est bénin. Y'a pas vingt kilos d'bicarbonate, y'a vingt kilos 500 grammes ; alors il faut payer une surtaxe pour les 500 grammes de 2 francs 50. Le reçu, est-ce que j'dois le mettre à mon nom ? Ou à ton nom ? Alfonso, 235 Corbelsace, à Marseille, 2ème étage, porte gauche ? Allô tonton ? Pourquoi tu tousses ? Eh ben j'vais l'payer. Y'a les douaniers qui rigolent. C'est bien la première fois qu'j'vois rire un douanier, dis donc. Oui, alors dis donc on est en train d'boire d'la bière on s'amuse bien. Ils ont analysé l'bicarbonate... Allô tonton ? Pourquoi tu tousses ? Ç'en n'est pas du bicarbonate. C'est du sucre en poudre. Allô tonton ? Pourquoi tu tousses plus ?


Pourquoi j'ai écrit tout l'paragraphe ci-dessus ? oh, ben j'sais pas, moi... p't'être à cause de tes 2 cellules B10 et B17 ? leur contenu m'a stupéfié, si tu vois c'que j'veux dire ! ça s'rait pas ça, les 500 grammes d'excédent d'bicarbonate de soude ? 😜 😁 ça expliquerait aussi tes hallucinations ; du genre de croire que mon code VBA initial pouvait marcher d'emblée, comme ça, sur ton nouveau fichier, alors que la structure est différente... ma sub aurait dû s'dire : « tiens, ben oui, v'là qu'y'a une 3ème colonne dans les données de départ ; bizarrement, cette 3ème colonne comporte que des 1 et que des 0 ; c'est sans doute un code binaire complexe inventé par l'organisation pour communiquer avec leurs collègues de New York ; j'vais la prendre aussi en compte, ça fera toujours plaisir à Alfonso ! à tout hasard, y'a pas une 5ème colonne, aussi ? comme dans V pour Visiteurs... » ; bon, à part ça, même chose qu'avec mon 1er fichier : la 2ème feuille est vide ; va sur la 1ère feuille, et fais Ctrl e ➯ travail effectué ! 😊 (même si c'est à partir de 3 colonnes ! 😁 😜)

NB : j'ai tardé à te répondre car j'ai eu une panne internet, pas pa'c'que j'ai prolongé ma discussion avec les douaniers ; euh, les vingt kilos 500 grammes de sucre en poudre, faut toujours les livrer à New York ou j'peux laisser tomber ? (c'est pas étonnant si t'as du diabète, tonton Alfonso ! bon, j'suis tout d'même ravi qu'tu tousses plus !)

VB:
Option Explicit

Sub Essai()
  If ActiveSheet.Name <> "j'ai" Then Exit Sub
  Dim dlg&: dlg = Cells(Rows.Count, 1).End(3).Row
  If dlg = 1 And IsEmpty([A1]) Then Exit Sub
  Dim ref$, chn$, k As Byte, lg1&, lg2&, dh As Byte
  lg2 = 1: dh = 1: Application.ScreenUpdating = 0
  With Worksheets("je veux")
    For lg1 = 1 To dlg
      ref = Cells(lg1, 1): chn = Cells(lg1, 2): k = Val(Cells(lg1, 3))
      With .Cells(lg2, 1)
        If .Value <> "" Then _
          If ref <> .Value Then lg2 = lg2 + 1: dh = 1
      End With
      With .Cells(lg2, 1)
        .Value = ref: .Offset(, dh) = chn: .Offset(, dh + 1) = k: dh = dh + 2
      End With
    Next lg1
    .Select
  End With
End Sub

si besoin, tu peux demander une adaptation.

(au point où on en est, une de plus, une de moins... 😁😂🤣)

à te lire pour avoir ton avis. 😉



@cortilolo : ça s'ra quoi, la prochaine livraison ? 50 kilos d'cortisone ?

soan
 

Pièces jointes

  • test v3.xlsm
    17.2 KB · Affichages: 6
Dernière édition:

soan

XLDnaute Barbatruc
Inactif
Bonjour cortilolo,

comment vas-tu ? :) quand j'avais vu le fichier de ton post #18, j'm'étais dit : « ben on est loin des gentils p'tits animaux ! (cheval, truie, vache, chien, renard, chat, tortue) 😄 😂 🤣 » ; j'me suis dit : « oh, tu dois travailler pour la police, soit en tant que policier, soit en tant que médecin, voire même médecin légiste ! 😜 » ; c'est peut-être toi qui arrête des chauffards, ou qui examine des conducteurs impliqués dans des accidents ? et si t'es médecin, c'est qui, ta collègue ? le Dr Michaëla Quinn ? Dana Scully ? Laurel Weaver ? 😁 😄 que fais-tu si l'accident est causé par une soucoupe volante dont le conducteur est une vilaine bestiole qui raffole d'eau sucrée ? peux-tu prévenir les Agents K, J et L ? 🤣 🤣 🤣 (non, je parle pas de détergents...)

bon, sérieusement, pour ton fichier, tout est ok ? ou t'as besoin d'une petite adaptation ?

voici un petit cadeau bonus : youtu.be/4IFZNg20h40​

soan
 

cortilolo

XLDnaute Nouveau
Bonjour cortilolo,

comment vas-tu ? :) quand j'avais vu le fichier de ton post #18, j'm'étais dit : « ben on est loin des gentils p'tits animaux ! (cheval, truie, vache, chien, renard, chat, tortue) 😄 😂 🤣 » ; j'me suis dit : « oh, tu dois travailler pour la police, soit en tant que policier, soit en tant que médecin, voire même médecin légiste ! 😜 » ; c'est peut-être toi qui arrête des chauffards, ou qui examine des conducteurs impliqués dans des accidents ? et si t'es médecin, c'est qui, ta collègue ? le Dr Michaëla Quinn ? Dana Scully ? Laurel Weaver ? 😁 😄 que fais-tu si l'accident est causé par une soucoupe volante dont le conducteur est une vilaine bestiole qui raffole d'eau sucrée ? peux-tu prévenir les Agents K, J et L ? 🤣 🤣 🤣 (non, je parle pas de détergents...)

bon, sérieusement, pour ton fichier, tout est ok ? ou t'as besoin d'une petite adaptation ?

voici un petit cadeau bonus : youtu.be/4IFZNg20h40​

soan
Haha magnifique le Fernand Raynaud.
et oui je travaille dans le domaine de la Sécurité Routière, quelle surprise ;)
Je vois que toi même à 5h32 du mat' tu demande du boulot, t'es un sacré spécimen 😊
Bon puisque tu réclames voici un petit problème pour toi.
dans l'onglet "je veux" j'ai rajouté les colonnes en rouge que je souhaite obtenir. Dans les colonnes O P et Q je veux obtenir les valeurs des colonnes G H I si et seulement si ces 3 colonnes G H I ont des valeurs communes avec B C D E et F.
En bref faut regarder si G est dans B C D E ou F, si oui je mets la valeur dans O, après on regarde si H est dans B C D E ou F, si oui je mets la valeur dans P et enfin je regarde si I est dans B C D E ou F et si oui je mets la valeur dans Q.
Facile hein?

Je retourne boire mon eau ferrugineuse

A+
 

Pièces jointes

  • pour soan.xlsx
    12.3 KB · Affichages: 3

soan

XLDnaute Barbatruc
Inactif
Bonsoir cortilolo,

ce matin, j'avais bien vu ton post ; comme j'avais veillé toute la nuit, j'ai eu une panne d'oreiller à l'envers : au lieu d'avoir du mal à m'lever, j'ai eu du mal à rester éveillé plus longtemps ! 😴 😴 😴

ton fichier en retour ; sur "Feuil1", fais Ctrl e ➯ travail effectué ! 😊

VB:
Option Explicit

Sub Essai()
  If ActiveSheet.Name <> "Feuil1" Then Exit Sub
  Dim T, R, n&: n = Cells(Rows.Count, 1).End(3).Row: If n = 1 Then Exit Sub
  Columns("O:Q").ClearContents 'efface d'éventuels anciens résultats
  n = n - 1: T = [B2].Resize(n, 8): ReDim R(1 To n, 1 To 3)
  Dim c As Byte, d As Byte, i&, j As Byte, k As Byte: Application.ScreenUpdating = 0
  For i = 1 To 3: Cells(1, 14 + i) = "facteur" & Chr$(10) & "trouvé " & i: Next i
  For i = 1 To n
    d = 1
    For j = 6 To 8
      c = Val(T(i, j)): If c = 0 Then Exit For
      For k = 1 To 5
        If T(i, k) = c Then
          R(i, d) = c: d = d + 1: Exit For
        End If
      Next k
    Next j
  Next i
  [O2].Resize(n, 3) = R
End Sub

quand je t'ai demandé si tu avais besoin d'une petite adaptation, j'avais pas du tout pensé que tu me proposerai un autre exercice très différent ! 😄 la prochaine fois, ce sera mieux que tu crées un autre sujet, afin que les lecteurs du site XLD qui ont le même genre d'exo que les tiens puissent le retrouver facilement, ce qui n'est pas le cas quand tout est mélangé dans un même sujet. ;) si, si, j't'assure : t'es pas le seul à avoir le même genre de problèmes : tu as sûrement d'autres collègues de la Sécurité Routière, même s'ils sont peut-être à l'autre bout d'la France ! et qui sait ? peut-être que même des homologues étrangers seront intéressés ? par exemple :

Image.jpg


Jon Baker et Ponch, dans CHiP's : California Highway Patrol's

soan
 

Pièces jointes

  • Exo OPQ.xlsm
    21.6 KB · Affichages: 5
Dernière édition:

soan

XLDnaute Barbatruc
Inactif
Bonsoir cortilolo,

tu as écrit : « merci pour le boulot en tout cas ça marche nickel »

merci pour ton retour d'info ! 😊 j'suis ravi qu'ma solution te convienne ! en plus, comme j'ai beaucoup tardé à te répondre, j'ai cru un moment que t'allais m'écrire : « c'est trop tard, je l'ai déjà fait moi-même. » 😜

si tu as cliqué sur le spoiler de mon post #23, je pensais que tu allais m'dire si t'es le beau blond ou le beau brun ; dans les 2 cas, paraît qu'ils ont un succès fou auprès des femmes ! 😄 🤣 j'espère que tu fais pas d'PV aujourd'hui : ils risquent d'être pris pour un poisson d'avril ! 🐟 petite question : est-ce que les conductrices ont droit à plus d'indulgence de ta part ? je veux dire : si tu arrêtes une femme qui n'a pas ses papiers, qu'elle est ivre morte et shootée plein pot, et qu'elle a juste « emprunté » son véhicule sans avertir son propriétaire au préalable, est-ce que tu lui dit simplement : « bon allez, ça ira pour cette fois, à condition que vous rameniez la voiture où vous l'avez prise, puis que vous alliez au plus proche centre de désintoxication. » ?​

réponse de cortilolo : « ah ben si ! c'est même elle que j'ai épousée ! » 😂 🤣

👮‍♂️ 👰‍♀️ 👨‍👩‍👧

soan
 

Discussions similaires

Réponses
7
Affichages
274

Membres actuellement en ligne

Aucun membre en ligne actuellement.

Statistiques des forums

Discussions
312 069
Messages
2 085 040
Membres
102 763
dernier inscrit
NICO26