J'essais de formater des cellules sous conditions et ça plante sans que j'arrive à trouver pourquoi
Voilà le code pour une condition, et j'ai l'erreur "impossible de définir la propriété NumberFormat de la classe Range"
Code:
If ListBox35.Text = "M²" Then
Cells(L, C).NumberFormat = "General ""M²"""
End If
Voilà le code complet, j'arrive bien à inscrire la valeur du textbox85 dans la cellule, mais pas à la formater avec VBa
Code:
Private Sub CommandButton10_Click()
With Sheets("Programme des travaux")
Dim L As Long, C As Long
C = 4
L = Range("A36").End(xlUp).Row
Cells(L, C).Value = TextBox85.Value
Unload UserForm1
If ListBox35.Text = "M²" Then
Cells(L, C).NumberFormat = "General ""M²"""
End If
End With
End Sub
Est il possible par exemple de faire : Forma = ListBox35.Text et ensuite "format de la cellule = Forma" ?, cela m'éviterait pas mal de si imbriqués
J'essais de formater des cellules sous conditions et ça plante sans que j'arrive à trouver pourquoi
Voilà le code pour une condition, et j'ai l'erreur "impossible de définir la propriété NumberFormat de la classe Range"
Code:
If ListBox35.Text = "M²" Then
Cells(L, C).NumberFormat = "General ""M²"""
End If
Voilà le code complet, j'arrive bien à inscrire la valeur du textbox85 dans la cellule, mais pas à la formater avec VBa
Code:
Private Sub CommandButton10_Click()
With Sheets("Programme des travaux")
Dim L As Long, C As Long
C = 4
L = Range("A36").End(xlUp).Row
Cells(L, C).Value = TextBox85.Value
Unload UserForm1
If ListBox35.Text = "M²" Then
Cells(L, C).NumberFormat = "General ""M²"""
End If
End With
End Sub
Est il possible par exemple de faire : Forma = ListBox35.Text et ensuite "format de la cellule = Forma" ?, cela m'éviterait pas mal de si imbriqués
tel que définit ci-dessus l'instruction cells(....) est non qualifiée puisqu'à l'interieur d'une structure With
il faut écrire :
.Cells(L, C) xx bla-bla xxxxxxxx' noter le "." au début.
ensuite
l'utilisation de l'enregistreur aurait donné la syntaxe correcte pour le format :
xxxxxx.NumberFormat = "General"" m²"""
noter l'espace avant m², et aucun espace aprés General(sinon division par 10^3)
Un p'ti fichier serait le bienvenu. Sinon un point au premier abord:
1) On utilise With Sheets("Programme des travaux") mais nulle part dans le code on ne préfixe un range pour référencer un range de cette feuille (du type .Cells(L, C).Value = TextBox85.Value ou bien .Cells(L, C).NumberFormat = "General ""M²""")
Merci pour ces infos
j'ai réutilisé l'enregistreur automatique et modifier légèrement le code et maintenant cela fonctionne
Code:
With Sheets("Programme des travaux")
Dim L As Long, C As Long
C = 4
L = Range("A36").End(xlUp).Row
Cells(L, C).Value = TextBox85.Value
Unload UserForm1
With Cells(L, C)
ActiveSheet.Unprotect
If ListBox35 = "M²" Then
.NumberFormat = "#,##0.0 ""M²"""
End If
If ListBox35 = "M³" Then
.NumberFormat = "#,##0.0 ""M³"""
End If
If ListBox35 = "Forfait" Then
.NumberFormat = "#,##0.0 ""F"""
End If
If ListBox35 = "ML" Then
.NumberFormat = "#,##0.0 ""ML"""
End If
If ListBox35 = "Unitée" Then
.NumberFormat = "#,##0.0 ""Unt."""
End If
If ListBox35 = "Tonne" Then
.NumberFormat = "#,##0.0 ""T"""
End If
If ListBox35 = "Kg" Then
.NumberFormat = "#,##0.0 ""Kg"""
End If
If ListBox35 = "Litre" Then
.NumberFormat = "#,##0.0 ""L"""
End If
End With
End With
Il y avait la protection de la feuille qui metter un peu le bazard mais le fait de changer le format a tout débloquer
Encore merci pour votre aide
UserForm5, Bouton renseigner le planning
Voilà le fichier