Programmation excel
Résoluanna_1 -
Voilà, j'ai un petit soucis. J'aimerais copier n lignes d'une feuille excel sur une deuxième feuille excel en insérant d boutons à chaque fin de ligne, pour n'avoir qu'à cliquer sur le bouton pour copier/coller la ligne.
Est-ce facilement réalisable?
Je connais que très peu la programmation.
Configuration: Windows XP Internet Explorer 7.0
- Programmation excel
- Liste déroulante excel - Guide
- Word et excel gratuit - Guide
- Trier un tableau excel - Guide
- Si ou excel - Guide
- Déplacer colonne excel - Guide
55 réponses
- 1
- 2
- 3
Le problème porte sur copier n lignes d'une feuille Excel vers une autre en insérant des boutons à la fin de chaque ligne pour déclencher le copier-coller d'un clic. La solution passe par un bouton de formulaire et l'affectation d'une macro ; la ligne clé est Range("B" & Selection.Row).Copy, à adapter selon les colonnes et l'emplacement cible. Des conseils suggèrent d'éviter des feuilles séparées et d'ajouter une colonne mois pour cibler les lignes à copier, avec une macro unique pour tous les boutons. En pratique, une gestion des erreurs de macro et des adaptations éventuelles du nom des feuilles ou des colonnes peuvent être nécessaires lors de la mise en œuvre.
c'est possible sans aucun probleme, mais un seul bouton est suffisant, si tu mets un bouton à chaque ligne, tu vas surcharger ton classeur ......
envoie un bout de ton fichier par cjoint.com sans données confidentielles
essaye ceci :
a mettre dans la feuil 1 dans le visual basic
Private Sub CommandButton1_Click()
On Error GoTo fin
i
Range(Cells(2,1), Cells(2, 10)).Copy _
Destination:=Worksheets(CStr(Cells(1, 1))).Cells(2, 1)
fin:
'Ce qui veut dire en clair :
'Si tu rencontres une erreur và à la balise fin:
'copie de la cellule ligne 2, colonne 1 (A2) à la cellule ligne 2, colonne 10 (A10)
'vers l 'onglet dont le nom se trouve en ligne 1 colonne 1 (A1="feuil2") et dans cet onglet à partir de la cellule ligne 2, colonne 1 (A2).
'Dans le classeur que tu nous a envoyé il n'y a pas d'onglet se nommant "semaine 1". Le code ne peut donc pas fonctionner sans créer cet onglet avant.
End Sub
si tu as un problème envoi ton fichier
Ah ben j'espère pouvoir y arriver.
Je t'envoie un exemple de ce à quoi ca ressemble.
Je n'ai malheureusement pas le fichier type avec toute la structure mais au moins ca te donne une idée.
Ca ne doit pas copier toutes les lignes d'un coup, c'est pour cela qu' j'avais pensé àun bouton par ligne.
Uniquement celles qu'on souhaite.
Par contre comment te joindre le fichier je ne vois rien???
tu vas sur le site cjoint.com
tu cherche ton fichier avec le bouton : choisir un fichier, ensuite tu clique sur le bouton creer un lien
il te donne à ce moment une adresse avec une code tordu
tu fais un copier coller de cette adresse sur la reponse que tu donne
comme je fais en te donnant ce lien à suivre https://www.cjoint.com/index.php
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre questionton fichier en retour : https://www.cjoint.com/?jnkbTtgiE6
j'ai figé les volets, en dessous de la ligne de titres et j'ai mis le bouton au dessus pour pas qu'il disparaisse quand on descend avec l'ascenseur
j'ai utilisé la colonne A pour pointer l'enregistrement deja copier
les enregistrement se copient un en dessous de l'autre dans la feuille 2
Merci j'ai ton fichier en retour.
Il me met un msg d'erreur par rapport aux maccros.
Je vais tester et te tenir au courant.
merci bcp
Msg d'erreur sur les macros j'ai regardé dans options-maccro le niveau est à elevé.
Comme c'est indiqué dans l'aide.
si ton niveau de protection est elevé les macro ne se chargeront pas, personnellement j'ai le niveau à faible, ca fait 2 ans que je parcours les forums, et je n'ai jamais eu de virus, je ne telecharge rien d'autre que ce que je connais....
il te faut baisser ta protection,
en la mettant au niveau moyen, à chaque ouverture il va te demander si tu veux activer le macro
en la mettant au niveau faible, il ne te demande rien et active automatiquement les macros
J'aimerais l'adapté au fichier si j'y arrive.
parcke comme jte l'ai dis je ne l'ai pas ici pr le moment
c'est un bouton de type formulaire, click droit dessus, un menu s'affiche, affecter une macro
dans la liste, macro1, ne rien faire, un bouton : Modifier la macro
tu te trouve dans le code
une ligne : Range("B" & selection.row............).copy, c'est cette ligne qu'il faut adapter, en fonction des colonnes
si probleme, renvoie le fichier exemple, avec la struture de ton fichier
(titre des colonnes, nom des feuilles......) je n'ai plus besoin des enregistrements, j'adapterai la macro et je la commenterai
il y a tout.
Je voulais te demander comme je dois faire une feuille par mois, je n'ai qu'à reprendre les meme formules pour les autres feuilles?
Puisque je ne pourrais pas tout garder sur une seule et même feuille.
Trop d'enregistrements. et c'est mieux de voir une situation mensuelle.
Qu'en penses-tu.
j'ai l'ai un peux bete lol, mais je ne trouve pas ..............
question : feuil1, feuil2, feuil3 ce sont les noms de feuille reel ?
quelle feuille vas sur quelle feuille ?????
les titres de colonne, aucun titre identiques, quelle colonne va ou ?
desolé de te poser ces questions, mais je pensais que le classeur d'origine etait plus explicite lol
C'est les données de la feulle 2 qui vont sur la 3
Enfait il faudrait reprendre uniquement le texte.
Donc Libellé+Montant le reste devra etre saisi a la main.
https://www.cjoint.com/?jnmOcUdN2F
Voilà.
merci
ton fichier en retour avec la macro entierement expliquée
https://www.cjoint.com/?jnnbjdCnkd
meme procedure pour acceder la macro
C'est vraiment gentil de ta part.
Si je dois faire une feuille par mois est-ce possible??
Ou je dois saisir systématiquement tout sur la même feuille?
Je voudrais séparer les mois enfait.
Et garder le même système.
tu peux, pour cela creer un bouton par mois et tu le relies à la meme macro, etant donné que c'est de la feuille active que les données partent
par contre mais la c'est personnel, quand je fais des saisies, j'evite de les mettre dans des feuilles differentes, il y a plein d'autres moyens pour selectionner un mois dans une feuille de base de données
exemple, une colonne supplementaire pour mettre le mois, ou encore une formule : =Mois(D7)
et un filtre automatique sur le mois
- 1
- 2
- 3