Affecter macro a plusieurs lignes

exceltony

XLDnaute Nouveau
Bonjour à tous,

Je voudrais affecter ce code à plusieurs lignes de la meme page. En bleu, j'ai recopié le code juste au dessus, en changeant le numero de ligne. mais je dois aller jusqu a la ligne 55, je risque d y passer la nuit. Si pouvez m'aider.

Merci par avance,

Sub ReCalc()
MTime = Time
Application.OnTime MTime + TimeValue("00:00:01"), "ReCalc" ' temps à ajuster
If Worksheets(1).Cells(1, 11).Value > 0 Then
Worksheets(1).Cells(1, 11).Value = Worksheets(1).Cells(1, 11).Value - 1
Else
Worksheets(1).Cells(1, 11).Value = Worksheets(2).Cells(1, 5).Value
Worksheets(2).Cells(4, 5).Value = Worksheets(2).Cells(4, 4).Value
Randomize
Worksheets(2).Cells(4, 4).Value = Rnd * (Worksheets(2).Cells(4, 3).Value - Worksheets(2).Cells(4, 2).Value) + Worksheets(2).Cells(4, 2).Value
Worksheets(2).Cells(5, 5).Value = Worksheets(2).Cells(5, 4).Value
Randomize
Worksheets(2).Cells(5, 4).Value = Rnd * (Worksheets(2).Cells(5, 3).Value - Worksheets(2).Cells(5, 2).Value) + Worksheets(2).Cells(5, 2).Value

End If
End Sub
 

Dranreb

XLDnaute Barbatruc
Re : Affecter macro a plusieurs lignes

Peut être comme ça :
VB:
Option Explicit
Dim Réexécuter As Boolean

Sub ReCalc()
Dim TV() As Variant, L As Long
If Worksheets(1).Cells(1, 11).Value > 0 Then
   Worksheets(1).Cells(1, 11).Value = Worksheets(1).Cells(1, 11).Value - 1
Else
   Worksheets(1).Cells(1, 11).Value = Worksheets(2).Cells(1, 5).Value
   TV = Worksheets(2).[B4:E55].Value
   Randomize
   For L = 1 To 52: TV(L, 4) = TV(L, 3): TV(L, 3) = Rnd * (TV(L, 2) - TV(L, 1)) + TV(L, 1): Next L
   Worksheets(2).[B4:E55].Value = TV
   End If
If Réexécuter Then Application.OnTime Now + TimeValue("00:00:01"), "ReCalc" ' temps à ajuster
End Sub

Sub Bouton()
Réexécuter = Not Réexécuter
If Réexécuter Then ReCalc
End Sub
Mais il vaudrait mieux joindre un classeur. Désagréable d'être obligé de créer un nouveau classeur et de ne pas voir sur quoi ça va porter pour pouvoir tester convenablement …
 

Discussions similaires

Réponses
3
Affichages
626

Statistiques des forums

Discussions
312 520
Messages
2 089 298
Membres
104 092
dernier inscrit
karbone57