Historisation de données Excel
Bonjour,
Etant relativement novice dans l'utilisation d'Excel je cherche une solution à un cas:
J'ai 2 tableaux que je renseigne chaque mois sur une feuille 1. J'aimerais que les données saisies viennent s'historiser dans les feuilles 2 et 3 (une par tableau), en appuyant sur une touche pas exemple.
C'est une urgence professionnelle qui motive ce message. Je joins le fichier type pour être plus explicite : http://cjoint.com/?AItofatNtEu
Je reste à disposition pour plus d'information.
Merci d'avance
Etant relativement novice dans l'utilisation d'Excel je cherche une solution à un cas:
J'ai 2 tableaux que je renseigne chaque mois sur une feuille 1. J'aimerais que les données saisies viennent s'historiser dans les feuilles 2 et 3 (une par tableau), en appuyant sur une touche pas exemple.
C'est une urgence professionnelle qui motive ce message. Je joins le fichier type pour être plus explicite : http://cjoint.com/?AItofatNtEu
Je reste à disposition pour plus d'information.
Merci d'avance
4 réponses
-
ContributeurEt que devient la feuille 1 qui a déjà été exploitée : Elle est archivée ou les données qu'elle contenait sont-elles remplacées ?
Pourquoi ne pas remplir directement les feuilles Société X et Société Y, en les complétant avec les masses salariales ? La Feuil1 ne présente aucun intérêt supplémentaire et me semble parfaitement inutile ... -
utilise =Feuille nom de cellule
Tape ceci dans ta 2è feuille
=Feuil1!A1 -
ContributeurTu as l'habitude des macros et de VBA ?
-
Re,
Comme le dit à juste titre Raymond que je salue, ce problème peut se traiter par VBA si tu as quelques notions.
il faut ouvrir le Visual Basic d'Excel, créer un module et coller ce code que l'on associe à un bouton
Sub Copy_tableau()
Dim x As Variant
Sheets("Feuil1").Select
Range("$B$3:$C$8").Copy
x = Range("C1").Value
Sheets("Société X").Select
With Worksheets("Société X").Range("A:A")
Set c = .Find(x, LookIn:=xlValues)
If Not c Is Nothing Then
firstAddress = c.Address
End If
End With
Range(firstAddress)(1, 3).Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=True
Sheets("Feuil1").Select
Range("$G$3:$H$8").Copy
x = Range("H1").Value
Sheets("Société Y").Select
With Worksheets("Société Y").Range("A:A")
Set c = .Find(x, LookIn:=xlValues)
If Not c Is Nothing Then
firstAddress = c.Address
End If
End With
Range(firstAddress)(1, 3).Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=True
Range("A4").Select
Sheets("Feuil1").Select
Range("A4").Select
Application.CutCopyMode = False
End Sub
exemple
https://www.cjoint.com/?AItqG2iGm9X
-
Alors j'avoue que je ne connais pas du tout VBA. Mais l'exemple que tu me donne est tout a fait parlant. C'est exactement ce que je cherchais à faire.
En revanche j'aurais besoin d'une ou 2 infos supplémentaires.
Comment alimenter les mois suivant ? seulement en changeant le mois ou la date dans les tableau de la Feuille1?
Dans les feuilles Société X et Société Y, les mois vont ils se créer au fur et à mesure des saisie?
Encore merci pour ton aide.
Elle m'est très précieuse.
-