Passionné d'Excel

Inscrit le :18/09/2008
Dernière activité :24/03/2026 à 13:55
Version d'Excel :2016
Lieu :bourg en bresse
Messages
9'456
Votes
1'262
Fichiers
4
Téléchargements
29'533
Fichiers ExcelSujetsMessagesStatistiquesVotes reçus

Messages postés par galopin01 - page 189

DateAuteur du sujetSujetExtrait du message
02/11/2008 à 15:39cfn3cfn SuppressionVoici une méthode un peu artisanale Créer dans ton classeur une nouvelle feuille que tu baptiseras "temp" dans un module standart (Module1) coller ces 2 macros Après avoir exécuté la macro "ListerNoms" tu trouveras dans la feuille "temp" la liste de tous les noms de ton classeur. Supprimer dans cett...
02/11/2008 à 15:06dubois VBA Vider le ThisWorkbook? Tu voudrais faire ça en VBA ? Selon mon expérience cette hypothèse n'a guère de sens. Il est impossible de prévoir tous les cas de figure qui peuvent entrainer l'utilisation du fichier de sauvegarde ou du fichier d'archive à la place du fichier d'origine. La suppression d'un fichier peut se faire...
02/11/2008 à 12:37dubois VBA Vider le ThisWorkbookInutile de faire compliqué quand on peut faire simple... Les fichiers de sauvegarde ne doivent pas être enregistrés sous le même nom que le fichier de travail . Même dans un répertoire différent ! (sinon il y aura le problème de OnTime évoqué précédement à chaque ouverture. En conséquence et comme i...
02/11/2008 à 01:43dubois VBA Vider le ThisWorkbookSi je peux me permettre... J'ai lu un petit peu le topic en question. Pour avoir déjà utilisé ce genre de routine, je résoud habituellement ce genre de problème de la manière suivante : Soit un fichier qui s'appelle "MAIN COURANTE.xls" (par exemple...) : 1- Je ne fais jamais de CopyAs 2- On peut fai...
01/11/2008 à 19:35idealoncle Bingo sur ExcelRe... il existe presque autant de façon de programmer une série aléatoire que de programmeurs... Dire qu'une série de 10 000 demande plusieurs minutes est surtout lié au type de macro utilisée : Cette macro les affiche en une seconde environ ! A+...
01/11/2008 à 19:01idealoncle Bingo sur ExcelToutes mes macros sont librement modifiables ! S'il s'agit de générer en un seul clic toute une liste de nombre, cette autre est plus appropriée. Ce genre de macro est déjà un peu complexe et réservée à ceux qui ont déjà une bonne expérience en programmation VBA. Toutefois YAKA la recopier dans n'im...
01/11/2008 à 17:43idealoncle Bingo sur ExcelNota : Ces démos très minimalistes (pour ne pas dire simplistes...) ne fonctionnent pas dans IE. Il faut d'abord les télécharger puis les exécuter dans Excel pour un fonctionnement correct... Pour la route, la même en couleur (avec une fourchette de 1 à 25) A+...
01/11/2008 à 16:51idealoncle Bingo sur ExcelEuh... Il n'est pas aisé de répondre à ta question ! La mécanique de génération de nombres aléatoires est bien connue et il est facile de générer une série de nombre de 1 à n. On peut se contenter de formules au prix de quelques manipulations quand il s'agit de faire un tirage préparatoire à un trav...
01/11/2008 à 06:45EricFObliger un textbox à ne prendre que des nombresSur le fond, tu peux te contenter de ça : Le TextBox ne reçoit alors QUE des données numériques. On Error Resume Next ignore une erreur éventuelle. On Error Resume Next est indispensable au cas ou l'utilisateur commencerait sa saisie par une lettre... On peut améliorer cette macro de base en inséran...
30/10/2008 à 17:31dubois VBA déclencher une macro à un moment précisRe... Bien remarquer le : à placer dans module1 EN DEHORS de toute macro et AVANT la première macro. (juste après " Option Explicit " le cas échéant...) Cette déclaration doit être comprise comme une variable commune aux deux macros. Nota : par suite, s'il y a d'autres macros dans ce module cette va...
30/10/2008 à 16:34dubois VBA déclencher une macro à un moment précisPerdu ! Récursif : Dans Workbook_Open : Dans Module1 : Pour les besoins de la démo la tempo est réglé sur 15 secondes. Il faudra règler sur "01:00:00", Attention : Quand une procédure OnTime est programmée, elle tente de s'exécuter même si le classeur est fermé. Ce qui peut entrainer quelques planta...
30/10/2008 à 07:08scooby74Formule variable d'heureBah, ce fichier n'est pas de moi... J'y ai juste inséré quelques formules... On peut résumer ça comme tu dis. La difficulté est de soustraire 5:00 - 21:00 (par exemple) dans des formules SI(...) et de gagner à tous les coups ! Sans parler de la pause... Des formules existent. Personnellement j'ai un...
30/10/2008 à 06:00scooby74Formule variable d'heureSissi, c'est faisaible... Mais c'est pas hyper simple : C'est pas de la formule de branlo ! J'avais bricolé une soluce de ce genre pour des horaires de nuit au québec. (avec quelques nuances subtiles...) Pour te donner une idée du travail, regarde (dans la première feuille uniquement) Les heures de...
29/10/2008 à 21:09dubois VBA Faire une copie de sauvegardeToutes les variables sont destinées à contenir des chaines de caractère (donc de type string) On peut donc utiliser "As String" dans les quatres cas. Personnellement j'utiliserais plutôt : Cette manière de faire est absolument équivalente et (à mon avis) bien plus ergonomique Toute variable déclarée...
29/10/2008 à 15:50dubois VBA Faire une copie de sauvegardeCa devrait donner : A+...
29/10/2008 à 07:01cfn3cfn Tabulation autoAvec VBA et les macros évènementielle, on rentre dans un domaine beaucoup plus complexe. Cette est très (très !) perfectible... A+...
28/10/2008 à 21:28cfn3cfn Masquer formuleLe beurre, l'argent du beurre... et la crémière ! hein ? Ce qu tu demandes n'est pas possible : La barre de formule étant précisément destinée à "voir la formule" pour la modifier, il n'y a pas d'autre solution que de ne pas afficher cette barre pour ne plus être embêté. Pour ne plus voir la barre d...
22/10/2008 à 00:34dubois VBA déclencher une macro à un moment précisRegarde l'aide de OnTime c'est très bien expliqué. Yaka mettre quelques instructions dans le Workbook_Open pour exécuter telle ou telle macro toutes les heures ou tous les jours à telle heure... ça devrait te faire quelques chose comme ça : (Dans le ThisWorkbook: Private Sub Workbook_Open() If Weekd...
21/10/2008 à 23:44dubois VBA déclencher une macro à un moment précisNooooooooon... je ne vois pas bien ! Que ce fichier soit un fichier Excel ou non celà suppose que le fichier est ouvert tous les jours (ou tous les vendredis) pour que la macro puisse s'exécuter : Si le fichier n'est pas ouvert le vendredi à 7h59 aucune macro ne peut s'exécuter à 8h00 ! Maintenant,...
21/10/2008 à 23:14dubois VBA déclencher une macro à un moment précisVoir dans le panneau de configuration de windows : Taches planifiées A+...
04/10/2008 à 10:27dubois VBA Private Sub (non reconduit sur feuille copiée)Voici le code générique : A placer tout de suite après la copie de la feuille (Le classeur cible étant supposé actif) On peut aussi par sécurité utiliser With Workbooks("blabla")... Worksheets("blablabla")... (Détruit tout le code... Private Sub ou pas...) A+...
04/10/2008 à 07:39lelanceurAfficher automatiquement les macro au démarage d'ExcelCa dépend si ce sont tes macros ou toutes les macros en général, si c'est ton ordinateur ou l'ordinateur des autres (sur une réseau par exemple). Préciser la question SVP. Changer la sécurité des macro ne marche pas.... Si...Si... Sur ton ordinateur avec le niveau faible tu n'auras pas de question....
28/09/2008 à 15:09samplaiProblème de moyenne et pourcentageIl ne faut pas confondre nombre et argument. Tu peux très bien avoir 250 nombres dans une plage A1:A250 et un seul argument : = MOYENNE(A1:A250) A+...
26/09/2008 à 21:39petula972 Compter les cellules non videsUne autre solution en formule pour AH3 et salariés en gras =SOMMEPROD(((C3:AG3)=AH$2)*(JOURSEM(C$2:AG$2;2)<6)) pour AH21 et salariés en maigre =SOMMEPROD(((C21:AG21)=AH$2)*(JOURSEM(C$2:AG$2;2)<7)) Attention ! Formules matricielles à valider par Ctrl+Maj+Entr A+...
26/09/2008 à 18:22iso_04 Base de données : BDMINUne 'tite A+...
25/09/2008 à 11:23toniloQuestion au niveau d'une sélection de colonneHeu... Tu ne peux pas analyser un bribe de formule déséquilibrée (*) : Tu peux analyser : DECALER(A6;(NB(A6:A37)-1)*2;)=A6 première partie du SI (condition) ou cette autre : DECALER(A6;(NB(A6:A37)-1)*2;) (renvoie la dernière cellule de ta plage) ou cette autre : (NB(A6:A37)-1)*2 renvoie le décalage...
25/09/2008 à 01:40VinceL Pb dans une condition d'un SOMMEPRODJ'ai un peu de mal à évaluer la pugnacité du résultat par rapport à ce que tu en attend... peut-être une solution avec cette formule : =SOMMEPROD((($A$5:$A$36)>0)*(($C$5:$C$36)>0)*(($B$5:$B$36)>0)*($A$5:$A$36>=F16)*($A$5:$A$36<=F17)*NON(ESTERR((DATEDIF($B$5:$B$36;$C$5:$C$36;"d"))))) o...
24/09/2008 à 20:12toniloQuestion au niveau d'une sélection de colonneUne solution : =SI(DECALER(A6;(NB(A6:A37)-1)*2;)=A6;"Formule1";"Formule2") A+...
23/09/2008 à 14:05dieudo51 Enlever une partie du texte d'une celluleRe... et en VBA pour changer directement le texte dans la selection : A+...
23/09/2008 à 13:41dieudo51 Enlever une partie du texte d'une celluleSi le texte à purger se trouve en colonne A la formule pour A1 =STXT(A1;TROUVE("objet";A1);NBCAR(A1)) Formule à tirer vers le bas. [Edit] Punaise ! 'suis pas le champion du copier/coller ! A+...
23/09/2008 à 13:09duodag Faire clignoter le texte d'une cellule et non la celluleNous sommes bien d'accord : ce n'est que mon point de vue ! Mais le fait d'être vulgarisé par certain n'est en aucun cas un brevet d'utilité publique ! C'est aussi l'utilité d'un forum de prodiguer des avis ou conseils. Une bonne raison de ne pas l'utiliser : Selon mon expérience c'est à peu près au...
23/09/2008 à 08:47duodag Faire clignoter le texte d'une cellule et non la celluleCellule ou texte, ce genre de macros sont des "exercices d'école" à éviter soigneusement dans Excel qui n'est ni un logiciel de traitement de texte ni un logiciel graphique. A+...
23/09/2008 à 00:16Yvouille Code VBA, Sélection d'1 feuille selon la valeur d'1 celluleIl ne peux y avoir de Worksheet_Calculate_ Bis utilise : Bon je dis pas que c'est un code brillant... mais ça peux marcher ! A+...
22/09/2008 à 23:55DaikiniRéorganisation automatique de résultats générésLa modification a consisté à transformer les variables de ligne iO et iD en variable de type long Dim iO% est l'équivalent de Dim iO as Integer Dim iO& est l'équivalent de Dim iO as Long ... ce qui permettra à la macro de franchir allègrement le cap des 30 000 sans pb. Le code est suffisamment optim...
22/09/2008 à 16:40DaikiniRéorganisation automatique de résultats générés5000 x 10 = 50 000 ? ça va faire un peu juste : rempacer : Dim i%, j%, k%, iO & , iD & , WsO As Worksheet, WsD As Worksheet Problème ? Prévoir assez de café et des cigarettes le temps du traitement ! A+...
22/09/2008 à 11:35DaikiniRéorganisation automatique de résultats générésUne possibilité [Edit] : L'affichage écran passe mal si tu essaies de tester la macro sans télécharger le fichier. YAKA faire une aller retour d'ascenseur pour vérifier que ça fonctionne bien. En revanche une fois téléchargé, l'affichage fonctionne au quart de tour. A+...
22/09/2008 à 08:21duodagCopier le contenu d'une cellule d'une feuille sur une autreEvidemment : Le copier / coller recopie les formules en l'état et comme tu ne fais pas une "copie conforme", ça ne gaze pas. Il faut faire du collage => spécial valeur. Sais-tu qu'il existe dans Excel un outil appelé enregistreur de macro qui te permet de trouver par toi-même ce genre de solution...
21/09/2008 à 19:51dan67Zone de liste pour sélectionner une plage de cellulesL'avantage de cette méthode est qu'elle évite toute gestion d'erreur et de chevauchement de plage : Ou les cellules sont libres et déprotégées donc sélectionnables ; ou elles sont occupées et dans ce cas, pas moyen de double affectation. Sinon tu serais obligé de gérer la pertinence de la plage hora...
21/09/2008 à 19:14morpheus51 Saisie dans le désordre mais affichage dans l'ordreOrdre... contrordre... des ordres : C'est la faute à ton titre qui laisse à penser qu'il faut remettre de l'ordre dans ton désordre ! Thibo : A+...
21/09/2008 à 15:34morpheus51 Saisie dans le désordre mais affichage dans l'ordreUne solution avec PETITEVALEUR Attention formule matricielle (à valider par Ctrl+Maj+Entr ) la A+...
21/09/2008 à 15:13dan67Zone de liste pour sélectionner une plage de cellulesA mon avis Non ! (pour les zones de liste pour sélectionner les plages) En tout cas je crois pouvoir affirmer que personne ne "s'amuserait" à essayer de finaliser une appli sur cette base là ! A titre indicatif je t'ai bricolé une ch'tite démo sur la base d'une sélection préalable. Mais bien sur ça...
21/09/2008 à 08:37ptialexCopie de ligneSi j'ai bien compris... laformle pour C2 : =RECHERCHEV(B2;Feuil1!B2:R215;2;) pour C3 : =RECHERCHEV(B2;Feuil1!B2:R215;3;) et ainsi de suite ! A+...
21/09/2008 à 01:26dan67Zone de liste pour sélectionner une plage de cellulesCa parait quand même une drôle d'idée. D'ordinaire pour sélectionner des cellules on se contente de la souris. Pourquoi diable chercher un truc aussi compliqué ? Je peux à la rigueur comprendre que, après la sélection, tu veuilles utiliser un USF pour mettre des informations complémentaires dans la...
21/09/2008 à 01:12InvitéMacro pour fusion de cellulesRe... je t'ai refais la même revue et corrigée à la lumière de ce dernier fichier bien plus explicite. ça devrait faire le joint, non ? A+...
20/09/2008 à 23:58InvitéMacro pour fusion de cellulesJe n'ai pas réussi à fire fonctionner la macro à sylvain ? pas trop cherché non plus, car je venais de finaliser sur une autre base : je n'ai pas cherché non plus le rapport avec l'autre ficelle. A+...
20/09/2008 à 08:15anasleco Supprimer des lignes automatiquement?Pourquoi Exit Sub avant la gestion d'erreur ? Par habitude... Pourquoi une gestion d'erreur ? Parce qu'il y a une erreur dans la colonne I et que ça faisait planter la macro ! Pourquoi j'ai pas mis de MsgBox dans la gestion d'erreur ? Parce que ce très long fichier m'a mis de (très) mauvaise humeur...
19/09/2008 à 22:45anasleco Supprimer des lignes automatiquement?Voici une macro qui fait a peu près ce que tu demandes. Sauf qu'elle s'arrête quand elle détecte une valeur d'erreur. Il faudra donc faire soigneusement attention à éliminer toute valeur d'erreur de ton fichier. (colonne i ) Je n'ai pas testé non plus si elle est compatible avec le filtre. (car il a...
19/09/2008 à 21:43DAMIFormule ExcelCela semble bien difficile... En fait je pense que la solution (s'il y en a) dépend étroitement des valeurs des cellules A4:A10 et B4:B10 Si les valeurs sont variables et si comme dans ton exemple il ya des doublons (d en B5 et B9) alors il sera bien difficile de trouver une solution sans recourir à...
19/09/2008 à 18:50sylas33 Problème formule macrosRe... Ton exemple est encore plus imbuvable que le reste. Je pensais à quelque chose comme : dercol = Range("AH142").End(xlToLeft).Column AdTrans = Range("AH142").End(xlToLeft).Offset(1, 1).Address ActiveCell.Formula = "=M23* 1000 / " & AdTrans mébon... comme ton exemple n'offre aucune cohérence ave...
19/09/2008 à 13:16sylas33 Problème formule macrosBen... Si on doit se contenter de tes indications c'est un peu juste. Un bout de fichier qui permette de comprendre le fonctionnement (et surtout la structure) de ton truc me parait indispensable. J'avoue que je peine un peu à comprendre la logique de la construction : dercol = Range("AH142").End(xl...