Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

VBA, comment faire une macro Excel ???

1 réponse
Avatar
LE TROLL
Bonjour,

En VBA, comment faire une macro dans Excel, soit:

Objet: Pour pointer un compte, lors du rapprochement avec le relevé de
compte, je coche une case d'un "X" graissé en majuscule quand chaque
opération est identique sur le relevé et sur Excel où je fais le compte...

Problème, quand je coche, ça m'oblige à mettre en majuscule, et ou, je me
trompe de lettre (m'astreignant à corriger), d'onc une macro serait la
bienvenue, comme suit:


' nb, la colonne "G" est déjà graissée.
'
Sub Worksheet_Change...
Si Colonne = "G" Alors: Call ecrit_cellule
End Sub
'
Sub Worksheet_BeforeDoubleClick...
Si Colonne = "G" Alors: Call ecrit_cellule
End Sub
'
Sub ecrit_cellule()
On Error Resume Next
Si (Colonne "G" Cellule_Active) <> "X" alors:
Met dans (Colonne G Cellule_Active) = majuscules
Ecrit (Colonne "G" Cellule_Active) = "X"
Exit Sub
Fin de Si
Ecrit (Colonne "G" Cellule_Active) = ""
End Sub

---------------------------------
Merci de m'écrire cette macro.
---------------------------------


ng75 arobase noos.fr
------------------------------------------------------------
LE TROLL, éleveur de trolls depuis César, qui disait :
Avec une hache, celui qui tient le manche a toujours raison !

1 réponse

Avatar
Hervé
Salut Le Troll,
De cette façon ?
Il n'est pas nécessaire de mettre en majuscule [(Colonne G Cellule_Active) majuscules] puisque tu inscris déjà le "X" en majuscule :

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As
Boolean)
If Not Intersect(Target, [G:G]) Is Nothing Then _
ecrit_cellule Target
Application.EnableEvents = True
End Sub

Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, [G:G]) Is Nothing Then _
ecrit_cellule Target
Application.EnableEvents = True
End Sub

Sub ecrit_cellule(Cel As Range)
Application.EnableEvents = False
On Error Resume Next
If Cel.Value <> "X" Then
Cel.Value = "X"
Exit Sub
End If
Cel.Value = ""
End Sub

Hervé.

"LE TROLL" <le a écrit dans le message news:

Bonjour,

En VBA, comment faire une macro dans Excel, soit:

Objet: Pour pointer un compte, lors du rapprochement avec le relevé de
compte, je coche une case d'un "X" graissé en majuscule quand chaque
opération est identique sur le relevé et sur Excel où je fais le compte...

Problème, quand je coche, ça m'oblige à mettre en majuscule, et ou, je me
trompe de lettre (m'astreignant à corriger), d'onc une macro serait la
bienvenue, comme suit:


' nb, la colonne "G" est déjà graissée.
'
Sub Worksheet_Change...
Si Colonne = "G" Alors: Call ecrit_cellule
End Sub
'
Sub Worksheet_BeforeDoubleClick...
Si Colonne = "G" Alors: Call ecrit_cellule
End Sub
'
Sub ecrit_cellule()
On Error Resume Next
Si (Colonne "G" Cellule_Active) <> "X" alors:
Met dans (Colonne G Cellule_Active) = majuscules
Ecrit (Colonne "G" Cellule_Active) = "X"
Exit Sub
Fin de Si
Ecrit (Colonne "G" Cellule_Active) = ""
End Sub

---------------------------------
Merci de m'écrire cette macro.
---------------------------------


ng75 arobase noos.fr
------------------------------------------------------------
LE TROLL, éleveur de trolls depuis César, qui disait :
Avec une hache, celui qui tient le manche a toujours raison !