Macro en boucle format textbox /xls 2003
Fermé
abdouriabi
Messages postés
16
Date d'inscription
mardi 5 août 2008
Statut
Membre
Dernière intervention
17 mars 2011
-
17 févr. 2011 à 12:45
abdouriabi Messages postés 16 Date d'inscription mardi 5 août 2008 Statut Membre Dernière intervention 17 mars 2011 - 20 févr. 2011 à 16:55
abdouriabi Messages postés 16 Date d'inscription mardi 5 août 2008 Statut Membre Dernière intervention 17 mars 2011 - 20 févr. 2011 à 16:55
A voir également:
- Macro en boucle format textbox /xls 2003
- Format epub - Guide
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Telecharger format factory - Télécharger - Conversion & Codecs
- Format apfs - Guide
- Macro word - Guide
5 réponses
bonjour,
La question aurait sans doute eu des réponses plus rapide dans le forum programmation!
Bonne journée
La question aurait sans doute eu des réponses plus rapide dans le forum programmation!
Dim MyControl As Control For Each MyControl In Controls If Left(MyControl.Name, 7) = "TextBox" Then MyControl.Value = Format(MyControl.Value, "0.00%") End If Next
Bonne journée
abdouriabi
Messages postés
16
Date d'inscription
mardi 5 août 2008
Statut
Membre
Dernière intervention
17 mars 2011
18 févr. 2011 à 22:37
18 févr. 2011 à 22:37
Bonjour PAF,
vous avez raison concernant le forum, j'ai pas fais attention ;;;;;j'ai essayé de le déplacé dans le forum concerné mais je vois pas comment.
Merci pour votre réponse et de votre aide , mais malheureusement ca fonctionne pas ou plutot j'ai mal programmé.....si vous pouvez m'aider SVP
j'ai mis au début:
private sub textbox_change ()
Dim MyControl As Control
For Each MyControl In Controls
If Left(MyControl.Name, 7) = "TextBox" Then
MyControl.Value = Format(MyControl.Value, "0.00%")
End If
Next
end sub
bonne journée
a vous lire
vous avez raison concernant le forum, j'ai pas fais attention ;;;;;j'ai essayé de le déplacé dans le forum concerné mais je vois pas comment.
Merci pour votre réponse et de votre aide , mais malheureusement ca fonctionne pas ou plutot j'ai mal programmé.....si vous pouvez m'aider SVP
j'ai mis au début:
private sub textbox_change ()
Dim MyControl As Control
For Each MyControl In Controls
If Left(MyControl.Name, 7) = "TextBox" Then
MyControl.Value = Format(MyControl.Value, "0.00%")
End If
Next
end sub
bonne journée
a vous lire
bonsoir,
y a t-il un message d'erreur ?
Qu'est censé faire ce code ? et qu'est ce qu'il fait?
la boucle for each, dans l'évênement change, n'est peut-être pas judicieusement placée.
A +
y a t-il un message d'erreur ?
Qu'est censé faire ce code ? et qu'est ce qu'il fait?
la boucle for each, dans l'évênement change, n'est peut-être pas judicieusement placée.
A +
abdouriabi
Messages postés
16
Date d'inscription
mardi 5 août 2008
Statut
Membre
Dernière intervention
17 mars 2011
19 févr. 2011 à 14:17
19 févr. 2011 à 14:17
Bonjour,
Non j'ai pas de message d'erreur.
le code devrait mettre les valeurs des textbox en pourcentage avec 2 chiffres apres le virgule.
quand je fais
private sub textbox1_change ()
TextBox1.Value = Format(TextBox1.Value, "0.00%")
end sub
private sub textbox2_change ()
TextBox2.Value = Format(TextBox2.Value, "0.00%")
end sub
et ainsi de suite (jusqu'a 50 textbox) ca fonctionne tres bien.
pour votre code j'ai rajouté seulement et il ne fonctionne pas :
private sub textbox_change ()
..........votre code
end sub
sachant que les textbox je ne les remplis pas, ils sont récuperer d'une feuille excel.
ci dessous le code de récupération des valeurs des textbox :
Private Sub DTPicker1_Change()
Dim LastLig As Long, Lig As Long
Dim c As Range
Dim i As Integer
Dim Dte As Date
Dte = Me.DTPicker1.Value
For i = 2 To 75
Me.Controls("TextBox" & i - 1).Value = ""
Next i
With Sheets("GPEE") 'à adapter
LastLig = .Cells(.Rows.Count, "A").End(xlUp).Row
If LastLig >= 6 Then
Set c = .Range("A6:A" & LastLig).Find(Dte, LookIn:=xlValues, lookat:=xlWhole)
If Not c Is Nothing Then
Lig = c.Row
Set c = Nothing
For i = 2 To 75
Me.Controls("TextBox" & i - 1).Value = .Cells(Lig, i)
Next i
End If
Else
MsgBox "Données manquantes"
End If
End With
End Sub
merci et bonne journée
Non j'ai pas de message d'erreur.
le code devrait mettre les valeurs des textbox en pourcentage avec 2 chiffres apres le virgule.
quand je fais
private sub textbox1_change ()
TextBox1.Value = Format(TextBox1.Value, "0.00%")
end sub
private sub textbox2_change ()
TextBox2.Value = Format(TextBox2.Value, "0.00%")
end sub
et ainsi de suite (jusqu'a 50 textbox) ca fonctionne tres bien.
pour votre code j'ai rajouté seulement et il ne fonctionne pas :
private sub textbox_change ()
..........votre code
end sub
sachant que les textbox je ne les remplis pas, ils sont récuperer d'une feuille excel.
ci dessous le code de récupération des valeurs des textbox :
Private Sub DTPicker1_Change()
Dim LastLig As Long, Lig As Long
Dim c As Range
Dim i As Integer
Dim Dte As Date
Dte = Me.DTPicker1.Value
For i = 2 To 75
Me.Controls("TextBox" & i - 1).Value = ""
Next i
With Sheets("GPEE") 'à adapter
LastLig = .Cells(.Rows.Count, "A").End(xlUp).Row
If LastLig >= 6 Then
Set c = .Range("A6:A" & LastLig).Find(Dte, LookIn:=xlValues, lookat:=xlWhole)
If Not c Is Nothing Then
Lig = c.Row
Set c = Nothing
For i = 2 To 75
Me.Controls("TextBox" & i - 1).Value = .Cells(Lig, i)
Next i
End If
Else
MsgBox "Données manquantes"
End If
End With
End Sub
merci et bonne journée
Que j'essaye votre méthode ou la mienne, j'obtiens le même résultat!
A savoir si la cellule destinée à alimenter la textbox contient 12, la textbox formatée affiche 1200.00%
par ailleurs dans Sub DTPicker1_Change(), les textbox étant initialisées , par la boucle:
le format pourrait être apporté en même temps (cela évite les manipulations ultérieurs) :
mais, j'ai le même résultat que précédemment !
Désolé je ne saisit pas le Problème.
A savoir si la cellule destinée à alimenter la textbox contient 12, la textbox formatée affiche 1200.00%
par ailleurs dans Sub DTPicker1_Change(), les textbox étant initialisées , par la boucle:
For i = 2 To 75 Me.Controls("TextBox" & i - 1).Value = .Cells(Lig, i) Next i
le format pourrait être apporté en même temps (cela évite les manipulations ultérieurs) :
For i = 2 To 75 Me.Controls("TextBox" & i - 1).Value = Format(.Cells(Lig, i),"0.00%") Next i
mais, j'ai le même résultat que précédemment !
Désolé je ne saisit pas le Problème.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
abdouriabi
Messages postés
16
Date d'inscription
mardi 5 août 2008
Statut
Membre
Dernière intervention
17 mars 2011
20 févr. 2011 à 16:55
20 févr. 2011 à 16:55
Bonjour PAF,
Pour le moment je vais fais une par une , ce n'est pas grave, en tout cas merci beaucoup de votre votre aide.
Bon Dimanche
Pour le moment je vais fais une par une , ce n'est pas grave, en tout cas merci beaucoup de votre votre aide.
Bon Dimanche