Copier juste la valeur de la cellule!!!!
Résolu
Vorfonk
Messages postés
52
Date d'inscription
Statut
Membre
Dernière intervention
-
eriiic Messages postés 24603 Date d'inscription Statut Contributeur Dernière intervention -
eriiic Messages postés 24603 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
je travaille sur un fichier et j'essaye de trouver la solution pour transferer certains données d'une feuille à une autre, d'un coté je suis content d'avoir trouvé la solution avec un petit code vba:
-Sub Macro1()
Range("D2").Select
Selection.Copy
Sheets("Recup").Select
Range("B3").Select
ActiveSheet.Paste
End Sub
Mais le probleme se pose quand la macro copie meme la mise en forme de la cellule concerné, avez vous une solution?
Deuxiement , y a t il le t le moyen de manipuler le code pour excuter la tache pour plusieurs cellule a la fois sans retaper tout le code à chaque fois?
Merci d'avance , et désolé pour mon Français :D
je travaille sur un fichier et j'essaye de trouver la solution pour transferer certains données d'une feuille à une autre, d'un coté je suis content d'avoir trouvé la solution avec un petit code vba:
-Sub Macro1()
Range("D2").Select
Selection.Copy
Sheets("Recup").Select
Range("B3").Select
ActiveSheet.Paste
End Sub
Mais le probleme se pose quand la macro copie meme la mise en forme de la cellule concerné, avez vous une solution?
Deuxiement , y a t il le t le moyen de manipuler le code pour excuter la tache pour plusieurs cellule a la fois sans retaper tout le code à chaque fois?
Merci d'avance , et désolé pour mon Français :D
A voir également:
- Copier juste la valeur de la cellule!!!!
- Aller à la ligne dans une cellule excel - Guide
- Comment copier une vidéo youtube - Guide
- Super copier - Télécharger - Gestion de fichiers
- Excel cellule couleur si condition texte - Guide
- Verrouiller cellule excel sans verrouiller la feuille - Guide
2 réponses
Bonjour,
Tu n'es pas obligé de faire les .select
Pour 1 cellule :
Worksheets("Recup").[B3] = [D2].Value
Pour plusieurs cellules :
Worksheets("Recup").Range("B3:B6") = Range("D2:D5").Value
ou sinon faire des boucles
eric
Tu n'es pas obligé de faire les .select
Pour 1 cellule :
Worksheets("Recup").[B3] = [D2].Value
Pour plusieurs cellules :
Worksheets("Recup").Range("B3:B6") = Range("D2:D5").Value
ou sinon faire des boucles
eric
Bonjour,
Et merci Eric pour ton soutien,
J'ai une erreur en essayant d'executer ça :
-Worksheets("Recup").Range("B4;C4;D4;E4;F4") = Worksheets("Bon-De-commande").Range("D2;I3;I5;K43;E43").Value
Je crois que je me suis planté dans quelque chose, pourriez vous le corriger :D
merci d'avance.
PS: Je m'explique: je voudrai faire une recupulatif de mes bon de commande et je voudrai qu'a chaque fois que j'execute le tâche les informations s'enregestre sur la ligne suivante :D je suis trop nul pour arriver a mettre cette idée dans un code VBA!
Et merci Eric pour ton soutien,
J'ai une erreur en essayant d'executer ça :
-Worksheets("Recup").Range("B4;C4;D4;E4;F4") = Worksheets("Bon-De-commande").Range("D2;I3;I5;K43;E43").Value
Je crois que je me suis planté dans quelque chose, pourriez vous le corriger :D
merci d'avance.
PS: Je m'explique: je voudrai faire une recupulatif de mes bon de commande et je voudrai qu'a chaque fois que j'execute le tâche les informations s'enregestre sur la ligne suivante :D je suis trop nul pour arriver a mettre cette idée dans un code VBA!
Bonjour,
Comme la destination n'est pas une plage il faut faire 5 copies d'1 cellule.
Et si les écritures doivent s'écrire successivement les unes sous les autres il faut que tu récupères la 1ère ligne libre pour écrire à cet endroit.
Prend ça comme base et adapte si besoin :
à condition que Bx ne soit jamais vide, sinon cale-toi sur une autre colonne pour voir la 1ère cellule vide
eric
Comme la destination n'est pas une plage il faut faire 5 copies d'1 cellule.
Et si les écritures doivent s'écrire successivement les unes sous les autres il faut que tu récupères la 1ère ligne libre pour écrire à cet endroit.
Prend ça comme base et adapte si besoin :
Dim lig As Long ' recup 1ère ligne vide lig = Worksheets("Recup").[B65536].End(xlUp).Row + 1 ' écrire valeurs Worksheets("Recup").Cells(lig, 2) = Worksheets("Bon-De-commande").Range("D2").Value Worksheets("Recup").Cells(lig, 3) = Worksheets("Bon-De-commande").Range("I3").Value Worksheets("Recup").Cells(lig, 4) = Worksheets("Bon-De-commande").Range("I5").Value Worksheets("Recup").Cells(lig, 5) = Worksheets("Bon-De-commande").Range("K43").Value Worksheets("Recup").Cells(lig, 6) = Worksheets("Bon-De-commande").Range("E43").Value
à condition que Bx ne soit jamais vide, sinon cale-toi sur une autre colonne pour voir la 1ère cellule vide
eric