J'avais développé le code suivant pour un classeur XL2000. Ce code me
permettait de changer la couleur et le style de la ligne sur laquelle se
trouve le curseur avec remise en l'état lorsque je changeais de ligne.
Or sous XL2003, ce code ne fonctionne plus :
Erreur d'exécution 1004
Impossible de définir la propriété Color de la classe Font
La même erreur est provoquée aussi par la propriété FontStyle.
J'ai effectué quelques tests. L'objet Target existe bien et j'accède à ses
propriétés. On dirait que je ne peux pas écrire sur ma feuille de calcul.
Est-ce que vous avez une idée de ce qu'il pourrait bien se passer ?
Merci de tout piste.
Amezqueta
Public WithEvents Etiquette As Worksheet
Public ErreurSaisie As Boolean
Private Sub Vegetation_SelectionChange(ByVal Target As Excel.Range)
Static lngRow As Long
Static strStyle As Variant
If lngRow = 0 Then lngRow = 3
If Rows(lngRow).Font.FontStyle = Null Then Rows(lngRow).Font.FontStyle =
"Gras"
With Rows(lngRow).Font
.Color = RGB(0, 0, 0)
.FontStyle = strStyle
End With
If ErreurSaisie = False Then
oldValue = Target.Value
lngRow = Target.Row
strStyle = Rows(lngRow).Font.FontStyle
End If
With Rows(lngRow).Font
.Color = RGB(255, 0, 0)
.FontStyle = "Gras"
End With
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Izmi
Bonjour Timzguida
Essaie ceci. Clic droit sur l'onglet de la feuille. clic sur visualiser le code. Copie le code ci-dessous et colle le (remarque que c'est ton code avec une seule ligne de changée)
Voici le code :
Public WithEvents Etiquette As Worksheet Public ErreurSaisie As Boolean Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Static lngRow As Long Static strStyle As Variant
If lngRow = 0 Then lngRow = 3 If Rows(lngRow).Font.FontStyle = Null Then Rows(lngRow).Font.FontStyle = "Gras" With Rows(lngRow).Font .Color = RGB(0, 0, 0) .FontStyle = strStyle End With
If ErreurSaisie = False Then oldValue = Target.Value lngRow = Target.Row strStyle = Rows(lngRow).Font.FontStyle End If
With Rows(lngRow).Font .Color = RGB(255, 0, 0) .FontStyle = "Gras" End With
ErreurSaisie = False
End Sub
Bonne continuation.
Izmi
J'avais développé le code suivant pour un classeur XL2000. Ce code me permettait de changer la couleur et le style de la ligne sur laquelle se trouve le curseur avec remise en l'état lorsque je changeais de ligne. Or sous XL2003, ce code ne fonctionne plus : Erreur d'exécution 1004 Impossible de définir la propriété Color de la classe Font
La même erreur est provoquée aussi par la propriété FontStyle.
J'ai effectué quelques tests. L'objet Target existe bien et j'accède à ses propriétés. On dirait que je ne peux pas écrire sur ma feuille de c alcul. Est-ce que vous avez une idée de ce qu'il pourrait bien se passer ? Merci de tout piste. Amezqueta
Public WithEvents Etiquette As Worksheet Public ErreurSaisie As Boolean Private Sub Vegetation_SelectionChange(ByVal Target As Excel.Range)
Static lngRow As Long Static strStyle As Variant
If lngRow = 0 Then lngRow = 3 If Rows(lngRow).Font.FontStyle = Null Then Rows(lngRow).Font.FontSt yle = "Gras" With Rows(lngRow).Font .Color = RGB(0, 0, 0) .FontStyle = strStyle End With
If ErreurSaisie = False Then oldValue = Target.Value lngRow = Target.Row strStyle = Rows(lngRow).Font.FontStyle End If
With Rows(lngRow).Font .Color = RGB(255, 0, 0) .FontStyle = "Gras" End With
ErreurSaisie = False
End Sub
Bonjour Timzguida
Essaie ceci. Clic droit sur l'onglet de la feuille. clic sur visualiser
le code. Copie le code ci-dessous et colle le (remarque que c'est ton
code avec une seule ligne de changée)
Voici le code :
Public WithEvents Etiquette As Worksheet
Public ErreurSaisie As Boolean
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Static lngRow As Long
Static strStyle As Variant
If lngRow = 0 Then lngRow = 3
If Rows(lngRow).Font.FontStyle = Null Then
Rows(lngRow).Font.FontStyle = "Gras"
With Rows(lngRow).Font
.Color = RGB(0, 0, 0)
.FontStyle = strStyle
End With
If ErreurSaisie = False Then
oldValue = Target.Value
lngRow = Target.Row
strStyle = Rows(lngRow).Font.FontStyle
End If
With Rows(lngRow).Font
.Color = RGB(255, 0, 0)
.FontStyle = "Gras"
End With
ErreurSaisie = False
End Sub
Bonne continuation.
Izmi
J'avais développé le code suivant pour un classeur XL2000. Ce code me
permettait de changer la couleur et le style de la ligne sur laquelle se
trouve le curseur avec remise en l'état lorsque je changeais de ligne.
Or sous XL2003, ce code ne fonctionne plus :
Erreur d'exécution 1004
Impossible de définir la propriété Color de la classe Font
La même erreur est provoquée aussi par la propriété FontStyle.
J'ai effectué quelques tests. L'objet Target existe bien et j'accède à ses
propriétés. On dirait que je ne peux pas écrire sur ma feuille de c alcul.
Est-ce que vous avez une idée de ce qu'il pourrait bien se passer ?
Merci de tout piste.
Amezqueta
Public WithEvents Etiquette As Worksheet
Public ErreurSaisie As Boolean
Private Sub Vegetation_SelectionChange(ByVal Target As Excel.Range)
Static lngRow As Long
Static strStyle As Variant
If lngRow = 0 Then lngRow = 3
If Rows(lngRow).Font.FontStyle = Null Then Rows(lngRow).Font.FontSt yle =
"Gras"
With Rows(lngRow).Font
.Color = RGB(0, 0, 0)
.FontStyle = strStyle
End With
If ErreurSaisie = False Then
oldValue = Target.Value
lngRow = Target.Row
strStyle = Rows(lngRow).Font.FontStyle
End If
With Rows(lngRow).Font
.Color = RGB(255, 0, 0)
.FontStyle = "Gras"
End With
Essaie ceci. Clic droit sur l'onglet de la feuille. clic sur visualiser le code. Copie le code ci-dessous et colle le (remarque que c'est ton code avec une seule ligne de changée)
Voici le code :
Public WithEvents Etiquette As Worksheet Public ErreurSaisie As Boolean Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Static lngRow As Long Static strStyle As Variant
If lngRow = 0 Then lngRow = 3 If Rows(lngRow).Font.FontStyle = Null Then Rows(lngRow).Font.FontStyle = "Gras" With Rows(lngRow).Font .Color = RGB(0, 0, 0) .FontStyle = strStyle End With
If ErreurSaisie = False Then oldValue = Target.Value lngRow = Target.Row strStyle = Rows(lngRow).Font.FontStyle End If
With Rows(lngRow).Font .Color = RGB(255, 0, 0) .FontStyle = "Gras" End With
ErreurSaisie = False
End Sub
Bonne continuation.
Izmi
J'avais développé le code suivant pour un classeur XL2000. Ce code me permettait de changer la couleur et le style de la ligne sur laquelle se trouve le curseur avec remise en l'état lorsque je changeais de ligne. Or sous XL2003, ce code ne fonctionne plus : Erreur d'exécution 1004 Impossible de définir la propriété Color de la classe Font
La même erreur est provoquée aussi par la propriété FontStyle.
J'ai effectué quelques tests. L'objet Target existe bien et j'accède à ses propriétés. On dirait que je ne peux pas écrire sur ma feuille de c alcul. Est-ce que vous avez une idée de ce qu'il pourrait bien se passer ? Merci de tout piste. Amezqueta
Public WithEvents Etiquette As Worksheet Public ErreurSaisie As Boolean Private Sub Vegetation_SelectionChange(ByVal Target As Excel.Range)
Static lngRow As Long Static strStyle As Variant
If lngRow = 0 Then lngRow = 3 If Rows(lngRow).Font.FontStyle = Null Then Rows(lngRow).Font.FontSt yle = "Gras" With Rows(lngRow).Font .Color = RGB(0, 0, 0) .FontStyle = strStyle End With
If ErreurSaisie = False Then oldValue = Target.Value lngRow = Target.Row strStyle = Rows(lngRow).Font.FontStyle End If
With Rows(lngRow).Font .Color = RGB(255, 0, 0) .FontStyle = "Gras" End With
ErreurSaisie = False
End Sub
amezqueta
Merci de ta réponse. Mais j'ai trouvé la raison des erreurs sur un workgroup us: XL2000 était laxiste sur la sécurité puisque l'on pouvait par code modifier les attributs des cellules verrouillées sur un page protégée. XL2003 l'interdit maintenant. La solution est de déprotégerla page à l'entrée de la fonction pour la reprotéger à la sortie.
Merci de ta réponse. Mais j'ai trouvé la raison des erreurs sur un workgroup
us:
XL2000 était laxiste sur la sécurité puisque l'on pouvait par code modifier
les attributs des cellules verrouillées sur un page protégée. XL2003
l'interdit maintenant.
La solution est de déprotégerla page à l'entrée de la fonction pour la
reprotéger à la sortie.
Merci de ta réponse. Mais j'ai trouvé la raison des erreurs sur un workgroup us: XL2000 était laxiste sur la sécurité puisque l'on pouvait par code modifier les attributs des cellules verrouillées sur un page protégée. XL2003 l'interdit maintenant. La solution est de déprotégerla page à l'entrée de la fonction pour la reprotéger à la sortie.