| | Excel:comment avoir le nombre de victoires &défaite de s | |
| | Auteur | Message |
---|
barbieaux Habitué
Nombre de messages : 58 Age : 53 Localisation : Belgique Réputation : 0 Date d'inscription : 16/02/2006
| Sujet: Excel:comment avoir le nombre de victoires &défaite de s Dim 10 Sep - 11:31 | |
| Bonjour,
Eddy ici, J'aimerais juste savoir comment m'y prendre dans Excel pour ajouter une formule dans 1 cellulue pour ceci :
Je veux rajouter 1 fonction mais je n'y arrive pas , voici le problème : G 1 suite de nombres dans 1 colonne ex: 56 -897 -568 222 -9 -85547 3568 8874 et 568 Comme vous voyez, il y a des nombres positifs et négatifs : ce que je veux ce que dans 1 cellule, excel me calcule le nombre de défaites de suite et dans 1 autre cellule le nombre de victoires de suite (donc 1 victoire est supérieur à -1 et une défaite est inférieure à zéro) voila donc dans ce cas ci par ex ca donnerait en cellule D5 comme réponse pour le nombre de défaites de suite : 2 car il y a le -897 et ce qui suit le -568 et pour les nombre de victoires, on aurait comme réponse dans la cellule E5 3 car il y a en suivant : 3568 et 8874 et 568). Voila, si vous pouvez m'aider ! Eddy. | |
| | | Yora_senior Expert confirmé
Nombre de messages : 1187 Localisation : Saint Réputation : 0 Date d'inscription : 29/06/2005
Votre configuration PC Processeur, RAM: Carte graphique, disque dur: Système d'exploitation, service pack:
| Sujet: Re: Excel:comment avoir le nombre de victoires &défaite de s Dim 10 Sep - 14:20 | |
| Bonjour barbieaux, Content de vous retrouver sur ce forum. En effet pour une bonne compréhension votre sujet est le suite de : https://aide-micro-hourrrah.forumactif.com/viewtopic.forum?t=1556 J'ai pris connaissance de votre nouvelle question et presqu'en même temps de votre message privé. D'après ce que je peux me souvenir (il y a quand même près de 6 mois), je dois avoir conservé le fichier que vous m'aviez adressé, car je suis un maniaque du nettoyage et j'ai supprimé les messages dans ma messagerie, mais en général je conserve les fichiers pour le cas où ?) Et déjà je peux vous dire que pour votre question actuelle, cela ne devrait pas poser beaucoup de problèmes. Je vous demande donc seulement un peu de temps (3 ou 4 jours, mais peut-être moins) car je suis en train de terminer 3 autres demandes de programmes de facturation et de statistiques. Mais n'ayez crainte, je vous réponds dès que possible. Cordialement. | |
| | | barbieaux Habitué
Nombre de messages : 58 Age : 53 Localisation : Belgique Réputation : 0 Date d'inscription : 16/02/2006
| Sujet: A l'attention de Yora_senior Dim 10 Sep - 14:34 | |
| Et bien un grand merci Yora_senior j'attend votre réponse avec impatience ! Et oui c bien cela, c'est bien une question que j'avais posé (pour le lien que vous avez mis ici dans votre message) avec le fameux classement (de 1 à 10) pour les valeurs qui reviennent le plus souvent (150 lignes de macros; encore un grand merci)
Oui je pense que ici ça sera plus aisé pour ma nouvelle question. Encore merci beaucoup Yora_senior.
Eddy. | |
| | | Yora_senior Expert confirmé
Nombre de messages : 1187 Localisation : Saint Réputation : 0 Date d'inscription : 29/06/2005
Votre configuration PC Processeur, RAM: Carte graphique, disque dur: Système d'exploitation, service pack:
| Sujet: Re: Excel:comment avoir le nombre de victoires &défaite de s Lun 11 Sep - 16:23 | |
| Bonjour Eddy,
Dans ma précédente réponse, j'ai dit que je regarderais si j'avais toujours votre fichier. J'avais lu trop voite comme cela m'arrive souvent. Je n'avais pas vu qu'il s'agissait d'un nouveau.
Vous voulez obtenir le plus grand nombre de nombres consécutifs pour les positifs comme les négatifs. Ce serait facile si vous vouliez le nombre total mais ce n'est pas le cas.
Je vois donc 2 solutions : 1) Méthode classique avec les fonctions d'Excel : Dans une colonne vide et sur la première ligne de vos données vous tapez, ou vous faites un copir/coller en sélectionnant les formules ci-dessous (en adaptant les N° de lignes et de colonnes bien évidemment) :
=SI(A1>=0;1;-1)
En 2ème ligne :
=SI(ET(A2>=0;A1>=0);B1+1;SI(ET(A2<0;A1<0);B1-1;SI(A2>=0;1;-1))) Vous copiez cette formule jusqu'à la dernière ligne.
Ensuite dans la cellule D5 (ou autre) : =MAX(B1:B9) Puis en E5 (ou autre) =ABS(MIN(B1:B9))
2) Si vous ne voulez pas adopter cette solution et donc utiliser une colonne résultats intermédiaires, le solution VBA :
Vous sélectionnez tout le texte ci-dessous depuis Option jusqu'à End Sub puis clic droit sur le texte et "Coller". Vous ouvrez votre fichier Excel puis clic droit sur l'onglet de la feuille concernée et vous cliquez sur "Visualiser le code". La fenêtre Visual Basic s'ouvre. En haut à gauche le nom de votre feuille est sélectionné. Il ne reste plus qu'à cliquer dans la fenêtre de droite puis cliquez sur l'outil "Copier". Modifiez les 5 nombres comme indiqué en commentaires puis fermer la fenêtre Visual Basic (la croix tout en haut dans la barre de titre) puis sauvegardez votre fichier.
Vous pouvez lancer à partir d'une touche de raccourci :
Cliquez sur "Outils" puis "Macro" puis "Macros". Sélectionnez la macro si elle ne l'est pas déjà puis cliquez sur "Options". Dans la boite de dialogue vous tapez la lettre que vous voulez utiliser conjointement avec la touche "Contrôle" puis OK. Sauvegardez votre fichier.
Si vous préférez un bouton pour le lancement et que vous ne l'avez jamais fait, dîtes le moi, je vous donnerai la procédure.
Option Explicit
Sub Max_min() Dim col, colaf1, colaf2 As Byte Dim plgn, vrc, vrp, lgnaf, nbmaxc, nbmaxp, nbminc, nbminp As Long Dim mv As String
'Remplacez le 3 ci-dessous le N° de la colonne contenant les données '(il faut mettre un N° et non une lettre : A=1, B=2 etc) col = 3 'Remplacez le 2 ci-dessous le N° de la 1ère ligne contenant les données plgn = 2 'Remplacez le 6 ci-dessous le N° de la ligne dans laquelle vous voulez 'affecter les résultats lgnaf = 6 'Remplacez le 4 ci-dessous le N° de la colonne dans laquelle vous voulez 'affecter le résultat pour les nombres >= 0 colaf1 = 4 'Remplacez le 5 ci-dessous le N° de la colonne dans laquelle vous voulez 'affecter le résultat pour les nombres < 0 colaf2 = 5
nbmaxc = 0 nbminc = 0 nbmaxp = 0 nbminp = 0
vrp = Cells(plgn, col) If vrp >= 0 Then nbmaxc = 1 nbminc = 0 Else nbmaxc = 0 nbminc = 1 End If
Chercher: vrp = Cells(plgn, col)
plgn = plgn + 1 vrc = Cells(plgn, col) mv = CStr(vrc)
'Avec la condition ci-dessous le programme inscrira automatiquement les 'résultats et s'arrêtera. If mv = "" Then GoTo Resultat End If
If vrp >= 0 And vrc >= 0 Then nbmaxc = nbmaxc + 1 If nbmaxp < nbmaxc Then nbmaxp = nbmaxc End If End If
If vrp < 0 And vrc < 0 Then nbminc = nbminc + 1 If nbminp < nbminc Then nbminp = nbminc End If End If
If vrp >= 0 And vrc < 0 Then nbminc = 1 If nbminp < nbminc Then nbminp = nbminc End If End If
If vrp < 0 And vrc >= 0 Then nbmaxc = 1 If nbmaxp < nbmaxc Then nbmaxp = nbmaxc End If End If
GoTo Chercher
Resultat: Cells(lgnaf, colaf1) = nbmaxp Cells(lgnaf, colaf2) = Abs(nbminp)
End Sub
Bonne soirée et tenez-moi au courant. Amicalement. | |
| | | barbieaux Habitué
Nombre de messages : 58 Age : 53 Localisation : Belgique Réputation : 0 Date d'inscription : 16/02/2006
| Sujet: Tout marche ! - problème résolu - un grand merci Lun 11 Sep - 21:34 | |
| Un grand merci Yora_senior, merci au génie d'Excel ! et j'ai compris le processus (et valeur absolue pur éviter le signe dans la cellule à la fin) le min et le max mais c la 2ème ligne qui est assez difficile pour moi la première et la 3e et 4e ca va mais la 2è avec =si(et là ça se corse !
En tout cas encore un grand merci à vous, vous êtes trop fort Yora_senior !
Bonne continuation, à bientôt.
Eddy de la Belgique. | |
| | | Richard1 Modérateur
Nombre de messages : 4278 Age : 75 Localisation : Montréal-Canada Réputation : 15 Date d'inscription : 16/05/2005
Votre configuration PC Processeur, RAM: Carte graphique, disque dur: Système d'exploitation, service pack:
| Sujet: Re: Excel:comment avoir le nombre de victoires &défaite de s Mar 12 Sep - 2:24 | |
| Oui Eddy,
Il est vraiment fort ce Monsieur Yora_senior (dans le DOS, dans EXCEL et dans d'autres choses aussi)
Il y a vraiment plusieurs connaisseurs dans AMH. Les intervenants dans AMH sont des gens amicaux qui forment une incroyable équipe au service des internautes.
Si tu connais des experts ailleurs, n'hésite pas à les inviter ici. Il y a encore de la place.
Bien amicalement
Dernière édition par le Mer 13 Sep - 21:02, édité 1 fois | |
| | | Yora_senior Expert confirmé
Nombre de messages : 1187 Localisation : Saint Réputation : 0 Date d'inscription : 29/06/2005
Votre configuration PC Processeur, RAM: Carte graphique, disque dur: Système d'exploitation, service pack:
| Sujet: Re: Excel:comment avoir le nombre de victoires &défaite de s Mer 13 Sep - 20:46 | |
| Bonjour à tous,
Merci Richard1 pour vos appréciations. Mais je ne sais pas tout, que ce soit sur Excel ou VBA. Comme tous ceux qui répondent ici je fais ce que je peux pour que ce que je connais puisse servir à d'autres.
Cela dit, la question de Barbiaux était à l'origine :
G 1 suite de nombres dans 1 colonne ex: 56 -897 -568 222 -9 -85547 3568 8874 et 568
Pour ce genre de données la formule était :
=SI(A1>=0;1;-1)
En 2ème ligne :
=SI(ET(A2>=0;A1>=0);B1+1;SI(ET(A2<0;A1<0);B1-1;SI(A2>=0;1;-1))) Vous copiez cette formule jusqu'à la dernière ligne.
Ensuite dans la cellule D5 (ou autre) : =MAX(B1:B9) Puis en E5 (ou autre) =ABS(MIN(B1:B9))
Ensuite Eddy m'a précisé qu'il pouvait exister des cellules vides entre chaque données et j'ai cru qu'une cellule vide faisait que l'on repartait à "0".
Finalement ce n'est pas le cas.
J'ai finalement compris :
Les victoires consécutives ne sont interrompues que par une défate (et c'est la même chose pour les défaites) donc des cellules vides entre 2 victoires ou 2 défaites) ne sont pas une interruption dans la continuité des victoires ou des défaites d'oû la formule suvante: En 1ère ligne : =SI(A1>=0;1;-1)
En 2ème ligne :
=SI(ET(A2="";B1>=0);B1;SI(ET(A2="";B1<0);B1;SI(ET(A2>=0;B1>=0);B1+1;SI(ET(A2<0;B1<0);B1-1;SI(ET(A2<0;B1>0);-1;1)))))
Ensuite dans la cellule D5 (ou autre) : =MAX(B1:B9) Puis en E5 (ou autre) =ABS(MIN(B1:B9))
Et cettte fois voici la réponse de Barbieaux :
Un grand merci au génie d'Excel : merci Jacques ! Oui comme tu dis, comprendre ce que veut exactement 1 personne quand il a 1 problème en informatique c déjà 1 gros problème, c'est moi qui me suis mal exprimé, pas assez clairement mais ici c'est en effet ce qu'il me faut! c super gentil, maintenant G vraiment ce que je voulais et tu as compris par mon explication mieux cette fois-ci exprimée ce que je voulais. Merci pour ce temps consacré à mon fichier comme l'autre du bowling Jacques, ( ce n'est pas peine perdue car je compte les utiliser pendant de longues années car bowling et POKER on sait y jouer pendant en principe longtemps! ) il ne me manque plus qu'1 photo de toi quand tu y penses, ça me fera bien plaisir de l'ajouter à mes 2 fichiers par remerciements de tout ton travail.
À bientôt et bonne continuation Jacques.
Oubliez le terme "génie d'Excel" je pense que même les concepteurs d'Excel ne peuvent se prendre pour de génies. D'autant moins que lorsque l'on voit la façon de créer une formule à travers Excel est vraiment nulle. D'autres logiciels il y a 20ans permettaient de faire mieux même si bien sûr d'autres possibilités n'existaient pas.
Mais le principal est de réaliser ce que l'ont voulait à travers ce qui permet de le faire ? | |
| | | Contenu sponsorisé
| Sujet: Re: Excel:comment avoir le nombre de victoires &défaite de s | |
| |
| | | | Excel:comment avoir le nombre de victoires &défaite de s | |
|
Sujets similaires | |
|
| Permission de ce forum: | Vous ne pouvez pas répondre aux sujets dans ce forum
| |
| |
| |