ajouter une copie de feuille avec un bouton et la nommer de la date saisie

dogoethals

XLDnaute Nouveau
Bonjour à tous,

J'ai beaucoup de difficultés avec VBA j'ai cherché des exemples pour les adapter à mon classeur Excel, mais rien ne fonctionne...

Voilà ce que je voudrais réaliser.
Je cherche à gérer des sinistres sur une flotte automobile, dans mon classeur il y a un onglet récapitulatif qui reprend une partie des informations saisies, un onglet matrice qui sera copié à vide pour créer un nouveau sinistre via un bouton "créer un nouveau sinistre".
Donc à chaque fois que je clique sur le bouton il faudrait me demander la date du sinistre, créer une nouvelle feuille copie vierge de la "matrice" et la nommer de la date saisie.
Puis un autre bouton "enregistrer" en fin de la feuille nouveau sinistre qui à ce moment créé une nouvelle ligne dans le récapitulatif avec les éléments repris dans la feuille du sinistre enregistré.

J'espère que vous allez comprendre mon besoin et que quelqu'un pourra m'aider.
Je joins le fichier pour exemple.

Merci d'avance.
 

Pièces jointes

  • Outil Sinistres.xlsm
    26.8 KB · Affichages: 150

VDAVID

XLDnaute Impliqué
Re : ajouter une copie de feuille avec un bouton et la nommer de la date saisie

Bonsoir Dogo,
Voici un exemple de code pour créer une feuille avec comme nom la date du jour.
Pour le bouton "enregistrer" il faudrait préciser quelle lignes tu voudrais prendre en compte dans ton récapitulatif.
En espérant t'avoir aider :)
 

Pièces jointes

  • Test dogo.xlsm
    44.9 KB · Affichages: 135
  • Test dogo.xlsm
    44.9 KB · Affichages: 142
  • Test dogo.xlsm
    44.9 KB · Affichages: 145

mth

XLDnaute Barbatruc
Re : ajouter une copie de feuille avec un bouton et la nommer de la date saisie

Bonsoir le fil :)

En repartant du travail de VDAVID :), j'ai juste ajouté un test d'existance de l'onglet et la suppression du bouton dans la feuille archivée:

VB:
Sub CopieFeuille()
Dim Ws As Worksheet, mydate As String
mydate = Format(Date, "dd\ - mm\ - yy")
 
On Error Resume Next
Set Ws = Sheets(mydate)
If Ws Is Nothing Then
Sheets("Matrice sinistre").Copy After:=Sheets(Sheets.Count)
Sheets(Sheets.Count).Name = mydate
With Sheets(mydate)
.Range("I1") = .Range("I1").Value
.Shapes("Bouton").Delete
End With
Else
MsgBox "Déjà créé"
Exit Sub
End If
End Sub

Bonne soirée/nuit,

mth
 

Pièces jointes

  • Test%20dogo(1).xlsm
    47.9 KB · Affichages: 128

dogoethals

XLDnaute Nouveau
Re : ajouter une copie de feuille avec un bouton et la nommer de la date saisie

Bonjour à tous les deux et merci encore pour votre aide précieuse.

Ce qu'il me faudrait en fait c'est de saisir moi-même la date avec un combo avec une seule question comme "Date du sinistre", car le sinistre peut être saisi ultérieurement à la date de survenance.
Si il y avait deux sinistres le même jour (ce qui peut arriver), le date serait afficher avec par exemple "sinistre du 18/08/2011" et "sinistre 2 du 18/08/2011" et ainsi de suite.
Par contre quand on enregistre, une fois la saisie terminée et après avoir contrôlé que les champs nécessaires au tableau du récapitulatif soient bien remplis; il faudrait les reporter sur le récapitulatif.
Les champs nécessaires et les correspondances sont repris dans l'onglet "Données".

Vous remerciant encore pour votre aide précieuse.

Bien amicalement.
 

dogoethals

XLDnaute Nouveau
Re : ajouter une copie de feuille avec un bouton et la nommer de la date saisie

Désolé j'avais oublié de remettre le fichier modifié.
 

Pièces jointes

  • Test dogo.xlsm
    49.5 KB · Affichages: 113
  • Test dogo.xlsm
    49.5 KB · Affichages: 116
  • Test dogo.xlsm
    49.5 KB · Affichages: 106

VDAVID

XLDnaute Impliqué
Re : ajouter une copie de feuille avec un bouton et la nommer de la date saisie

Bonjour Dogo,
Regarde le fichier en P.J pour voir s'il te convient.
Bonne journée
 

Pièces jointes

  • Test dogo.xlsm
    38.1 KB · Affichages: 105
  • Test dogo.xlsm
    38.1 KB · Affichages: 116
  • Test dogo.xlsm
    38.1 KB · Affichages: 115

dogoethals

XLDnaute Nouveau
Re : ajouter une copie de feuille avec un bouton et la nommer de la date saisie

Bonsoir,

Oui c'est bien sauf que si je rentre une autre date que celle du jour, il ne nomme pas l'onglet avec celle là, mais avec "Matrice sinistre 2"
D'autre part il n'y a pas de report des données saisies dans ce nouvel onglet sur le récapitulatif.

Dans tous les cas votre aide m'a déjà permis d'avancer.

Bien amicalement.
 

VDAVID

XLDnaute Impliqué
Re : ajouter une copie de feuille avec un bouton et la nommer de la date saisie

Re bonsoir,
Si tu renommes une feuille d'un autre nom, il faut faire attention que ce nom soit valide Exemple 12/07/2011 ne marche pas à cause des "/" !
J'ai tester chez moi ça marche très bien =)
J'ai pris les correspondances que tu m'as donné pour l'onglet récap
Bonne soirée
 

dogoethals

XLDnaute Nouveau
Re : ajouter une copie de feuille avec un bouton et la nommer de la date saisie

Ok je ne savais pas pour le format de la date.
Par contre il faudrait un bouton "enregistrer" sur la nouvelle feuille pour valider l’enregistrement et transférer dans le récap.
Bien amicalement
 

VDAVID

XLDnaute Impliqué
Re : ajouter une copie de feuille avec un bouton et la nommer de la date saisie

Bonjour Dogo,
En fait j'avais fait en sorte que ça le fasse automatiquement à chaque enregistrement de la feuille; avec les correspondances que tu avais marqués dans l'onglet "Données".
Dis moi quelles cellules de la matrice tu veux retrouver dans l'onglet récapitulatif; et si tu veux que la rentrée de données se fasse avant la copie de la feuille ou après avec effectivement un bouton enregistrer.
 

dogoethals

XLDnaute Nouveau
Re : ajouter une copie de feuille avec un bouton et la nommer de la date saisie

Bonjour,

En fait ce qu'il faudrait c'est :
1 - A partir de la matrice on créé une nouvelle feuille sinistre que l'on enregistre par une date au choix.
2 - sur cette nouvelle feuille on complète les infos puis un bouton pour enregistrer les saisies et ou modifier permet de reporter sur la feuille "Récapitulatif".
3 - Attention si on reviens sur cette feuille et que l'on effectue des modifications il faut modifier les champs correspondants et non créer un nouvel enregistrement.

Dans tout les cas saches que j'apprécie beaucoup ton aide et si je peux un jour te renvoyer l'ascenseur, ce sera avec beaucoup de plaisir.
Mon domaine d'intervention c'est le monde de l'assurance, j'aide les entreprises à optimiser leur poste assurance, mais je ne suis pas assureur et ne vends pas de contrat, par contre si tu as besoin d'un conseil un jour, que ce soit sur la souscription d'un contrat ou même un soucis de sinistre et si je peux te donner un coup de main, ce sera avec plaisir.

A te lire.
Bien amicalement.
Dominique.
 

VDAVID

XLDnaute Impliqué
Re : ajouter une copie de feuille avec un bouton et la nommer de la date saisie

Re bonjour Dogo,
J'ai rectifié le fichier :
- A partir de ta matrice, tu créer une nouvelle feuille ( Avec le bouton "Créer nouvelle feuille") que tu nomme soit par la date du jour ( Par défault ) soit par ce que tu veux en entrant le nom dans la fenêtre qui s'affiche ( Lorsque tu mets "Non" à la première ).
Il faut que ce nom soit valide sinon la feuille sera nommé automatiquement Matrice x
- Une fois créée tu rentre tes données dans la nouvelle feuille. Puis tu reclique sur le bouton "Créer feuille" de ta nouvelle feuille

Sous excel 2003, je ne parviens pas à renommer ce bouton, il se peut que sur ta version le bouton se renomme automatiquement.

Cela va enregistrer des formules dans ton onglet récapitulatif aux première lignes non vides qui vont renvoyés les valeurs présentes dans la feuille que tu as créé. Ainsi, tu peux modifier les valeurs dans ta nouvelle feuille; elles seront modifié automatiquement dans ton onglet récapitulatif !

Voilà j'espère que cette fois-ci c'est la bonne ! :D

PS : Ne t'inquiète pas, un forum s'est fait pour aider; si je réussi à t'aider ça me suffit :)
Bonne journée
 

Pièces jointes

  • Test dogo 0.xlsm
    54.4 KB · Affichages: 115
  • Test dogo 0.xlsm
    54.4 KB · Affichages: 125
  • Test dogo 0.xlsm
    54.4 KB · Affichages: 124

dogoethals

XLDnaute Nouveau
Re : ajouter une copie de feuille avec un bouton et la nommer de la date saisie

Bonjour VDAVID

J'ai testé ton fichier, il est super et tout fonctionne à merveille.
La seule chose, c'est que lorsqu'on enregistre un sinistre après l'avoir rempli, il crée une ligne sur le "Récapitulatif", normal, mais si l'on modifie et qu'on enregistre à nouveau sur la même feuille, il crée une nouvelle ligne, il faut donc la supprimer manuellement.
Y aurait il une solution pour qu'il ne crée pas une nouvelle ligne mais qu'il modifie bien l'ancienne?

D'autre part et afin que je comprenne mieux les codes des macros, peux-tu me les commenter dans les macros afin que je comprenne comment il faut faire et à quoi correspond telle ou telle macro.

Bien amicalement.

Dominique.
 

dogoethals

XLDnaute Nouveau
Re : ajouter une copie de feuille avec un bouton et la nommer de la date saisie

Re,

J'ai relevé une anomalie, en effet si on choisi la date du jour quand on créé un nouveau sinistre il est impossible d'en créer un deuxième, par contre si on choisi une autre date ou bien une autre dénomination alors ça fonctionne, le mieux serait peut être de laisser l'utilisateur saisir son nom d'onglet et de ne pas proposer la date du jour, car il est peut probable que l'utilisateur saisira le sinistre à la date du jour.

Bien amicalement.
 

Discussions similaires

Réponses
4
Affichages
77