|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Invité de passage
![]() Inscription : janvier 2012 Messages : 6 ![]() |
Bonjour à tous, je suis un petit peu embeté.
Je suis en face d'un gros tableau de données (confidentielles, je ne peux donc pas les mettrent sur internet).. Ce qu'il me faut faire c'est 1 premier temps sélectionner les données de la feuille 2 et les copier sur la feuille 1 J'avais pensé à un truc comme ça. Code :
Merci d'avance à celui ou ceux qui pourront m'aider |
||
|
|
00
|
|
|
#2 |
|
Membre Expert
![]() Sebastien LIngénieur Financier Inscription : mars 2010 Messages : 880 ![]() |
Tu ne donnes pas assez d'éléments pour qu'on t'aide. Il faut que tu détailles un peu plus la mise en page de ta feuille. On ne peut pas deviner comment on sait qu'une ligne est un total et quelles sont les colonnes que tu veux garder.
Et pour ce qui est d'un fichier illustratif, en général, on ne met de toute façon qu'une fichier le plus allégé possible et après avoir mis des données bidons à l'intérieur.
__________________
« Compter en octal, c’est comme compter en décimal, si on n’utilise pas ses pouces » - Tom Lehrer « Il est assez difficile de trouver une erreur dans son code quand on la cherche. C’est encore bien plus dur quand on est convaincu que le code est juste. » - Steve McConnell |
|
|
00
|
|
|
#3 | ||
|
Invité de passage
![]() Inscription : janvier 2012 Messages : 6 ![]() |
Voila j'ai pris un peu de temps à midi pour faire un fichier "test" pour expliquer ce que je cherche à faire. J'ai mis les explications en commentaire sur le code VBA.
Code :
http://www.terafiles.net/v-126062.html |
||
|
|
00
|
|
|
#4 |
|
Membre Expert
![]() Marcel GALANODéveloppeur informatique Inscription : juillet 2009 Messages : 644 ![]() |
Bonjour à toi, Bonjour le Forum,
Si je peux me permettre. 12 conditions pour gérer un mois donné ne me semble pas la méthode la plus efficace. Plutôt qu'un Inputbox, je préconiserais une liste déroulante des mois proposés (combobox) et le traitement du mois choisi par activation d'un bouton (commandbutton), par exemple Les 2 contrôles étant intégrés à un formulaire. Ce processus suppose que les noms de tes feuilles soient bien normés afin d'argumenter efficacement une procédure. Je n'arrive pas à télécharger ton fichier (Page introuvable). Pourrais-tu l'attacher à ton post. A plus tard.
__________________
Bien Cordialement. Marcel Pas de messagerie personnelle pour vos questions, s'il vous plaît. La réponse peut servir aux autres membres. Merci.![]()
|
|
|
00
|
|
|
#5 |
|
Invité de passage
![]() Inscription : janvier 2012 Messages : 6 ![]() |
Voila le fichier.
ps: j'ai pris en compte tes remarques, je regarde d'un peu plus près ces ComboBox ce soir. |
|
|
00
|
|
|
#6 |
|
Membre Expert
![]() Marcel GALANODéveloppeur informatique Inscription : juillet 2009 Messages : 644 ![]() |
Bonjour à toi, Bonjour au Forum,
Je n'y arrive toujours pas. Pourrais-tu - enregistrer ton fichier au format Excel 2003 (.xls) - l'attacher tel quel à ton post Merci.
__________________
Bien Cordialement. Marcel Pas de messagerie personnelle pour vos questions, s'il vous plaît. La réponse peut servir aux autres membres. Merci.![]()
|
|
|
00
|
|
|
#7 |
|
Membre Expert
![]() Sebastien LIngénieur Financier Inscription : mars 2010 Messages : 880 ![]() |
Les colonnes que tu veux garder sont toujours les mêmes ?
Pour les totaux, ils seront toujours sur la même ligne ? Et sinon, il s'appelleraient toujours "TOTAL SCB" et "TOTAL AA" dans la colonne C ?
__________________
« Compter en octal, c’est comme compter en décimal, si on n’utilise pas ses pouces » - Tom Lehrer « Il est assez difficile de trouver une erreur dans son code quand on la cherche. C’est encore bien plus dur quand on est convaincu que le code est juste. » - Steve McConnell |
|
|
00
|
|
|
#8 |
|
Invité de passage
![]() Inscription : janvier 2012 Messages : 6 ![]() |
Alors normalement les colonnes seront toujours les mêmes. Et les lignes elles changent tout le temps..
Normalement non il n'y a pas "Total" devant les lignes, mais je peut mettre total ou 1 ou autre chose pour marquer la présence de la ligne et reperer la ligne avec un For each Elements in ... Next Elements Cependant comme cette ligne utilise la formule somme ca va pas créer de pb si on supprime celle qui servent au calcul? ADD piece jointe en format xls |
|
|
00
|
|
|
#9 |
|
Membre Expert
![]() Marcel GALANODéveloppeur informatique Inscription : juillet 2009 Messages : 644 ![]() |
Bonsoir,
Voir ma demande plus haut.
__________________
Bien Cordialement. Marcel Pas de messagerie personnelle pour vos questions, s'il vous plaît. La réponse peut servir aux autres membres. Merci.![]()
|
|
|
00
|
|
|
#10 | ||
|
Membre Expert
![]() Sebastien LIngénieur Financier Inscription : mars 2010 Messages : 880 ![]() |
Voici le code qui fait ce que tu désires. A toi de l'adapter pour coller exactement à ton besoin. J'ai aussi fait en sorte que le bouton de la feuille 1 ne se déplace pas avec les cellules, sinon, on peut avoir un comportement bizarre quand on efface (à définir dans les propriétés du bouton)
Code :
__________________
« Compter en octal, c’est comme compter en décimal, si on n’utilise pas ses pouces » - Tom Lehrer « Il est assez difficile de trouver une erreur dans son code quand on la cherche. C’est encore bien plus dur quand on est convaincu que le code est juste. » - Steve McConnell |
||
|
|
00
|
|
|
#11 |
|
Invité de passage
![]() Inscription : janvier 2012 Messages : 6 ![]() |
Je te dis un très grand merci!
|
|
|
00
|
|
|
#12 |
|
Invité de passage
![]() Inscription : janvier 2012 Messages : 6 ![]() |
Bon c'est bon j'ai réussi à l'adapter sur mon document. Par contre il y a des chose que je ne comprend pas très bien :
Set, si j'ai bien compris sert à définir la plage de données qui est associée à une variable? C'est quoi la différence entre : -Pastevalue (donc copie des valeurs) et -PasteFormat (qui sert à?? Copier la mise en forme?) Et cette boucle For... To : For i = ws.UsedRange.Columns.Count + ws.UsedRange.Column - 1 To 1 Step -1 UsedRange sert à quoi en fait? -1 ? Et le Step -1 je comprend pas son utilisation. En fait je la comprend pas du tout celle là ^^ Merci encore pour ton aide. |
|
|
00
|
|
|
#13 |
|
Membre Expert
![]() Sebastien LIngénieur Financier Inscription : mars 2010 Messages : 880 ![]() |
Set sert à affecter quelque chose à un objet. Il ne faut pas mettre de Set quand il s'agit d'un type "simple" (String, Integer, Double, ...), mais dès qu'il s'agit d'un objet (Worksheet, Workbook, Range, Collection, Classe quelconque...), c'est nécessaire.
PasteValue est l'équivalent d'un copier en valeurs, et PasteFormat d'un copier le format. Je fais ça pour ne pas garder les éventuelles formules. UsedRange représente la plage utilisée de la feuille. La boucle va de la dernière colonne utile (première colonne + nombre de colonne de zone utile) à la première colonne de la feuille, et le Step -1 indique que l'on va à l'envers. On aurait pu mettre Step -2 pour aller à l'envers de 2 en 2 par exemple. Revoit la définition du For ... Next dans l'aide, tu comprendras mieux.
__________________
« Compter en octal, c’est comme compter en décimal, si on n’utilise pas ses pouces » - Tom Lehrer « Il est assez difficile de trouver une erreur dans son code quand on la cherche. C’est encore bien plus dur quand on est convaincu que le code est juste. » - Steve McConnell |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com