NumberFormat décimaux
F
Bonjour le forum,
J'utilise ce code pour mettre mes cellules sous format nombre, cela marche mais pas pour les décimaux (ex: 1200.23) j'ai un message d'erreur apostrophe, texte
With Ws.Range("D7:eq59")
.NumberFormat = "0"
.Value = .Value
End WithMerci pour vos idées
Bonjour, a tester,à adapter,à faire évoluer...
Sub test()
Dim c As Range
Set plage = Feuil1.Range("D7:eq59")
For Each c In plage
If InStr(1, c, ".") Then c = CDbl(Replace(c, ".", ","))
'c.NumberFormat = "0.00"
Next
End SubF
Bonjour Force rouge, j'ai essayé ton code mais ca ne marche pas.
Voici mon code, et j'ai essayé du style
With Ws.Range("D7:eq59")
.NumberFormat = "0.00"
.Value = .Value
End WithOption Explicit
Dim Ws As Worksheet
Private Sub CommandButton6_Click() ' bouton précédent ( année )
On Error Resume Next
Me.MultiPage1.Value = Me.MultiPage1.Value - 1
End Sub
Private Sub CommandButton7_Click() ' bouton suivant ( année )
On Error Resume Next ' arret lorsque la procédure rencontre une erreur
Me.MultiPage1.Value = Me.MultiPage1.Value + 1
End Sub
Private Sub UserForm_Initialize()
Dim J As Long
Dim I As Integer
ComboBox2.ColumnCount = 1 'Pour la liste sortie
ComboBox2.List() = Array("OUI", "NON", "") 'liste déroulante
'(obligation de choix dans propriétés du bouton , style 2
Set Ws = Sheets("Détail individuel") 'Correspond au nom de votre onglet dans le fichier Excel
With Me.ComboBox1
For J = 2 To Ws.Range("A" & Rows.Count).End(xlUp).Row
.AddItem Ws.Range("A" & J)
Next J
End With
For I = 1 To 145 '108 corresponds au nb de textbox si ajout une textbox 108+1=109
Me.Controls("TextBox" & I).Visible = True 'pour voir les valeur dans la textbox
Next I
End Sub
'bouton clear permet de vider le contenu des textbox, necessaire pour ajouter un nouveau contact
Private Sub CommandButton5_Click()
If MsgBox("Attention cette action va éffacer tout le contenu des texboxs, voulez vous continuez ? Cette action est nécessaire avant l'ajout d'un actionnaire", vbYesNo) = vbYes Then
Dim ctrl As Control
For Each ctrl In Me.Controls
If TypeName(ctrl) = "TextBox" Then ctrl.Text = ""
Next ctrl
End If
End Sub
' liste déroulante nom prenom
Private Sub ComboBox1_Change()
Dim Ligne As Long
Dim I As Integer
If Me.ComboBox1.ListIndex = -1 Then Exit Sub
Ligne = Me.ComboBox1.ListIndex + 2
On Error Resume Next ' pour le probleme de "sortie" dans la combobox 2
ComboBox2 = Ws.Cells(Ligne, "B") 'B est la colonne sur le tableau excel
For I = 1 To 145 'boucle répeté 145
Me.Controls("TextBox" & I) = Ws.Cells(Ligne, I + 2) ' 2 corresponds au nb de combobox
Next I
End Sub
'calcul cumul 2015 /2016
Sub TextBox127_Change()
Calculcumul2016
End Sub
Sub TextBox128_Change()
Calculcumul2016
End Sub
Sub TextBox129_Change()
Calculcumul2016
End Sub
Sub TextBox130_Change()
Calculcumul2016
End Sub
Sub TextBox131_Change()
Calculcumul2016
End Sub
Sub Calculcumul2016() ' calcul du cumul 2016 en addittionnant les textboxs
Me.TextBox136.Value = Val(Replace(Me.TextBox127, ",", ".")) + Val(Replace(Me.TextBox128, ",", ".")) + Val(Replace(Me.TextBox129, ",", ".")) + Val(Replace(Me.TextBox130, ",", ".")) + Val(Replace(Me.TextBox131, ",", "."))
End Sub
'calcul cumul 2015 /2016
Sub TextBox136_Change()
Calculcumul2017
End Sub
Sub TextBox137_Change()
Calculcumul2017
End Sub
Sub TextBox138_Change()
Calculcumul2017
End Sub
Sub TextBox139_Change()
Calculcumul2017
End Sub
Sub TextBox140_Change()
Calculcumul2017
End Sub
Sub Calculcumul2017() ' calcul du cumul 2016 en addittionnant les textboxs
Me.TextBox145.Value = Val(Replace(Me.TextBox136, ",", ".")) + Val(Replace(Me.TextBox137, ",", ".")) + Val(Replace(Me.TextBox138, ",", ".")) + Val(Replace(Me.TextBox139, ",", ".")) + Val(Replace(Me.TextBox140, ",", "."))
End Sub
'Pour le bouton Modifier
Private Sub CommandButton4_Click()
Dim Ligne As Long
Dim I As Integer
If MsgBox("Confirmez-vous la modification de ce contact ?", vbYesNo) = vbYes Then
If Me.ComboBox1.ListIndex = -1 Then Exit Sub
Ligne = Me.ComboBox1.ListIndex + 2
Ws.Cells(Ligne, "B") = ComboBox2
For I = 1 To 145
If Me.Controls("TextBox" & I).Visible = True Then 'prends la valeur de la textbox et integre dans excel (true = non vide )
Ws.Cells(Ligne, I + 2) = Me.Controls("TextBox" & I)
End If
Next I
End If
'Code permettant de modifier le format de la plage de cellule en format nombre
With Ws.Range("D7:eq59")
.NumberFormat = "0"
.Value = .Value
End With
End Sub
Private Sub CommandButton3_Click()
MsgBox ("Avant de vouloir ajouter un actionnaire, vérrifiez bien que vous avez appuyer sur le bouton clear")
'Pour le bouton Nouveau associé
Dim Ligne As Long
Dim I As Integer
If MsgBox("Confirmez-vous l'insertion de ce nouveau associé ?", vbYesNo) = vbYes Then
Ligne = Sheets("Détail individuel").Range("a4").End(xlDown).Row + 1 'Pour placer le nouvel enregistrement
'à la première ligne de tableau non vide, recherche par le haut
Range("A" & Ligne).Value = ComboBox1
Range("B" & Ligne).Value = ComboBox2
For I = 1 To 145
If Me.Controls("TextBox" & I).Visible = True Then
Ws.Cells(Ligne, I + 2) = Me.Controls("TextBox" & I)
End If
Next I
End If
'Code permettant de modifier le format de la plage de cellule en format nombre
With Ws.Range("D7:eq59") 'D7:df59 plage de cellule
.NumberFormat = "0"
.Value = .Value
End With
End Sub
'Pour le bouton Quitter
Private Sub CommandButton1_Click()
Unload Me 'quitte l'interface
End SubBonjour Force rouge, j'ai essayé ton code mais ca ne marche pas
Désolé, je ne suis pas assez compétent pour vous aider à résoudre l'erreur " ca ne marche pas"
Bonne fin de journée