Copier coller

Jeje1830 Messages postés 4 Date d'inscription   Statut Membre Dernière intervention   -  
Jeje1830 Messages postés 4 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour ,
Sur ma première feuille Excel celle ci fait office d'interface pour l'utilisateur avec des cases à remplir comme "désignation " " quantité donné aux agents ", "date "."Vac".

Lorsque l'utilisateur appui sur un bouton ,j'aimerai que les valeurs qu il a rempli précédemment dans chacune des cases soient copiés dans une autre feuille afin que je puisse avoir un historique de ce que j'ai donné aux agents à quelle date etc.

Si qqn à le code vba pour ça, ça serait cool merci !
A voir également:

2 réponses

jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752
 
Bonjour,


Si qqn à le code vba pour ça, ça serait cool merci !

Ah ben.. chaque cas est un peu particulier .... et donc.. il faut CODER en fonction du besoin.
Je doute que quelqu'un est déjà exactement ce que tu souhaites faire....

Mais bon.. ce n'est pas bien compliqué.

Sais tu au moins codé un peu en VBA ?

Par exemples :
- Lire le contenu d'une cellule ? ( tu peux le faire avec
 valeurCellule = Range("A1").value


- Ecrire du contenu dans une cellule ?
( tu peux le faire avec
Range("A1").value =   Unevaleur 



Bien entendu.. tu peux spécifier la feuille sur laquelle agir ... par exemple :
Sub toto()

Dim Sh1 As Worksheet
Dim Sh2 As Worksheet
Dim valeurCell As Variant


'J'indique que Sh1 = Feuil1 et Sh2 = Feuil2
Set Sh1 = ThisWorkbook.Sheets("Feuil1")
Set Sh2 = ThisWorkbook.Sheets("Feuil2")

'Je lis le contenu de la cellule B3 de la feuille 1
valeurCell = Sh1.Range("B3").Value

'Je mets cette valeur dans la feuille 2 dans la cellule B3 également
 Sh2.Range("B3").Value = valeurCell


End Sub




Bien entendu.. vu que toi tu veux historiser à chaque saisie.. il faudra "ajouter" une nouvelle ligne dans la feuille 2 au fur et à mesure...
Par exemple en allant chercher au préalable le numéro de la dernière ligne remplie de cette feuille puis en y ajoutant +1

avec ce code par exemple :

Derniere_Ligne = Sh2.Cells.Find("*", Range("A1"), , , xlByRows, xlPrevious).Row 



Et donc le code de "recopie" deviendrait :
'Je mets cette valeur dans la feuille 2 dans la cellule B3 également
 Sh2.Range("B" & Derniere_Ligne+1).Value = valeurCell



0
Jeje1830 Messages postés 4 Date d'inscription   Statut Membre Dernière intervention  
 
Cela fonctionne cependant j'ai pas réussi au niveau du code pour qu'a chaque fois que je clic sur le bouton ma valeur se mettent sur la même colonne mais de la ligne suivante (c'est à dire en dessous )

Encore merci du coup de main
0
jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752
 
Sans voir ton code. ... impossible de t'aider
0
Jeje1830 Messages postés 4 Date d'inscription   Statut Membre Dernière intervention   > jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention  
 
Private Sub CommandButton24_Click() ' bouton pour générer un historique

'Je declare mes variables

Dim sh1 As Worksheet
Dim sh2 As Worksheet
Dim valeurCell As Variant

'j'indique que Sh1 = feuille interface et sh2 = historique commande

Set sh1 = ThisWorkbook.Sheets("Interface")
Set sh2 = ThisWorkbook.Sheets("historiquecommande")

'je lis le contenu de la cellule F9 de la feuille interface

valeurCell = sh1.Range("F15").Value
sh2.Range("E2").Value = valeurCell

valeurCell = sh1.Range("D15").Value
sh2.Range("D2").Value = valeurCell

valeurCell = sh1.Range("J15").Value
sh2.Range("F2").Value = valeurCell

valeurCell = sh1.Range("F9").Value
sh2.Range("B2").Value = valeurCell

valeurCell = sh1.Range("D9").Value
sh2.Range("A2").Value = valeurCell

valeurCell = sh1.Range("J9").Value
sh2.Range("C2").Value = valeurCell

valeurCell = sh1.Range("M15").Value
sh2.Range("G2").Value = valeurCell
' Je met ces valeurs dans la feuille historiquecommande

End Sub
0
Jeje1830 Messages postés 4 Date d'inscription   Statut Membre Dernière intervention  
 
Les valeurs de ma première feuille "interface" se mettent dans la cellule que je desire de la feuille "historiquecommande".Cependant j'aimerai qu'a chaque clic ça se mette a la ligne du dessous
0