Vous utilisez un navigateur obsolète. Il se peut que ce site ou d'autres sites Web ne s'affichent pas correctement. Vous devez le mettre à jour ou utiliser un navigateur alternatif.
bonjour à tous,
je souhaiterai archiver des données dans un tableau.
En effet, dans le fichier ci joint en feuille3, il y a un tableau que je mettrai à jour tous les jours. Je cherche une macro pour que lorsque j'appuie sur le bouton archiver, les données dans ce tableau s'inscrivent dans le tableau recap (en fonction de la date).
Exemple Si j'appuie sur le bouton archiver, la données de la case D6 irait s'archiver si on est le 20/03/2012 en feuille hiso stk en B2.
Est ce que quelqun pourrait m'aider SVP? je suis arrivé au bout de mes compétences excel
J'ai modifié ton fichier en page d'archive. pas top d'ecrire à l'avance les date. tu clic le bouton et sa va archiver. y'a une sécurité pour pas archiver plusieur fois par jours
je vous remercie bcp, mais je ne comprends pas le fonctionnement de l'archivage.
Et j'aimerai étendre la chose, c'est à dire que la colonne B4 de la feuille3 s'archive en colonne F etc...
comment puis je developper ensuite mon tableau svp...
Alors l'archivage est fait par une macro (Alt + F11 pour accèder au code)
Le principe de fonctionnement est que le code vérifie si un archivage n'as pas déja été effectuer a la date du jours (pour éviter les doublons), ensuite, j'incrémente automatiquement ton tableau avec les valeurs souhaitées. Pour complémentée ton tableau, je vais t'expliquer comment modifier la macro (elle est très très très très simple).
Donc Alt F11 pour accèder au code et tu copie les lignes suivante et les modifies (Cette macro n'est pas optimisée toussa toussa mais pour l'application qu'on fait la, il n'y a vraiment pas besoin de se les briser plus que sa).
Alors dans "ThisWorkbook" (dans l'arboréscence à gauche)
Tu va trouver le code suivant:
Code:
Sub Archive()
dateAuj = Sheets("Feuil3").Range("A1").Value
If Sheets("HISTO STK").Range("A:A").Find(what:=dateAuj) Is Nothing Then
Fin = Sheets("HISTO STK").Range("A" & 65535).End(xlUp).Row + 1
Sheets("HISTO STK").Range("A" & Fin).Value = Sheets("Feuil3").Range("A1").Value
Sheets("HISTO STK").Range("B" & Fin).Value = Sheets("Feuil3").Range("D6").Value
Else
MsgBox ("Vous avez deja archivé aujourd'hui")
End If
End Sub
Dans ce code, c'est les lignes suivante qui archive les infos:
Se qui donne au finale le code suivant (j'ai add quelque commentaire ste fois)
Code:
Sub Archive()
'Récup la date du jour
dateAuj = Sheets("Feuil3").Range("A1").Value
'Test si la on à deja archivé une fois
If Sheets("HISTO STK").Range("A:A").Find(what:=dateAuj) Is Nothing Then
'Trouve la fin du tableau d'archive (num de ligne)
Fin = Sheets("HISTO STK").Range("A" & 65535).End(xlUp).Row + 1
'Copie les informations souhaitée
Sheets("HISTO STK").Range("A" & Fin).Value = Sheets("Feuil3").Range("A1").Value
Sheets("HISTO STK").Range("B" & Fin).Value = Sheets("Feuil3").Range("D6").Value
Sheets("HISTO STK").Range("F" & Fin).Value = Sheets("Feuil3").Range("B4").Value
Else
'Si on a deja archivé une fois, un message d'erreur apparait
MsgBox ("Vous avez deja archivé aujourd'hui")
End If
End Sub
Voila, j'éspere avoir été assez précis pour t'aider =)
bonjour,
tout d'abord merci de votre réponse mais un problème demeure. Lorsque la date change la macro ne va pas automatiquement à la ligne suivante(qui correspond au jour d'après) pouvez vous eclairer ce point SVP?
Ce site utilise des cookies pour personnaliser le contenu, adapter votre expérience et vous garder connecté si vous vous enregistrez.
En continuant à utiliser ce site, vous consentez à notre utilisation de cookies.