XL 2016 aide pour réaliser une ptite macro

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

chingilou

XLDnaute Junior
voila bonjour je suis super novice en vba
pour faire simple
je voudrais faire un bouton qui me permet de remplir une rangé de de tableau sous certain formule et en même temps une autre rangé sous une autre formule
de D10:197 les chiffres entiers de mon tableau
je voudrais grâce au bouton demandé remplir E10:E197 par cet formule que je n'ai pas su la mettre sous vba [=SI(D10<>"";D10+D10*ENT((ALEA.ENTRE.BORNES(5;10)))%;"")]
et remplir F10:F197 [=SI(D10<>"";D10+D10*ENT((ALEA.ENTRE.BORNES(5;12)))%;""))

comme ca la rangé E et F de mon tableau ne change pas à chaque ouverture du fichier jusqu’au prochain appuie du bouton
merci de votre patiente
 
Bonjour le fil

Si j'ai bien compris la donne
Code:
Sub Macro1()
[E10:E197].Formula = "=IF(D10<>"""",D10+D10*INT((RANDBETWEEN(5,10)))%,"""")"
[F10:F197].Formula = "=IF(D10<>"""",D10+D10*INT((RANDBETWEEN(5,12)))%,"""")"
[E10:F197] = [E10:F197].Value
End Sub
 
plutot ca mais ca me met erreur

Dim Counter As Integer
For Counter = 10 To 196
article = Worksheets("Acceuil").Cells(Counter, 2).Value
h = Worksheets("Acceuil").Cells(Counter, 4).Value
'If article <> "" Then
' Worksheets("Acceuil").Cells(Counter, 5).Value = h+h*INT(Random Between(5;10)))%)
Else: Worksheets("Acceuil").Cells(Counter, 5).Value = ""
 
Re

Bah le +10 varie
Pour t'en convaincre , testes avec la macro ainsi modifiée
Et regardes ensuite les formules dans les cellules
VB:
Sub Macro1_b()
[E10:E197].Formula = "=IF(D10<>"""",D10+D10*INT((RANDBETWEEN(5,10)))%,"""")"
[F10:F197].Formula = "=IF(D10<>"""",D10+D10*INT((RANDBETWEEN(5,12)))%,"""")"
End Sub
 
Bonjour Chingilou, Staple, Eastwick,
@Staple,
comme ca la rangé E et F de mon tableau ne change pas à chaque ouverture du fichier jusqu’au prochain appuie du bouton
En mettant une formule c'est recalculé à chaque fois. Je pense que Chingilou veut que les valeurs soient fixes entre deux appui sur un bouton.
Une possibilité peut être :
Code:
Sub Alea()
    Dim L As Integer
    For L = 10 To 196
        If Cells(L, "D") <> "" Then
            Cells(L, "E") = Cells(L, "D") * (1 + Int((Application.RandBetween(5, 10))))
            Cells(L, "F") = Cells(L, "D") * (1 + Int((Application.RandBetween(5, 12))))
        End If
    Next L
End Sub
 
Ou encore en s'inspirant :
Code:
Sub Macro1_b2()
    [E10:E197].Formula = "=IF(D10<>"""",D10+D10*INT((RANDBETWEEN(5,10)))%,"""")"
    [F10:F197].Formula = "=IF(D10<>"""",D10+D10*INT((RANDBETWEEN(5,12)))%,"""")"
    [E10:E197] = [E10:E197].Value
    [F10:F197] = [F10:F197].Value
End Sub
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
3
Affichages
773
Compte Supprimé 979
C
Retour