Fonction alea

Florian95

XLDnaute Nouveau
Bonjour à tous,


J'ai fait une petite macro mais qui ne fonctionne malheureusement pas !

La formule Index est bien appliquée sur toute la sélection. En fin de macro, je souhaite enlever la formule des cellules pour ne laisser que les valeurs mais la macro plante au niveau du collage spéciale. Je soupçonne la fonction index de perturber la macro mais je n'arrive pas à saisir le pourquoi du comment !

merci de votre aide !

Florian

ci-après la macro

Sub Nom_aléatoire()
'
' Nom_aléatoire Macro
'

'
Range("C2:C366,E2:E366,G2:G366,I2:I366").Select
Selection.FormulaR1C1 = "=INDEX(BDD!R2C1:R439C1,INT(RAND()*365)+1)"

Range("C2:C366,E2:E366,G2:G366,I2:I366").Select
Selection.Copy
Sleection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False


End Sub
 

vgendron

XLDnaute Barbatruc
Re : Fonction alea

Bonjour,

Je pense que ce qui bloque, c'est plutot la sélection "multi Range"..

Si tu sélectionnes toute la zone d'un coup. ca fonctionne..
si tu ne peux pas. tu vas devoir procéder colonne par colonne..

Code:
Sub Nom_aléatoire()
'
' Nom_aléatoire Macro
'

'
Range("C2:C366,E2:E366,G2:G366,I2:I366").Select
Selection.FormulaR1C1 = "=INDEX(BDD!R2C1:R439C1,INT(RAND()*365)+1)"

Range("C2:I366").Select
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
Application.CutCopyMode = False

End Sub
 

pierrejean

XLDnaute Barbatruc
Re : Fonction alea

Bonjour Florian

Salut vgendron

A tester:

Code:
zone = Array("C2:C366", "E2:E366", "G2:G366", "I2:I366")
For n = LBound(zone) To UBound(zone)
 Range(zone(n)).FormulaR1C1 = "=INDEX(BDD!R2C1:R439C1,INT(RAND()*365)+1)"
 Range(zone(n)).Value = Range(zone(n)).Value
Next
 

Discussions similaires

Réponses
5
Affichages
515
Réponses
1
Affichages
1 K

Statistiques des forums

Discussions
312 495
Messages
2 088 964
Membres
103 992
dernier inscrit
Christine 974