Formule

Bonsoir,

Je cherche à créer une formule pour archiver un résultat sur une feuille contenant un tableau:

- Sur une feuille 1, une cellule avec un menu déroulant (cellule F4, Janvier, Février, etc...), des autres cellules contenant un résultat (Somme, G21, G37, G53, G69, G85).

- Sur une feuille 2, un tableau contenant des cellules (E4, H4, K4, N4 et Q4).

Ce que je voudrais, c'est lorsque l'on sélectionne la cellule F4 de la feuille 1, Janvier , que les résultats des cellules G21, G37,G53, G69 et G85 (feuille 1)soient enregistrés sur la feuille 2 en cellule E4, H4, K4, N4 et Q4. Mais que si on resélectionne la cellule F4 (Feuille 1), Février d'autres résultats (Somme, G21, G37, G53, G69, G85, Feuille 1) soient enregistrés dans les cellules E7, H7, K7, N7 et Q7 (Feuille 2), sans modifier les résultats des cellules E4, H4, K4, N4 et Q4.

Merci d'avance

Lefebvre T

Bonjour,

un fichier vaudrait mieux qu'une longue explication,

mis je suppose que le fichier est structuré à un onglet par mois ... il vaudrait n'avoir qu'un seul onglet et mettre tous les items derrière les uns et les autres, cela permet de passer plus d'une année et faire des TCD ou des filtres sur les dates

Bonjour,

Merci de cette réponse, en ce qui concerne le fichier, je ne pas le modifier en le passant sur 12 mois, car cela me ferait ajouter beaucoup d'onglets.(>72).

donc il faut que je trouve une solution, soit par formule excel ou VBA !

Cdlt

Lefebvre t

J'avais mal compris (faut dire, faute de fichier !)

Si tu as un seul onglet pour tous les mois c'est parfait !

Maintenant pour résoudre ton problème, un bout de fichier serait utile !

Bonjour,

Donc :

- Sur la feuille 1, si je sélectionne 'Janvier' dans la cellule B2, je remplis les cellules B10 à B14.

Ce que je voudrais :

- Sur la feuille 3 , au même instant, c'est que les cellules C3 à G3 se remplissent avec les mêmes données.

- Donc : B10 en C3, B11 en D3, B12 en E3, B13 en E3 et B14 en G3.

Ensuite, sur la feuille 1, lorsque l'on choisit Février (cellule B2), je remplis les cellules B10 à B14, donc les cellules de la feuille 3 (C4 à G4) se remplissent automatiquement avec des nouvelles données, tout en gardant les données des cellules C3 à G3 remplies auparavant en ayant sélectionné Janvier en B2 feuille 1.

Sauvegarde des données du mois par rapport à la semaine sur la feuille 3.

Merci d'avance

Cordialement

Lefebvre T

3classeur1.xlsx (10.36 Ko)

ok

au passage ... Août et non Aoüt

je regarde pour faire une procédure événementielle

Private Sub Worksheet_Change(ByVal Target As Range)
    If Not Intersect(Target, Range("B10:B14")) Is Nothing Then
        For Each cel In Intersect(Target, Range("B10:B14"))
            Sheets("Feuil3").Cells(Cells(2, 3), Target.Offset(, 1)) = Target.Value
        Next
    ElseIf Not Intersect(Target, Range("B2")) Is Nothing Then
        Application.EnableEvents = False
        Range("B10:B14").ClearContents
        Application.EnableEvents = True
    End If
End Sub

Pour simplifier cette macro, j'ai ajouté des données en colonne C afin de retrouver rapidement les cellules à renseigner.

Faut-il, quand on revient sur un mois déjà renseigné, réinjecter les valeurs en Feuil 1 ?

5classeur1.xlsm (18.98 Ko)

Avec reprise des valeurs déjà introduites ...

Private Sub Worksheet_Change(ByVal Target As Range)
    If Not Intersect(Target, Range("B10:B14")) Is Nothing Then
        For Each cel In Intersect(Target, Range("B10:B14"))
            Sheets("Feuil3").Cells(Cells(2, 3), Target.Offset(, 1)) = Target.Value
        Next
    ElseIf Not Intersect(Target, Range("B2")) Is Nothing Then
        Application.EnableEvents = False
        For i = 10 To 14
            Cells(i, 2) = Sheets("Feuil3").Cells(Cells(2, 3), Cells(i, 2).Offset(, 1)).Value
        Next
        Application.EnableEvents = True
    End If
End Sub
2classeur1.xlsm (19.25 Ko)

Re bonjour,

Un grand merci pour votre rapidité et professionnalisme.

Que dire d'autre ? Géant !!!

Il me reste plus qu'à comprendre la chose !!!

Et adapter cette formule à mon fichier réel.

Merci à vous.

Re bonjour,

J'apporte une modification à ma feuille 1 :

Les cellules sont maintenant B10, B12, B14, B16 et B18, quelles modifications sont à apporter ?

Cdlt

LefebvreT

Private Sub Worksheet_Change(ByVal Target As Range)
    If Not Intersect(Target, Range("B10,B12,B14,B16,B18")) Is Nothing Then
        For Each cel In Intersect(Target, Range("B10:B14"))
            Sheets("Feuil3").Cells(Cells(2, 3), Target.Offset(, 1)) = Target.Value
        Next
    ElseIf Not Intersect(Target, Range("B2")) Is Nothing Then
        Application.EnableEvents = False
        For i = 10 To 18 Step 2
            Cells(i, 2) = Sheets("Feuil3").Cells(Cells(2, 3), Cells(i, 2).Offset(, 1)).Value
        Next
        Application.EnableEvents = True
    End If
End Sub
4classeur1.xlsm (17.87 Ko)
Rechercher des sujets similaires à "formule"