Sauvegarde de colonne suite aux modifications

Bonjour,

J'essaye de trouver le moyen de sauvgarder automatiquement les modifications d'un colonne dans une Feuille différente tout en gardant l historique de ces modifications.

Plus précisément, la colonne de la feuille un, contenant des soldes de compte en banque est modifiée chaque semaine. De maniere a pouvoir analyser des tendances sur le Long Terme, je voudrais que chaque semaine, les valeurs de cette colonne de la feuille1 soient copiées dans une autre feuille a côtés de la colonne de la semaine précédente.

Donc Feuille1: En B1 on a l intiulé de la semaine (Week 1) En écrivant la num de la semaine, excel importe directement les valeurs d'autres documents envoyés par les filliales de l entreprise.

En feuille2: Colonne B, les valeurs de Week1 sont copiées et sauvées.

La semaine suivante, Toujours en B1 on a Week2 (avec tous les montants en dessous).

En feuille2: Colonne C, les valeurs de Week2 sont copiées et sauvées.

Est ce faisable? Merci pour votre aide.

Je mets un exemple en piece jointe.

14projet.xlsx (9.40 Ko)

Bonjour,

Première question qui vient à l'esprit : est-ce que les numéros , le nombre, l'ordre de ces comptes sont identiques d'une semaine à l'autre ?

A+

Bonjour Frangy,

A priori oui, on a developpé des formulaires bloqués contenant les numeros de comptes et qui nous sont renvoyés chaque semaine avec les nouveaux soldes. Grace a cela, on a pu coupler les formulaires avec la base de données qui trouve directement les soldes des que la semaine/date a ete adaptée.

Si jamais il y a un nouveau compte en banque, les filliales doivent nous communiquer les infos et nous adaptons le formulaires et la base de données et créons le lien.

Mon probleme se trouve dans la sauvgarde de chaque semaine dans une autre feuille sans effacer la semaine précédente.

Merci

Bonjour

A voir

Bonjour Banzai 64

Il semble que ce soit ca dont j ai besoin, ca a l'air de marcher tres bien! Un tout grand merci pour votre aide.

Par contre, comment puis je faire le même chose sur mon vrai fichier? S'agit t il de codes VBA (je n y connais rien )? Et si oui, comment les trouver/copier?

Merci bcp

Bonjour

Tu trouveras la macro dans le module de la feuille

Clic droit sur l'onglet de la feuille ---> Visualiser le code

Tu copies la macro dans une copie de ton fichier réel (au même endroit)

et tu testes complétement afin d'être sur que tout fonctionne comme tu veux

Re bonjour Banzai,

Grâce a votre aide, j y suis presque arrivé.

Un petit probleme demeure.

Dans la colonne suivante (AB) de ma feuille 1 j ai l'équivalence en € calculée a partir des taux de changes. J ai essayé de prolonger le code pour avoir une copie de cette equivalance dans la DB€ (Database €). Le problemes c'est que lorsque je change la semaine, cela me donne #VALUE! dans ma DB€.

Voici votre code que j ai adapté:

Private Sub Worksheet_Change(ByVal Target As Range)

Dim Cel As Range

Dim Colonne As Integer

If Target.Count > 1 Or Target.Cells(1, 1) = "" Then Exit Sub

If Target.Address = "$AA$1" Then

With Sheets("DB1")

Set Cel = .Rows(1).Find(What:=Range("AA1"), LookIn:=xlValues, Lookat:=xlWhole)

If Not Cel Is Nothing Then

Colonne = Cel.Column

If MsgBox("Des données de cette semaine " & Range("AA1") & " existent déjà" & vbCr & _

" On les efface ?", vbCritical + vbYesNo + vbDefaultButton2, "Remplacement") <> vbYes Then Exit Sub

.Columns(Colonne).ClearContents

Else

Colonne = .Cells(1, Columns.Count).End(xlToLeft).Column + 1

End If

Range("AA1:AA" & Range("A" & Rows.Count).End(xlUp).Row).Copy .Cells(1, Colonne)

End With

End If

If Target.Count > 1 Or Target.Cells(1, 1) = "" Then Exit Sub

If Target.Address = "$AB$1" Then

With Sheets("DB€")

Set Cel = .Rows(1).Find(What:=Range("AB1"), LookIn:=xlValues, Lookat:=xlWhole)

If Not Cel Is Nothing Then

Colonne = Cel.Column

If MsgBox("Des données de cette semaine " & Range("AB1") & " existent déjà" & vbCr & _

" On les efface ?", vbCritical + vbYesNo + vbDefaultButton2, "Remplacement") <> vbYes Then Exit Sub

.Columns(Colonne).ClearContents

Else

Colonne = .Cells(1, Columns.Count).End(xlToLeft).Column + 1

End If

Range("AB1:AB" & Range("A" & Rows.Count).End(xlUp).Row).Copy .Cells(1, Colonne)

End With

End If

End Sub

Comment cela se fait il qu il ne me donne pas la valeur?

Merci


Re bonjour,

J ai fini par trouver la solution.

Il s'agissait d'un probleme de Vlookup avec une feuille mal référencée.

Un tout grand merci pour votre aide

Rechercher des sujets similaires à "sauvegarde colonne suite modifications"