Copier coller
Jeje1830
Messages postés
5
Statut
Membre
-
Jeje1830 Messages postés 5 Statut Membre -
Jeje1830 Messages postés 5 Statut Membre -
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 !
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:
- Copier coller
- Historique copier coller - Guide
- Copier coller pdf - Guide
- Style d'écriture a copier coller - Guide
- Historique copier coller windows - Accueil - Informatique
- Symbole clavier copier coller - Guide
2 réponses
Bonjour,
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
- Ecrire du contenu dans une cellule ?
( tu peux le faire avec
Bien entendu.. tu peux spécifier la feuille sur laquelle agir ... par exemple :
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 :
Et donc le code de "recopie" deviendrait :
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
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
Encore merci du coup de main
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
'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