givemecookies
Messages postés32Date d'inscriptionmardi 27 octobre 2009StatutMembreDernière intervention 4 août 2011
-
4 juil. 2011 à 19:42
givemecookies
Messages postés32Date d'inscriptionmardi 27 octobre 2009StatutMembreDernière intervention 4 août 2011
-
6 juil. 2011 à 06:28
bonjour à toutes et à tous!
J'aimerais vos lumières pour un petit fichier que j'ai amélioré aujourd'hui mais j'ai quelques petit souci, pas de problèmes majeurs (je l'espère en tout cas).
Sur le fichier joint - CDE CAMION 2011 J'ai en fait 3 principales macros.
[*] Le premier bouton sur l'onglet "Extraction" va en fait prendre les données des onglets "agent" qui sont les onglet avec 2 lettres, et les regrouper sur la page "Macro" évidemment comme vous avez pu le constater dès qu'il y a un espace, il passe à l'onglet suivant. Sachant que l'espace me sers en fait de séparateur entre chaque jour, je n'ai pas encore réussi à faire une liste complète. un peu d'aide m'enlèvera une épine du pied :)
[*] Sur le deuxième bouton qui est un des plus important , il me permet d'affecter un numéro ( qui correspond en fait au numéro maximum du classeur + 1 ) si l'agent a mis un 'x' sous "numéro de camion". Cependant il est INCROYABLEMENT long puisque le fichier sera par la suite partagé!
Je me demandais si une âme généreuse aurait une idée pour réduire le temps de chargement. sans partage il prends 1-2 secondes et en partage il mets bien 30 à 90 voire 180 secondes.. je pense que le partage y est pour beaucoup mais j'espérais un peu plus rapide étant donné que mon code est assez simplissime et que je pense pouvoir faire mieux aux niveau de la passation de paramètres... (j'avais pensé à mettre une liste des onglets à prendre, mais je me suis pas encore vraiment penché à fond dessus)
[*] Enfin, le 3e bouton me permet en fait de garder un 'historique' de mes commandes. J'aimerais donc qu'en appuyant sur 'supprimer' les lignes en gris clair (couleur excel 2003) s'effacent (dans les tableaux des agents) et viennent se mettre dans la feuille "Synthèse", sans effacer les 'commandes' précédentes. Je suis en ce moment même en train de me brûler des neurones là dessus. Étant donnée que la macro enregistrée pour la recherche d'une case suivant son format de couleur n'est pas vraiment fonctionnelle lorsque l'on essaye de la ré-appliquée en vba... un peu d'aide serait la bienvenue également.
Je vous laisse donc jeter un œil à mon 'oeuvre'. Je suis désolée si un sujet similaire a été déjà posé, merci en tout cas de m'envoyer le lien.
Merci d'avance,
Jennifer
A voir également:
Excel 2003 - Macro - Liste automatique - recherche suivant format couleur -
ucfoutu
Messages postés18038Date d'inscriptionlundi 7 décembre 2009StatutModérateurDernière intervention11 avril 2018211 5 juil. 2011 à 22:09
Ah pardon (pas vu que tu avais déjà corrigé).
Qu'est-ce qui "ne marche ^pas", maintenant ?Une erreur de compilation (laquelle) ?
Pas le résultat attendu ? (ça, c'est une autre affaire . Je me suis arrêté aux fautes de syntaxe et pas plus)
____________________
Utiliser le bouton "REPONSE ACCEPTEE" sur une réponse exacte facilite les recherches ultérieures d'autres forumeurs. PENSEZ-Y SVP
bigfish_le vrai
Messages postés1835Date d'inscriptionvendredi 13 mai 2005StatutMembreDernière intervention20 novembre 201315 5 juil. 2011 à 22:49
Salut,
tu es doué Jennifer, tu as pas mal avancé
Un petit conseil pour la partie de macro qui contient une boucle Do/Loop: dans ce type de boucle il est toujours préférable d'ajouter un Doevents qui permet sortir de la boucle par un appuis sur la touche échap. Même si ce n'est pas justifié ici le jour ou on reste coincé dans la boucle on est alors content de l'avoir ajouté !
Pour le code que je t'ai donné la méthode, utilise le filtre automatique d'excel pour ne travail que sur les lignes non vide.
Maplage.AutoFilter Field:=1, Criteria1:="<>"
Comme ce filtre automatique est activé j'ai ensuite utilisé une méthode qui permet de ne copier que les lignes visible, cette méthode est :
ucfoutu
Messages postés18038Date d'inscriptionlundi 7 décembre 2009StatutModérateurDernière intervention11 avril 2018211 5 juil. 2011 à 23:42
Sans préjudice de ton affaire des couleurs ====>> partie à transformer
.....
der Worksheets("Synthèse").Range("A" & Rows.Count).End(xlUp).Row '>> une fois pour toutes
For Each Cell In Maplage
If cell.Interior.ColorIndex = 3 Then
If Not cell.EntireRow.Hidden = True Then
der = der + 1
cell.EntireRow.Cut Destination:=Worksheets("Synthèse").Range("A" & der)
DoEvents
End If
End If
Next
End With
...
reste à espérer que la cvouleu est bien la 3 et pas autre !
____________________
Utiliser le bouton "REPONSE ACCEPTEE" sur une réponse exacte facilite les recherches ultérieures d'autres forumeurs. PENSEZ-Y SVP
ucfoutu
Messages postés18038Date d'inscriptionlundi 7 décembre 2009StatutModérateurDernière intervention11 avril 2018211 6 juil. 2011 à 00:04
BVon
Je viens de faire un petit test en supprimant la condition de couleur ===>> mon code est bon.
Si ne marche pas maintenant chez toi avec la condition de couleur, c'est que la couleur 3 n'est pas celle que tu recherches (et le problème est alors déplacé)
____________________
Utiliser le bouton "REPONSE ACCEPTEE" sur une réponse exacte facilite les recherches ultérieures d'autres forumeurs. PENSEZ-Y SVP