Problème avec mon userform

roidusurf - 25 déc. 2012 à 19:01
 roidusurf - 29 déc. 2012 à 19:09
Bonjour,
Alors voilà je tient des statistiques d'un site alors j'aimerais que certaines manips s'automatisent.
J'ai créer un userform ou je demande la date, le nombre de visite pour le site, le nombre de visite pour le forum et un commentaire si y'a besoin de préciser quelque chose.
Tout va bien jusque là je demande à ce que les données soit mises dans une cellule à chaque fois avec incrémentation, pour que sa passe à la ligne suivante à la prochaine saisie.
Mais seulement le petit soucis c'est que mes nombre de visites sont rentrées sauf qu'ils sont au format texte et je n'arrive mal grès mes nombreuses recherches à passer automatiquement la cellule au format pour qu'elle reconnaisse le nombre.

Je voulais au départ aussi que la date se mette toutes seul mais j'ai pas réussi alors c'est pour sa que j'ai rajouté le textbox pour la date. Mais au départ je voulais qu'a chaque saisie la date s'incrémente d'un jour.
Voilà mon code:
Private Sub nombre1_Change()

End Sub

Private Sub UserForm_Initialize()

End Sub
Private Sub CommandButton1_Click()

End Sub

Private Sub UserForm_Click()

End Sub

Private Sub Valider_Click()
With Worksheets(3)
derlign = .Range("a65536").End(xlUp).Row + 1
          .Cells(derlign, 1).Value = date1
          .Cells(derlign, 2).Value = nombresite
          .Cells(derlign, 3).Value = nombreforum
          .Cells(derlign, 4).Value = commentaires
Application.GoTo Reference:=Worksheets("tableaugraphique").Range("A1"), Scroll:=True
Unload Me
End With
End Sub


Je vous remercie
cordialement

8 réponses

Utilisateur anonyme
25 déc. 2012 à 19:29
Bonjour,

Normalement, c'est une question par message, mais comme c'est Noël...


Mais seulement le petit soucis c'est que mes nombre de visites sont rentrées sauf qu'ils sont au format texte et je n'arrive mal grès mes nombreuses recherches à passer automatiquement la cellule au format pour qu'elle reconnaisse le nombre.


Avec quelque chose comme cela:

textbox1.value = textbox1.value * 1


ou

textbox1.value = Cint(textbox1.value)



Mais au départ je voulais qu'a chaque saisie la date s'incrémente d'un jour.


Habituellement ceci donne la date du jour:

ladate = Date


La date du jour avec l'heure:

ladate = now


PS. Je ne me souviens plus s'il faut mettre les parenthèses après Date et Now et j'ai la flemme pour chercher.
0
Tout d'abord merci pour votre réponse rapide

Je m’excuse d'avoir posé deux questions :/. C'est que je voulais pas faire du multi-post. Etant assez débutant en basic j'avoue ne pas savoir ou mettre les lignes que tu m'as fournis

Cordialement
Merci encore
0
Utilisateur anonyme
26 déc. 2012 à 12:34
Bonjour,

Je ne sais pas si j'ai tout compris...
Est-cela que tu veux faire?
Dim Dat As Date

Private Sub UserForm_Initialize()
Dat = Date
TextBox1.Text = Dat
End Sub

Private Sub Valider_Click()
Dat = Dat + 1
TextBox1.Text = Dat

With Worksheets(3)
derlign = .Range("a65536").End(xlUp).Row + 1
          .Cells(derlign, 1).Value = date1
          .Cells(derlign, 2).Value = nombresite
          .Cells(derlign, 3).Value = nombreforum
          .Cells(derlign, 4).Value = commentaires
Application.GoTo Reference:=Worksheets("tableaugraphique").Range("A1"), Scroll:=True
Unload Me
End With
End Sub


Et comme dit Cmarcotte (qui je salue au passage) la date avec l'heure: Dat = now
D'ailleurs j'ai pas compris le
textbox1.value = textbox1.value * 1

Il fait froid chez toi cmarcotte?

Cordialement


CF2i - Guadeloupe
Ingénierie Informatique
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
26 déc. 2012 à 13:26
Bonjour, acive,
Il fait froid chez toi cmarcotte?

sûrement, mais le froid ragaillardit. Et là, cmarcotte, joue avec VB comme on pêche les petits poissons blancs des canaux à cette époque : en profitant de leurs "largesses". Et il a bien raison d'en profiter.

________________________
Réponse exacte ? => "REPONSE ACCEPTEE" facilitera les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement répéter son contenu. Je n'interviendrai que si nécessité de la compléter.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Utilisateur anonyme
26 déc. 2012 à 13:48
Bonjour Ucfoutu,
on pêche les petits poissons blancs des canaux à cette époque

Au Canada il faut découper la couche de glace à la scie avant...

Concernant notre demandeur c'est peut-être ça qu'il veux faire:
Dim Dat As Date

Private Sub UserForm_Initialize()
Dat = Date
End Sub

Private Sub Valider_Click()
Dat = Dat + 1

With Worksheets(3)
derlign = .Range("a65536").End(xlUp).Row + 1
          .Cells(derlign, 1).Value = date1
          .Cells(derlign, 2).Value = nombresite
          .Cells(derlign, 3).Value = nombreforum
          .Cells(derlign, 4).Value = commentaires
          .Cells(derlign, 5).Value = Dat
Application.GoTo Reference:=Worksheets("tableaugraphique").Range("A1"), Scroll:=True
Unload Me
End With
End Sub


Cordialement


CF2i - Guadeloupe
Ingénierie Informatique
0
Bonjour,
Excusez pour la réponse tardive. Alors ben pour ce qui est de la date c'est pas grave c'est pas le plus important, ce que je voudrais c'est que le petit point d'exclamation qui apparaît quand je rentre un chiffre via le formulaire disparaisse parce que la pour le faire disparaitre faut que je clique sur le petit point d'exclamation et que je clique sur convertir en nombre, et c'est assez "chiant" (excusez le terme). Donc ce que j'aurais voulu savoir si y'a pas un moyen pour que la cellule soit convertit automatiquement en nombre.
Petit screenshot:
http://hpics.li/9c9d6ed

En vous remerciant
Cordialement
Roidusurf
0
cs_MPi Messages postés 3877 Date d'inscription mardi 19 mars 2002 Statut Membre Dernière intervention 17 août 2018 23
27 déc. 2012 à 15:49
cmarcotte t'a donné la solution
Tu multiplies ta valeur par 1
et le texte deviendra un nombre comme par magie

Sinon, tu dois "caster" la velur dans ton textbox avec CLng, CDbl, CSng,... selon le genre de nombre qui est entré.
Range("A1") = CLng(textbox1) te mettra la valeur entière Long de ton chiffre


MPi²
Pour ceux qui programment sous Office, n'oubliez pas qu'il existe un forum dédié à ces applications VBA....... ICI
0
Bonsoir,
D’accord j'avais pas compris. Je vous remercie de vos réponses. Sa fonctionne désormais :).

Cordialement
0
Rejoignez-nous