Format cellule [Résolu]

Landoltp 68 Messages postés mercredi 1 août 2007Date d'inscription 14 mars 2008 Dernière intervention - 3 sept. 2007 à 17:55 - Dernière réponse : Landoltp 68 Messages postés mercredi 1 août 2007Date d'inscription 14 mars 2008 Dernière intervention
- 4 sept. 2007 à 17:40
Bonjour,

j'ai fait un code vba sur excel qui me rentre une nouvelle ligne à chaque fois que j'exécute le programme. mon problème c'est que les cellules ne prennent pas automatiquement le format souhaité, à savoir:
- nombre pour: montantpret, taux et nbreecheances
- date pour: datedeblocage

voici le code que j'ai fait:

Private Sub CmdOK_Click()

Dim Montantpret As Double
Dim Datedeblocage As Date
Dim Taux As Integer
Dim Remboursement As String
Dim Nbreecheances As Integer

Sheets("SGBBE").Select
ActiveSheet.[AA].Select
Selection.End(xlDown).Select
If Selection.Address = "$A$65536" Then
Range("AA").Offset(1, 0).Select
Else
Selection.Offset(1, 0).Select
End If
ActiveCell.Value = UserForm1.Montantpret
ActiveCell.Offset(0, 1).Value = UserForm1.Datedeblocage
ActiveCell.Offset(0, 2).Value = UserForm1.Taux
ActiveCell.Offset(0, 3).Value = UserForm1.Remboursement
ActiveCell.Offset(0, 4).Value = UserForm1.Nbreecheances
Unload Me

End Sub

je sais pas ce qu'il faut que je fasse, donc merci d'avance si quelqu'un pouvait m'aider... et c'est possible qu'il y ait automatiquement le signe % qui s'affiche après la valeur du taux?
Afficher la suite 

Votre réponse

8 réponses

Meilleure réponse
tubafat 79 Messages postés lundi 17 juillet 2006Date d'inscription 25 septembre 2007 Dernière intervention - 4 sept. 2007 à 17:32
3
Merci
ActiveCell.Value = UserForm1.Montantpret.value
ActiveCell.NumberFormat = "#,##0"
ActiveCell.Offset(0, 1).Value = UserForm1.Datedeblocage.value
ActiveCell.Offset(0, 1).NumberFormat = "dd.mm.yyyy"
ActiveCell.Offset(0, 2).Value = UserForm1.Taux.value
ActiveCell.Offset(0, 2).NumberFormat = "0.00%"
ActiveCell.Offset(0, 3).Value = UserForm1.Remboursement.value
ActiveCell.Offset(0, 4).Value = UserForm1.Nbreecheances.value
ActiveCell.Offset(0, 4).NumberFormat = "#,##0"

J'ai testé ça marche pour moi...

Tubafat
P

Merci tubafat 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 96 internautes ce mois-ci

Commenter la réponse de tubafat
JM247L 444 Messages postés mardi 27 mars 2007Date d'inscription 1 mars 2011 Dernière intervention - 3 sept. 2007 à 17:58
0
Merci
Quand tu ajoutes une nouvelle ligne pourquoi ne pas faire un copier collage spéciale format de la ligne précédente

JML
 Partageons notre savoir et nos acquis
Commenter la réponse de JM247L
cs_etniqs 201 Messages postés mardi 7 octobre 2003Date d'inscription 10 mai 2016 Dernière intervention - 3 sept. 2007 à 18:25
0
Merci
??
je ne vois pas où tu ajoutes une ligne dans ce code
???
Commenter la réponse de cs_etniqs
tubafat 79 Messages postés lundi 17 juillet 2006Date d'inscription 25 septembre 2007 Dernière intervention - 4 sept. 2007 à 08:40
0
Merci
Bonjour,
si tu veux qu'il prenne automatiquement le format souhaité faudrait peut-être déjà lui dire le format souhaité...

Par exemple:
    ActiveCell.Value = UserForm1.Montantpret
    ActiveCell.NumberFormat = "0.00"
    ActiveCell.Offset(0, 1).Value = UserForm1.Datedeblocage
    ActiveCell.Offset(0, 1).NumberFormat = "m/d/yyyy"
...

De plus, fais attention où tu postes tes messages, il y a une section dédiée uniquement au VBA, penses-y la prochaine fois.

Tubafat
Commenter la réponse de tubafat
Landoltp 68 Messages postés mercredi 1 août 2007Date d'inscription 14 mars 2008 Dernière intervention - 4 sept. 2007 à 10:13
0
Merci
ok merci bcp, ça joue pour le format de la date mais ai encore un problème pour celui des nombre...
Commenter la réponse de Landoltp
tubafat 79 Messages postés lundi 17 juillet 2006Date d'inscription 25 septembre 2007 Dernière intervention - 4 sept. 2007 à 10:35
0
Merci
Peux-tu préciser ton problème pour les nombres?
C'est le format qui ne convient pas, ou ça ne fonctionne pas?

Tubafat
Commenter la réponse de tubafat
Landoltp 68 Messages postés mercredi 1 août 2007Date d'inscription 14 mars 2008 Dernière intervention - 4 sept. 2007 à 17:11
0
Merci
j'ai fait ça:

ActiveCell.Value = UserForm1.Montantpret
ActiveCell.NumberFormat = "#,##0"
ActiveCell.Offset(0, 1).Value = UserForm1.Datedeblocage
ActiveCell.Offset(0, 1).NumberFormat = "dd.mm.yyyy"
ActiveCell.Offset(0, 2).Value = UserForm1.Taux
ActiveCell.Offset(0, 2).NumberFormat = "0.00%"
ActiveCell.Offset(0, 3).Value = UserForm1.Remboursement
ActiveCell.Offset(0, 4).Value = UserForm1.Nbreecheances
ActiveCell.Offset(0, 4).NumberFormat = "#,##0"

celle pour la date c'est bon, le problème est que pour les 3 autres ça me met toujours la note "nombre stocké sous forme de texte" sous excel... j'arrive pas à trouver le problème.
merci de ton aide
Commenter la réponse de Landoltp
Landoltp 68 Messages postés mercredi 1 août 2007Date d'inscription 14 mars 2008 Dernière intervention - 4 sept. 2007 à 17:40
0
Merci
ça marche, merci beaucoup
Commenter la réponse de Landoltp

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.