Urgent !!! (EXcel/VBA)

voix_off Messages postés 10 Date d'inscription mercredi 23 mars 2005 Statut Membre Dernière intervention 6 juin 2005 - 23 mars 2005 à 23:04
valtrase Messages postés 937 Date d'inscription lundi 19 janvier 2004 Statut Membre Dernière intervention 9 mai 2022 - 24 mars 2005 à 01:25
Bonjour,

j'ai un vrai problème :



Dans Excel, en VBA, je dois créer une macro qui duplique certaines
lignes et qui applique à aux 2 moitiés de lignes ainsi créées un
attribut différent dans une colonne. Clair ou pas ?



EX : j'ai 25 lignes, je les duplique, j'en ai 50. Je veux que dans la
colonne TOTO, les 25 premieres lignes aient pour valeur YOUPI, et dans
les 25 suivantes, la valeur TRALALA.

Comment fais-je ????



Merci pour vos réponses !

2 réponses

jpleroisse Messages postés 1788 Date d'inscription mardi 7 novembre 2000 Statut Membre Dernière intervention 11 mars 2006 27
24 mars 2005 à 00:05
Cette macro suppose que la cellule C1 = TOTO

Sub NommerLigne()
Range("C2:C25").Select
ActiveCell.FormulaR1C1 = "Youpi"
Range("C2").Select
Selection.AutoFill Destination:=Range("C2:C26"), Type:=xlFillDefault
Range("C2:C26").Select


Selection.Copy
Range("C27").Select
ActiveSheet.Paste
ActiveCell.FormulaR1C1 = "Tralala"

Range("C27").Select
Selection.AutoFill Destination:=Range("C27:C51"), Type:=xlFillDefault
End Sub

jpleroisse
0
valtrase Messages postés 937 Date d'inscription lundi 19 janvier 2004 Statut Membre Dernière intervention 9 mai 2022 3
24 mars 2005 à 01:25
Salut,
Voilà un bout de code à essayer !!!!!
' Pour copier d'abord choisir la plage à copier


Dim MyRange As Range, MyCopy As Range, Element As Range
Set MyRange = Range("A1:A25").EntireRow
Set MyCopy = Range("A26:A50").EntireRow

' Une technique de copie par affectation
'MyCopy = MyRange

' Ou par copie
MyRange.Copy MyCopy
MsgBox "Maintenant on affecte les données !!"


' Là on sélectionne la 3ème colonne de MyRange qui peut-être différente de la colonne "C"
MyRange.Columns(3).Value = "Youpi"
MyCopy.Columns(3).Value = "Tralala"


MsgBox "Et on efface"


MyRange.Clear
MyCopy.Clear
'y'a d'autres méthode tout dépand de ce que tu recherches

Cordialement, Jean-Paul
______________________________________________________________________

Le Savoir n'a de valeur que s'il est partagé
0
Rejoignez-nous