comment automatiser une selection aleatoire ?

assniok

XLDnaute Occasionnel
Bonjour a tous,

je cherche à automatiser une selection dans un fichier excel.

avec ça, ça fonctionne sur un type de fichier mais ce n'est pas aleatoire.... des que ma zone E2:J54 change, ça ne fonctionne plus...

Code:
    Range("E2:J54").Select
    selection.Copy

La seule chose qui est fixe, c'est le debut de la selection E2, par contre pour la colonne J, je ne sais pas determiner la derniere cellule non vide ?

avez vous une idée ?

merci d'avance et bonne journée.
 

Staple1600

XLDnaute Barbatruc
Re : comment automatiser une selection aleatoire ?

Bonjour à tous, tototiti2008


Une variante du code précédent
(ici on recopie les données en P2 (enfin P2 est la première cellule recevant les données à coller )par exemple)
Code:
 Range("E2:J" & [J65536].End(XlUp).Row).Copy Range("P2")
 
Dernière édition:

assniok

XLDnaute Occasionnel
Re : comment automatiser une selection aleatoire ?

Bonjour à tous, tototiti2008


Une variante du code précédent
(ici on recopie les données en P2 (enfin P2 est la première cellule recevant les données à coller )par exemple)
Code:
 Range("E2:J" & [J65536].End(XlUp).Row).Copy Range("P2")

salut et merci pour vos reponses ;)

cette derniere solution me semble bien.

Mon pb est que je dois faire une selection dans le fichier A.xls (donc la plage E2:Jxxx), la copier dans la cellule E2 d'un autre fichier B.dbf... et ces 2 fichiers ne sont pas forcemment toujours les memes donc pas simple de trouver une procedure qui fonctionne dans tout les cas :(

est ce possible ou dois je passer obligatoirement par des macros ou autres pour jongler entre mes deux fichiers ?
 

assniok

XLDnaute Occasionnel
Re : comment automatiser une selection aleatoire ?

Bon j'ai essayé de faire comme ça pour m'en sortir mais ça ne foncionne pas :(

Code:
Private Sub CommandButton2_Click()
DerLigne = Range("J65536").End(xlUp).Row
Range("E2:J" & DerLigne).Copy
End Sub

'Entre ces 2 boutons, je change de fichier via une macro et je souhaiterais que mon bouton 3, colle la selection precedemment copiée dans mon nouveau fichier...

Private Sub CommandButton3_Click()
[COLOR="Red"]Copy Range("E2")[/COLOR]
End Sub

si vous avez une idée du code en rouge qu'il faut utiliser pour que ça fonctionne...

merci
 

assniok

XLDnaute Occasionnel
Re : comment automatiser une selection aleatoire ?

Re,

à tester :

Range("E2:J" & DerLigne).Copy Workbooks("2èmeClasseur.xls").worksheets("Feuil1").range("E2")

je ne suis pas sur que ce soit possible comme ça car les classeurs qui seront ouverts ne sont pas connus a l'avance, donc les noms changent tout le temps...

donc j'etais plutot partis comme ça :
Code:
    'Selection & copie de la plage concernée de E2 a la derniere cellule non vide de la colonne J
Private Sub CommandButton2_Click()
DerLigne = Range("J65536").End(xlUp).Row
Range("E2:J" & DerLigne).Copy
End Sub
    'Copie de la selection sur la nouvelle feuille active
Private Sub CommandButton3_Click()
ActiveSheet.Select 'sélectionne la feuille active où il faut coller
Range("E2").Select 'sélectionne la cellule/bloc ou il faut coller
Selection.PasteSpecial _
Paste:=xlPasteAll, Operation:=xlPasteSpecialOperationAdd
End Sub

cependant, ça ne me copie que les valeur numeriques, j'ai essayé differents arguments, mais je n'arrive pas a copier les cellules en integralité... celles contenants du texte ne sont pas copiées... pourquoi ??

encore merci pour votre aide ;)
 

Discussions similaires

Statistiques des forums

Discussions
312 069
Messages
2 085 040
Membres
102 763
dernier inscrit
NICO26