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

Vba-Surlignage

10 réponses
Avatar
Pierre.M
Bonsoir,

j'ai trouve le code de surlignage suivant sur excelabo (merci!):

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Application.ScreenUpdating = False
Cells.Interior.ColorIndex = xlNone
With ActiveCell
.EntireRow.Interior.ColorIndex = 36
End With
End Sub

Mais j'arrive pas a l'adapter a mes besoins, a savoir qu'il ne doit
fonctionner que si la cellule active est en colonnes A:J et ce n'est
pas toute la ligne mais seulement la ligne active en colonnes A:J qui
doit se surligner.

Quelqu'un veut bien me depanner encore une fois. Merci d'avance.

Pierre.M

10 réponses

Avatar
LSteph
Bonsoir Pierre,

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim isect As Range
Set isect = Intersect(Target, [a:j])
If Not isect Is Nothing Then
Application.ScreenUpdating = False
[a:j].Cells.Interior.ColorIndex = xlNone
With [a:j].Rows(isect.Row).Cells
.Interior.ColorIndex = 36
End With
End If
End Sub

'lSteph


Bonsoir,

j'ai trouve le code de surlignage suivant sur excelabo (merci!):

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Application.ScreenUpdating = False
Cells.Interior.ColorIndex = xlNone
With ActiveCell
.EntireRow.Interior.ColorIndex = 36
End With
End Sub

Mais j'arrive pas a l'adapter a mes besoins, a savoir qu'il ne doit
fonctionner que si la cellule active est en colonnes A:J et ce n'est pas
toute la ligne mais seulement la ligne active en colonnes A:J qui doit
se surligner.

Quelqu'un veut bien me depanner encore une fois. Merci d'avance.

Pierre.M



Avatar
Pierre.M
Merci beaucoup, c'est exactement ce dont j'avais besoin.
C'est marrant quand on a la reponse sous les yeux ca parait toujours si
evident.
Encore plein de progres a faire, faut croire...

Pourrais-tu me dire a quoi sert le Application.ScreenUpdatingúlse?

Merci encore, je vais pouvoir finaliser ce projet.


Pierre.M



On 2007-05-21 21:01:56 +0200, LSteph said:

Bonsoir Pierre,

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim isect As Range
Set isect = Intersect(Target, [a:j])
If Not isect Is Nothing Then
Application.ScreenUpdating = False
[a:j].Cells.Interior.ColorIndex = xlNone
With [a:j].Rows(isect.Row).Cells
.Interior.ColorIndex = 36
End With
End If
End Sub

'lSteph


Bonsoir,

j'ai trouve le code de surlignage suivant sur excelabo (merci!):

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Application.ScreenUpdating = False
Cells.Interior.ColorIndex = xlNone
With ActiveCell
.EntireRow.Interior.ColorIndex = 36
End With
End Sub

Mais j'arrive pas a l'adapter a mes besoins, a savoir qu'il ne doit
fonctionner que si la cellule active est en colonnes A:J et ce n'est
pas toute la ligne mais seulement la ligne active en colonnes A:J qui
doit se surligner.

Quelqu'un veut bien me depanner encore une fois. Merci d'avance.

Pierre.M




Avatar
jps
à quoi ça sert, pierre?
si tu manipules plusieurs classeurs à la fois, tu ne les verras pas s'ouvrir
et se fermer...toute l'exécution de la macro se fera à l'insu de ton plein
gré....
cerise sur le gâteau : tu n'es même pas obligé de remettre à True à la fin
de la macro
jps

"Pierre.M" a écrit dans le message de news:
46530a75$0$27401$
Merci beaucoup, c'est exactement ce dont j'avais besoin.
C'est marrant quand on a la reponse sous les yeux ca parait toujours si
evident.
Encore plein de progres a faire, faut croire...

Pourrais-tu me dire a quoi sert le Application.ScreenUpdatingúlse?

Merci encore, je vais pouvoir finaliser ce projet.


Pierre.M



On 2007-05-21 21:01:56 +0200, LSteph said:

Bonsoir Pierre,

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim isect As Range
Set isect = Intersect(Target, [a:j])
If Not isect Is Nothing Then
Application.ScreenUpdating = False
[a:j].Cells.Interior.ColorIndex = xlNone
With [a:j].Rows(isect.Row).Cells
.Interior.ColorIndex = 36
End With
End If
End Sub

'lSteph


Bonsoir,

j'ai trouve le code de surlignage suivant sur excelabo (merci!):

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Application.ScreenUpdating = False
Cells.Interior.ColorIndex = xlNone
With ActiveCell
.EntireRow.Interior.ColorIndex = 36
End With
End Sub

Mais j'arrive pas a l'adapter a mes besoins, a savoir qu'il ne doit
fonctionner que si la cellule active est en colonnes A:J et ce n'est pas
toute la ligne mais seulement la ligne active en colonnes A:J qui doit
se surligner.

Quelqu'un veut bien me depanner encore une fois. Merci d'avance.

Pierre.M








Avatar
JP25
Bonjour,
Encore un autre type de code
Tu n'as que l'embarras du choix
Il ne te reste que ta plage de recherche à définir !
Danc ce cas, Range("a1:d100")

Sub Trouve()
Dim ma_selection
Dim lig, Col, C, L
Set ma_selection = Range("a1:d100")
lig = ma_selection.Rows.Count
Col = ma_selection.Columns.Count
For L = 1 To lig
For C = 1 To Col
If Cells(L, C) <> "" Then
Cells(L, C).Select
Souligne
End If
Next
Next
End Sub

Sub Souligne()
With Selection.Font
.Underline = xlUnderlineStyleDouble
.ColorIndex = xlAutomatic
End With
End Sub

JP25
A+

"Pierre.M" a écrit dans le message de news:
46530a75$0$27401$
Merci beaucoup, c'est exactement ce dont j'avais besoin.
C'est marrant quand on a la reponse sous les yeux ca parait toujours si
evident.
Encore plein de progres a faire, faut croire...

Pourrais-tu me dire a quoi sert le Application.ScreenUpdatingúlse?

Merci encore, je vais pouvoir finaliser ce projet.


Pierre.M



On 2007-05-21 21:01:56 +0200, LSteph said:

Bonsoir Pierre,

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim isect As Range
Set isect = Intersect(Target, [a:j])
If Not isect Is Nothing Then
Application.ScreenUpdating = False
[a:j].Cells.Interior.ColorIndex = xlNone
With [a:j].Rows(isect.Row).Cells
.Interior.ColorIndex = 36
End With
End If
End Sub

'lSteph


Bonsoir,

j'ai trouve le code de surlignage suivant sur excelabo (merci!):

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Application.ScreenUpdating = False
Cells.Interior.ColorIndex = xlNone
With ActiveCell
.EntireRow.Interior.ColorIndex = 36
End With
End Sub

Mais j'arrive pas a l'adapter a mes besoins, a savoir qu'il ne doit
fonctionner que si la cellule active est en colonnes A:J et ce n'est pas
toute la ligne mais seulement la ligne active en colonnes A:J qui doit
se surligner.

Quelqu'un veut bien me depanner encore une fois. Merci d'avance.

Pierre.M








Avatar
LSteph
Bonsoir,

Après le passage de notre président , pas grand chose à ajouter
ou juste histoire de répondre quelquechose quand même (...en aparté)
cela désactive la mise à jour écran, donc on ne voit plus
les trucs qui bougent dans tous les sens pendant l'exécution,
et lorsqu'il s'agit de procédures plus lourdes, c'est d'une exécution
bien plus rapide.

@+

lSteph

Merci beaucoup, c'est exactement ce dont j'avais besoin.
C'est marrant quand on a la reponse sous les yeux ca parait toujours si
evident.
Encore plein de progres a faire, faut croire...

Pourrais-tu me dire a quoi sert le Application.ScreenUpdatingúlse?

Merci encore, je vais pouvoir finaliser ce projet.


Pierre.M



On 2007-05-21 21:01:56 +0200, LSteph said:

Bonsoir Pierre,

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim isect As Range
Set isect = Intersect(Target, [a:j])
If Not isect Is Nothing Then
Application.ScreenUpdating = False
[a:j].Cells.Interior.ColorIndex = xlNone
With [a:j].Rows(isect.Row).Cells
.Interior.ColorIndex = 36
End With
End If
End Sub

'lSteph


Bonsoir,

j'ai trouve le code de surlignage suivant sur excelabo (merci!):

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Application.ScreenUpdating = False
Cells.Interior.ColorIndex = xlNone
With ActiveCell
.EntireRow.Interior.ColorIndex = 36
End With
End Sub

Mais j'arrive pas a l'adapter a mes besoins, a savoir qu'il ne doit
fonctionner que si la cellule active est en colonnes A:J et ce n'est
pas toute la ligne mais seulement la ligne active en colonnes A:J qui
doit se surligner.

Quelqu'un veut bien me depanner encore une fois. Merci d'avance.

Pierre.M








Avatar
Pierre.M
Merci beaucoup.
(C'est lequel le président? dit-il en chuchotant)

Pierre.M



On 2007-05-22 22:57:41 +0200, LSteph said:

Bonsoir,

Après le passage de notre président , pas grand chose à ajouter
ou juste histoire de répondre quelquechose quand même (...en aparté)
cela désactive la mise à jour écran, donc on ne voit plus
les trucs qui bougent dans tous les sens pendant l'exécution,
et lorsqu'il s'agit de procédures plus lourdes, c'est d'une exécution
bien plus rapide.

@+

lSteph

Merci beaucoup, c'est exactement ce dont j'avais besoin.
C'est marrant quand on a la reponse sous les yeux ca parait toujours si
evident.
Encore plein de progres a faire, faut croire...

Pourrais-tu me dire a quoi sert le Application.ScreenUpdatingúlse?

Merci encore, je vais pouvoir finaliser ce projet.


Pierre.M



On 2007-05-21 21:01:56 +0200, LSteph said:

Bonsoir Pierre,

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim isect As Range
Set isect = Intersect(Target, [a:j])
If Not isect Is Nothing Then
Application.ScreenUpdating = False
[a:j].Cells.Interior.ColorIndex = xlNone
With [a:j].Rows(isect.Row).Cells
.Interior.ColorIndex = 36
End With
End If
End Sub

'lSteph


Bonsoir,

j'ai trouve le code de surlignage suivant sur excelabo (merci!):

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Application.ScreenUpdating = False
Cells.Interior.ColorIndex = xlNone
With ActiveCell
.EntireRow.Interior.ColorIndex = 36
End With
End Sub

Mais j'arrive pas a l'adapter a mes besoins, a savoir qu'il ne doit
fonctionner que si la cellule active est en colonnes A:J et ce n'est
pas toute la ligne mais seulement la ligne active en colonnes A:J qui
doit se surligner.

Quelqu'un veut bien me depanner encore une fois. Merci d'avance.

Pierre.M








Avatar
LSteph
Celui qui préfère le baujolais voyons, ...c'est évident!

;o)

LSteph
(avec un s)

Merci beaucoup.
(C'est lequel le président? dit-il en chuchotant)

Pierre.M



On 2007-05-22 22:57:41 +0200, LSteph said:

Bonsoir,

Après le passage de notre président , pas grand chose à ajouter
ou juste histoire de répondre quelquechose quand même (...en aparté)
cela désactive la mise à jour écran, donc on ne voit plus
les trucs qui bougent dans tous les sens pendant l'exécution,
et lorsqu'il s'agit de procédures plus lourdes, c'est d'une exécution
bien plus rapide.

@+

lSteph

Merci beaucoup, c'est exactement ce dont j'avais besoin.
C'est marrant quand on a la reponse sous les yeux ca parait toujours
si evident.
Encore plein de progres a faire, faut croire...

Pourrais-tu me dire a quoi sert le Application.ScreenUpdatingúlse?

Merci encore, je vais pouvoir finaliser ce projet.


Pierre.M



On 2007-05-21 21:01:56 +0200, LSteph said:

Bonsoir Pierre,

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim isect As Range
Set isect = Intersect(Target, [a:j])
If Not isect Is Nothing Then
Application.ScreenUpdating = False
[a:j].Cells.Interior.ColorIndex = xlNone
With [a:j].Rows(isect.Row).Cells
.Interior.ColorIndex = 36
End With
End If
End Sub

'lSteph


Bonsoir,

j'ai trouve le code de surlignage suivant sur excelabo (merci!):

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Application.ScreenUpdating = False
Cells.Interior.ColorIndex = xlNone
With ActiveCell
.EntireRow.Interior.ColorIndex = 36
End With
End Sub

Mais j'arrive pas a l'adapter a mes besoins, a savoir qu'il ne
doit fonctionner que si la cellule active est en colonnes A:J et ce
n'est pas toute la ligne mais seulement la ligne active en colonnes
A:J qui doit se surligner.

Quelqu'un veut bien me depanner encore une fois. Merci d'avance.

Pierre.M












Avatar
jps
dis donc, LSteph, ne pousserais-tu pas un peu Pierre M à rejoindre le clan
des charognards??????
jps (qui serait bien heureux parfois de pouvoir screenpdater false son OE 6
et plus particulièrement le groupe de discussion ci-dessus)

"LSteph" a écrit dans le message de news:

Celui qui préfère le baujolais voyons, ...c'est évident!

;o)

LSteph
(avec un s)

Merci beaucoup.
(C'est lequel le président? dit-il en chuchotant)

Pierre.M



On 2007-05-22 22:57:41 +0200, LSteph said:

Bonsoir,

Après le passage de notre président , pas grand chose à ajouter
ou juste histoire de répondre quelquechose quand même (...en aparté)
cela désactive la mise à jour écran, donc on ne voit plus
les trucs qui bougent dans tous les sens pendant l'exécution,
et lorsqu'il s'agit de procédures plus lourdes, c'est d'une exécution
bien plus rapide.

@+

lSteph

Merci beaucoup, c'est exactement ce dont j'avais besoin.
C'est marrant quand on a la reponse sous les yeux ca parait toujours si
evident.
Encore plein de progres a faire, faut croire...

Pourrais-tu me dire a quoi sert le Application.ScreenUpdatingúlse?

Merci encore, je vais pouvoir finaliser ce projet.


Pierre.M



On 2007-05-21 21:01:56 +0200, LSteph said:

Bonsoir Pierre,

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim isect As Range
Set isect = Intersect(Target, [a:j])
If Not isect Is Nothing Then
Application.ScreenUpdating = False
[a:j].Cells.Interior.ColorIndex = xlNone
With [a:j].Rows(isect.Row).Cells
.Interior.ColorIndex = 36
End With
End If
End Sub

'lSteph


Bonsoir,

j'ai trouve le code de surlignage suivant sur excelabo (merci!):

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Application.ScreenUpdating = False
Cells.Interior.ColorIndex = xlNone
With ActiveCell
.EntireRow.Interior.ColorIndex = 36
End With
End Sub

Mais j'arrive pas a l'adapter a mes besoins, a savoir qu'il ne doit
fonctionner que si la cellule active est en colonnes A:J et ce n'est
pas toute la ligne mais seulement la ligne active en colonnes A:J qui
doit se surligner.

Quelqu'un veut bien me depanner encore une fois. Merci d'avance.

Pierre.M













Avatar
LSteph
;o)))


dis donc, LSteph, ne pousserais-tu pas un peu Pierre M à rejoindre le clan
des charognards??????
jps (qui serait bien heureux parfois de pouvoir screenpdater false son OE 6
et plus particulièrement le groupe de discussion ci-dessus)

"LSteph" a écrit dans le message de news:

Celui qui préfère le baujolais voyons, ...c'est évident!

;o)

LSteph
(avec un s)

Merci beaucoup.
(C'est lequel le président? dit-il en chuchotant)

Pierre.M



On 2007-05-22 22:57:41 +0200, LSteph said:

Bonsoir,

Après le passage de notre président , pas grand chose à ajouter
ou juste histoire de répondre quelquechose quand même (...en aparté)
cela désactive la mise à jour écran, donc on ne voit plus
les trucs qui bougent dans tous les sens pendant l'exécution,
et lorsqu'il s'agit de procédures plus lourdes, c'est d'une exécution
bien plus rapide.

@+

lSteph

Merci beaucoup, c'est exactement ce dont j'avais besoin.
C'est marrant quand on a la reponse sous les yeux ca parait toujours si
evident.
Encore plein de progres a faire, faut croire...

Pourrais-tu me dire a quoi sert le Application.ScreenUpdatingúlse?

Merci encore, je vais pouvoir finaliser ce projet.


Pierre.M



On 2007-05-21 21:01:56 +0200, LSteph said:

Bonsoir Pierre,

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim isect As Range
Set isect = Intersect(Target, [a:j])
If Not isect Is Nothing Then
Application.ScreenUpdating = False
[a:j].Cells.Interior.ColorIndex = xlNone
With [a:j].Rows(isect.Row).Cells
.Interior.ColorIndex = 36
End With
End If
End Sub

'lSteph


Bonsoir,

j'ai trouve le code de surlignage suivant sur excelabo (merci!):

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Application.ScreenUpdating = False
Cells.Interior.ColorIndex = xlNone
With ActiveCell
.EntireRow.Interior.ColorIndex = 36
End With
End Sub

Mais j'arrive pas a l'adapter a mes besoins, a savoir qu'il ne doit
fonctionner que si la cellule active est en colonnes A:J et ce n'est
pas toute la ligne mais seulement la ligne active en colonnes A:J qui
doit se surligner.

Quelqu'un veut bien me depanner encore une fois. Merci d'avance.

Pierre.M















Avatar
Pierre.M
Euhhh,... moi non plus je n'ai rien contre le Beaujolais. Au contraire...

Pierre.M


On 2007-05-23 07:07:30 +0200, "jps" said:

dis donc, LSteph, ne pousserais-tu pas un peu Pierre M à rejoindre le clan
des charognards??????
jps (qui serait bien heureux parfois de pouvoir screenpdater false son OE 6
et plus particulièrement le groupe de discussion ci-dessus)

"LSteph" a écrit dans le message de news:

Celui qui préfère le baujolais voyons, ...c'est évident!

;o)

LSteph
(avec un s)

Merci beaucoup.
(C'est lequel le président? dit-il en chuchotant)

Pierre.M



On 2007-05-22 22:57:41 +0200, LSteph said:

Bonsoir,

Après le passage de notre président , pas grand chose à ajouter
ou juste histoire de répondre quelquechose quand même (...en aparté)
cela désactive la mise à jour écran, donc on ne voit plus
les trucs qui bougent dans tous les sens pendant l'exécution,
et lorsqu'il s'agit de procédures plus lourdes, c'est d'une exécution
bien plus rapide.

@+

lSteph

Merci beaucoup, c'est exactement ce dont j'avais besoin.
C'est marrant quand on a la reponse sous les yeux ca parait toujours si
evident.
Encore plein de progres a faire, faut croire...

Pourrais-tu me dire a quoi sert le Application.ScreenUpdatingúlse?

Merci encore, je vais pouvoir finaliser ce projet.


Pierre.M



On 2007-05-21 21:01:56 +0200, LSteph said:

Bonsoir Pierre,

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim isect As Range
Set isect = Intersect(Target, [a:j])
If Not isect Is Nothing Then
Application.ScreenUpdating = False
[a:j].Cells.Interior.ColorIndex = xlNone
With [a:j].Rows(isect.Row).Cells
.Interior.ColorIndex = 36
End With
End If
End Sub

'lSteph


Bonsoir,

j'ai trouve le code de surlignage suivant sur excelabo (merci!):

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Application.ScreenUpdating = False
Cells.Interior.ColorIndex = xlNone
With ActiveCell
.EntireRow.Interior.ColorIndex = 36
End With
End Sub

Mais j'arrive pas a l'adapter a mes besoins, a savoir qu'il ne doit
fonctionner que si la cellule active est en colonnes A:J et ce n'est
pas toute la ligne mais seulement la ligne active en colonnes A:J qui
doit se surligner.

Quelqu'un veut bien me depanner encore une fois. Merci d'avance.

Pierre.M