|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Nouveau Membre du Club
![]() Alias Toty Chargé d'affaire Inscription : octobre 2011 Messages : 10 ![]() |
Bonjour le forum
Je suis toute nouvelle (inscrite ce matin, il y a longtemps que j’y pense). Je connais un peu VBA (un peu) Dans le cadre de tableau de synthèse je récupère via Query des valeurs de notre ERP. Ces valeurs ne sont pas sommées (Temps infernal). Je fais donc une petite moulinette pour le faire Que voici Code :
Par avance merci Toty |
||
|
|
00
|
|
|
#2 | |
|
Expert Confirmé Sénior
![]() Daniel aucune Inscription : septembre 2011 Messages : 2 004 ![]() |
Bonjour,
Plutôt que de poster ton code, décris plutôt la disposition de tes données et le résultat que tu désires.
__________________
Cordialement. Daniel Citation:
|
|
|
00
|
|
|
#3 |
|
Nouveau Membre du Club
![]() Alias Toty Chargé d'affaire Inscription : octobre 2011 Messages : 10 ![]() |
Bonjour Daniel
Désolée, en fait je reçois un tableau qui occupe les colonnes A à F La première n’a pas vraiment d’importance Sur les 3 suivantes Les cellules peuvent être identiques sur différente lignes Sur le 2 dernières j’ai des valeurs numériques Le but est de sommer c’est deux dernières colonnes avec comme regroupement Les valeurs des 3 colonnes qui peuvent contenir les valeurs identiques En fait en SQL cela donnerait « Select Rang, Type, Référence, client, secteur, sum(NhH), Sum(Cout) From LaBase Group BY Rang, Type, Référence, client, secteur » Voila, j’espère avoir répondu à ta question Merci Toty |
|
|
00
|
|
|
#4 | ||||
|
Membre Expert
![]() J-Pierre CatherineConception Calcul Inscription : juillet 2007 Messages : 659 ![]() |
Re Bonjour Toty
Pourquoi ne pas l’inclure dans la requête d’origine Pourquoi le collage spécial ? Dans un premier temps Tu peux aussi remplacer Code :
Code :
Bon Courage
__________________
Jean-Pierre Pensez à Voter pour les réponses qui vous ont aidés, d'avance merci ![]() ---------Et n'oubliez pas de mettre : ..quand c'est le cas !---------
|
||||
|
|
10
|
|
|
#5 |
|
Nouveau Membre du Club
![]() Alias Toty Chargé d'affaire Inscription : octobre 2011 Messages : 10 ![]() |
Bonjour Jean Pierre
L’informaticien me dit que faire le regroupement lors de la requête mettrait un temps infernal compte tenu des bases, je n’ai pas accès à ces bases. Alors j’ai fait cette moulinette et je voulais savoir s’il n’y avait pas plus simple Il est vrai que le collage spécial n’est pas nécessairement utile Et merci pour ta ligne de code Toty |
|
|
00
|
|
|
#6 | ||
|
Expert Confirmé Sénior
![]() Inscription : juillet 2008 Messages : 5 848 ![]() |
Bonjour
Si j'ai bien compris, ci-joint une proposition en utilisant une variable tableau (à tester) Code :
Une autre proposition, est de concaténer en G les colonnes B, C et D et d'utiliser le Sous total offert par Excel. Bon, ce sont là des propositions.
__________________
Cordialement. |
||
|
|
10
|
|
|
#7 | ||||
|
Nouveau Membre du Club
![]() Alias Toty Chargé d'affaire Inscription : octobre 2011 Messages : 10 ![]() |
Bonjour mercatog
Je vous remercie d’abord de votre réponse, Au début j’ai eu peur ![]() Mais avec F1 pour le IIf et un peu de réflexion J’ai compris, je pense, le résonnement et le code J’ai mis mes remarques dans votre code Pouvez-vous me dire si j’ai tout saisie Je me suis permise de modifier le code afin de ne faire ressortir que les lignes sommées en supprimant et en y rajoutant Code :
Code :
Code :
LastLig = .Cells(.Rows.Count, "A").End(xlUp).Row Code :
LastLig = .Range("A1:A" & .Rows.Count).End(xlUp).Row Toty |
||||
|
|
20
|
|
|
#8 |
|
Expert Confirmé Sénior
![]() Inscription : juillet 2008 Messages : 5 848 ![]() |
Bonjour
Tu as tout saisi très bien et même tu as perfectionnée la suppression des lignes. Bravo (au lieu de filtrer et supprimer, tu vide Tb est tu déplace les lignes vides en bas grâce au tri)Pour trouver la ligne de la dernière cellule remplie, je te propos ce lien Pour la ligne 34 de tri, personnellement je préfère faire comme ceci Code :
.Range("A1:F" & LastLig).Sort Key1:=.Range("A2"), Order1:=xlAscending, Header:=xlYes
__________________
Cordialement. |
|
|
10
|
|
|
#9 |
|
Nouveau Membre du Club
![]() Alias Toty Chargé d'affaire Inscription : octobre 2011 Messages : 10 ![]() |
Bonjour mercatog
Encore merci de vos remarques et du lien Toty |
|
|
00
|
|
|
#10 | |
![]() ![]() Didier GONARDFormateur Développeur Office - indépendant Inscription : février 2008 Messages : 2 353 ![]() |
Citation:
ça me semble être furieusement la cible et en 3 clics, c'est fait et ça se modifie aussi vite. Si besoin, on peut le faire ( le TCD) en VBA mais bon... à préciser ta version d'Excel, c'est très différent de 2003 à 2010, mais de base ce type d'application est OK. C'est très adapté à des sources SQL en plus. Sous 2010 les possibilités sont 100uplées cordialement, Didier
__________________
Didier Gonard Ps : Pour noter positivement ou négativement un post, vous pouvez cliquer sur les pouces en bas à droite ! Tutoriels : Voir la liste de mes tutoriels et mon site pro sur ma Page DVP N'oubliez pas de mettre : ..quand c'est le cas !
|
|
|
|
00
|
|
|
#11 |
|
Nouveau Membre du Club
![]() Alias Toty Chargé d'affaire Inscription : octobre 2011 Messages : 10 ![]() |
Bonjour Ormonth
Je sais que le tableau croisé dynamique est tout à fait adapté pour cela, mes collèges l’utilise, mais moi je préférais le faire comme ça. (version Excel 2003) Et puis je n’aurais eu le plaisir de réfléchir sur le code de mecatog Je dois vous quitter (les chantiers n’attendent pas) Au plaisir et bonne journée Toty |
|
|
10
|
|
|
#12 | |
![]() ![]() Didier GONARDFormateur Développeur Office - indépendant Inscription : février 2008 Messages : 2 353 ![]() |
Bonjour,
c'était juste pour être rationnel ... Citation:
Didier
__________________
Didier Gonard Ps : Pour noter positivement ou négativement un post, vous pouvez cliquer sur les pouces en bas à droite ! Tutoriels : Voir la liste de mes tutoriels et mon site pro sur ma Page DVP N'oubliez pas de mettre : ..quand c'est le cas !
|
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com