Ide excel vba

Résolu
Link -  
 Link -
Bonjour ,

J'ai un bout de code VBA qui me permet de copier des cellules spécifique d'une feuil1 sur la feuil2

Ce que j'aimerais mais je ne sais pas si cela est réalisable sur excel, c'est que les cellules à copier de la feuil1 se copie dans la zone voulue en feuil2 mais que si elles ont atteint la dernière ligne prévue de la zone que cela en crée une nouvelle à la suite .

Voici le code vba :

Private Sub CommandButton1_Click()
Sheets("Feuil1").Range("A1:A50").EntireRow.Copy
Sheets("Feuil2").Select
ActiveSheet.Range("A51:A101").End(xlUp).Offset(1, 0).Select
ActiveSheet.Paste
End Sub

Merci d'avance pour vos réponse
A voir également:

12 réponses

gbinforme Messages postés 14946 Date d'inscription   Statut Contributeur Dernière intervention   4 724
 
bonjour

Ce que tu demandes ne me parait pas très limpide mais si j'ai bien compris, ceci devrait le faire
Private Sub CommandButton1_Click()
    Sheets("Feuil1").Range("A1:A50").EntireRow.Copy _
        Destination:=Sheets("Feuil2").Range("A65536").End(xlUp).Offset(1, 0)
End Sub

Tu copies ainsi tes lignes à la suite sans avoir besoin des sélections que tu utilisais.
0
Link
 
Re,

merci d'avoir répondu ta solution marche mais le fait est que j'ai des copies qui provienne de plusieurs feuilles avec des donnée qui doivent être traiter par rubrique.

Si j'applique ta formule à toute mes pages je ne pourrai les classer vue quelle se copies dans la premier cellule vide.

C'est pour sa que je cherche un moyen de sélection une zone et que lorsque cette zone est dépasser une nouvelle ligne se crée pour agrandir la zone.

Merci encore pour ton aide
0
gbinforme Messages postés 14946 Date d'inscription   Statut Contributeur Dernière intervention   4 724
 
bonjour

un moyen de sélection une zone et que lorsque cette zone est dépasser une nouvelle ligne se crée

Désolé mais je ne comprends pas ce que tu veux dire avec cette phrase : essaies de le reformuler différemment pour que je voie où se situe le problème ou mets nous un exemple sur http://www.cijoint.fr/ et tu nous donnes l'adresse du lien.
0
Link
 
RE,

tu trouvera ci-joint un fichier excel avec ma problématique

lien : http://www.cijoint.fr/cjlink.php?file=cj200908/cijhEpBdBW.xls

Je te remercie du temp que tu m'accorde c'est vraiment sympas de ta part.

j'espère avoir été plus explicite
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Link
 
Une idée ? ou il vaux peut etre que je réfléchisse à d'autre solutions ?
0
Link
 
tit up ^^
0
gbinforme Messages postés 14946 Date d'inscription   Statut Contributeur Dernière intervention   4 724
 
bonjour

il vaux peut etre que je réfléchisse à d'autre solutions ?

Pas nécessairement mais comme je ne suis pas d'astreinte 24/24, faut attendre que quelqu'un revienne.

Voici ton classeur avec une macro paramétrée qui permet de recopier les données et qui ajuste automatiquement la taille des plages nommées :

http://www.cijoint.fr/cjlink.php?file=cj200908/cijcKZDqou.xls
0
Link
 
Bonjour gbinforme ,

Un grand merci à toi c'est tout à fait sa qu'il me fallait. Je sais pas trop comment ta fait mais merci bcp

reste plus qu'a tenter de reproduire sa sur plusiers feuille.

Encor merci et bonne journée ^^
0
gbinforme Messages postés 14946 Date d'inscription   Statut Contributeur Dernière intervention   4 724
 
bonjour

reste plus qu'a tenter de reproduire sa sur plusiers feuille.

C'est fait pour cela, puisque pour chaque feuille tu n'as qu'à appeler le module avec le bon nom de feuille et le bon nom de plage qu'il te faut nommer au préalable bien sûr et ensuite ta plage va évoluer selon le nombre de lignes des données.
0
Link
 
re ,

Suis pas un pro donc j'ai pas vraiment compris ce que tu ma écris.

" appeler le module avec le bon nom de feuille et le bon nom de plage qu'il te faut nommer au préalable"

j'ai eu beau regarder sur les feuille que tu avais faite je ne trouve pas la zone de plage que tu as délimitée.

Dsl mais si tu pouvais m'indiquer la marche à suivre je t'en serai reconnaissant.
0
gbinforme Messages postés 14946 Date d'inscription   Statut Contributeur Dernière intervention   4 724
 
bonjour

Tu as un module avec une procédure appelée "copie"

Dans ta feuille 3 par exemple la procédure de ton bouton est celle-ci
Call copie("Feuil3", "procédure")

Tu copies donc ta feuille 3 dans la plage "procédure" de la feuille 1. Si ta feuille résultat ne s'appelle pas "Feuil1", il faut changer le nom dans la procédure "copie".

La plage "procédure" est nommée dans la zone nom comme tu avais commencé de le faire dans ton classeur exemple : si tu nommes une plage de 10 lignes, elle s'adaptera à la bonne taille dès ta première copie.

Dans ta feuille 2 tu as
    Call copie("Feuil2", "processus")

Tu copies donc ta feuille 2 dans la plage "processus" de la feuille 1

Tu peux avoir autant d'onglets que tu veux en mettant le bon paramètre dans chaque feuille concernée.
0
Link
 
Re ,

C'est bon sa marche avec à tes explications c'est tout de suite plus clair ^^

Encore ( je sais me répète lol ) mais merci tu ma rendu un grand service

A bientôt bonne journée
0