Excel - Recherche d'une formule de succession de nombres.

Résolu
Myckou Messages postés 15 Date d'inscription   Statut Membre Dernière intervention   -  
Myckou Messages postés 15 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Je recherche actuellement une formule permettant de calculer 111 par (3?1), ou 5555 par (4?5), bref, qui me permette de dire combien de fois consécutives je veux ce nombre.
Une telle formule existe-t-elle? Fonctionne-t-elle pour des nombres >9 ?

Merci d'avance.

Edit : Pour les nombres au delà de 9, j'aimerai que =myckou(2;11) soit 121 et non 1111, ou encore que =myckou(4;15) soit 16665 et non 15151515.

A voir également:

3 réponses

yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   Ambassadeur 1 583
 
Je propose de créer cette fonction :
Option Explicit
Function myckou(rep As Integer, nomb As Integer) As Single
    Dim nc As Integer
    Dim facteur As Long
    Dim i As Integer
    myckou = 0
    nc = Int(Log(nomb) / Log(10)) + 1
    facteur = 10 ^ nc
    For i = 1 To rep
        myckou = myckou + facteur ^ (i - 1)
    Next
    myckou = myckou * nomb
End Function

Et tu peux ensuite l'appeller dans une formule
=myckou(4;123)
1
Myckou Messages postés 15 Date d'inscription   Statut Membre Dernière intervention  
 
Je suis bouche-bée, merci énormément !
0
Myckou Messages postés 15 Date d'inscription   Statut Membre Dernière intervention   > Myckou Messages postés 15 Date d'inscription   Statut Membre Dernière intervention  
 
Cependant, (mais tu ne pouvais pas savoir) elle ne correspond pas à mes attentes pour les nombres au delà de 9.
En effet, j'aimerai que =myckou(2;11) soit 121 et non 1111.
Ou encore que =myckou(4;15) soit 16665 et non 15151515.
Bref que cela fonctionne comme cela

15
⇩15
⇩⇩15
⇩⇩⇩15
16665
0
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   1 583
 
Alors c'est beaucoup plus simple :
si tu enregistres deux nombres en A1 et B1, pour calculer A1?B1, tu utilises la formule
=VALUE(REPT("1";A1))*B1

Su tu préfères une fonction, la voici :
Option Explicit
Function myckou(rep As Integer, nomb As Integer) As Single
    'Dim nc As Integer
    Dim facteur As Long
    Dim i As Integer
    myckou = 0
    'nc = Int(Log(nomb) / Log(10)) + 1
    facteur = 10 '^ nc
    For i = 1 To rep
        myckou = myckou + facteur ^ (i - 1)
    Next
    myckou = myckou * nomb
End Function
0
Myckou Messages postés 15 Date d'inscription   Statut Membre Dernière intervention   > yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention  
 
Volontiers, je n'ai pas réussi à appliquer cette formule
0
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   1 583
 
Entre-temps (mais tu ne pouvais pas savoir), j'ai ajouté la nouvelle fonction : https://forums.commentcamarche.net/forum/affich-34110153-excel-recherche-d-une-formule-de-succession-de-nombres#6.
Et je modifie aussi comment utiliser la fonction!
0
JvDo Messages postés 1978 Date d'inscription   Statut Membre Dernière intervention   859
 
Bonsoir à tous,

Tu peux aussi utiliser la formule :
=--REPT("1";3) pour 111
=--REPT("5";4) pour 5555

ça fonctionne aussi avec les séquences de plus d'un chiffre :
=--REPT("123";3) pour 123123123

cordialement
1
eriiic Messages postés 24603 Date d'inscription   Statut Contributeur Dernière intervention   7 269
 
Bonjour,

par formule :
=--REPT(DROITE(A2;1);GAUCHE(A2;CHERCHE("~?";A2)-1)) 

avec saisie sous la forme de 3?1 en A2
eric

En essayant continuellement, on finit par réussir. 
Donc plus ça rate, plus on a de chances que ça marche.(les Shadoks)
En plus du merci (si si, ça se fait !!!), penser à mettre en résolu. Merci
0