Gauche - Droite (1-2,1-2...Comme à l'armée)

Le
Jacquouille
Bonsoir
N'étant pas content de mes début en clignotement (voir dernier msg), et ne
comprenant pas pourquoi la cel changeait de valeur dans une solution
proposée, j'ai décidé de reprendre cela sous un autre point de vue.
Voici un truc qui fonctionne, mais qui me parait lourd.
Mon but était de partir des secondes de l'heure du PC et de balancer le
contenu de la cel de G à D si le nb de secondes est pair ou impair.
Qu'en pensez-vous?
PS le AAA devant le nom, c'est pour retrouver la macro en tête de liste
quand je travaille dedans.
--
Sub AAA_Changer_Gauche_Droite()
'Macro enregistrée le 28/07/2008 par JT
For n = Second(Now()) To Second(Now()) + 10 'Si c'est con, ça dure moins
longtemps-)
reste = n / 2 - Int(n / 2)
Range("A1").Select
With Selection
If reste = 0 Then 'pair = en rouge et à gauche
.HorizontalAlignment = xlLeft
.Interior.ColorIndex = 3
Else 'impair = en gris et à Droite
.HorizontalAlignment = xlRight
.Interior.ColorIndex = 15
End If
End With

newhour = Hour(Now())
newminute = Minute(Now())
newsecond = Second(Now()) + 1
waittime = TimeSerial(newhour, newminute, newsecond)
Application.Wait waittime

Next

End Sub
--
Bien amicalmement,
"Le vin est au repas ce que le parfum est à la femme."

Jacquouille.
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
parci
Le #16444041
On Wed, 30 Jul 2008 20:38:14 +0200, "Jacquouille"

Bonsoir
N'étant pas content de mes début en clignotement (voir dernier msg), et ne
comprenant pas pourquoi la cel changeait de valeur dans une solution
proposée, j'ai décidé de reprendre cela sous un autre point de vue.
Voici un truc qui fonctionne, mais qui me parait lourd.
Mon but était de partir des secondes de l'heure du PC et de balancer le
contenu de la cel de G à D si le nb de secondes est pair ou impair.
Qu'en pensez-vous?



Sub AAA_Changer_Gauche_Droite()

Dim reste As Long
Dim waittime As Date
Dim n As Long

'Macro enregistrée le 28/07/2008 par JT
For n = 1 To 10 'Si c'est con, ça dure moinslongtemps...-)

reste = n Mod 2

With Range("A1")
If reste = 0 Then 'pair = en rouge et à gauche
.HorizontalAlignment = xlLeft
.Interior.ColorIndex = 3
Else 'impair = en gris et à Droite
.HorizontalAlignment = xlRight
.Interior.ColorIndex = 15
End If
End With

waittime = DateAdd("s", 1, Now)
Application.Wait waittime

Next

End Sub
Jacquouille
Le #16444451
Bonsoir
C'est nettement plus court et plus simple.
Je ne connaissais pas ce -- dateAdd("s",1,now) --
Un grand merci.
Jacques
--
Bien amicalmement,
"Le vin est au repas ce que le parfum est à la femme."

Jacquouille.

"parci"
On Wed, 30 Jul 2008 20:38:14 +0200, "Jacquouille"

Bonsoir
N'étant pas content de mes début en clignotement (voir dernier msg), et ne
comprenant pas pourquoi la cel changeait de valeur dans une solution
proposée, j'ai décidé de reprendre cela sous un autre point de vue.
Voici un truc qui fonctionne, mais qui me parait lourd.
Mon but était de partir des secondes de l'heure du PC et de balancer le
contenu de la cel de G à D si le nb de secondes est pair ou impair.
Qu'en pensez-vous?



Sub AAA_Changer_Gauche_Droite()

Dim reste As Long
Dim waittime As Date
Dim n As Long

'Macro enregistrée le 28/07/2008 par JT
For n = 1 To 10 'Si c'est con, ça dure moinslongtemps...-)

reste = n Mod 2

With Range("A1")
If reste = 0 Then 'pair = en rouge et à gauche
.HorizontalAlignment = xlLeft
.Interior.ColorIndex = 3
Else 'impair = en gris et à Droite
.HorizontalAlignment = xlRight
.Interior.ColorIndex = 15
End If
End With

waittime = DateAdd("s", 1, Now)
Application.Wait waittime

Next

End Sub



Fredo P
Le #16446161
Je ne vois pas pourquoi tu ne continues pas sur le même fil!

"Jacquouille" news:
Bonsoir
N'étant pas content de mes début en clignotement (voir dernier msg), et ne
comprenant pas pourquoi la cel changeait de valeur dans une solution
proposée,



''''Réexpliquation''':: Pour voir le code VBA ci-dessous du classeur
proposé, faire soit: Clic droit sur l'onglet de la feuille Feuil1
>Visualiser le code soit Alt + F11. Tu dois voir les lignes écrites plus
bas.
Les 9 lignes de code suivantes qui représentent le code de la Feuil1 sont
exécutées automatiquement à chaque fois que tu sélectionnes une cellule
différente de la Feuil1.
Donc, la procédure "Clignote" qui se trouve dans le module est appelée 3
fois. Pour te rendre compte de l'exécution, après avoir fait Alt+F11, tu
appuyes sur F8, puis tu sélectionne une cellule, la première ligne
ci-dessous passe sous arrière-plan en jaune.Ensuite fait parcourir ta souris
en haut de l'éditeur VBA sur les boutons disponibles, lorsque tu verras "Pas
à pas détaillé" tu clic dessus pour faire progresser la routine.

Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)
[E1] = "Bonjour" 'affectation de la 1iere valeur à E1
Clignote ' 1er appel de procédure Clignote
[E1] = "Ça va?" 'affectation de la 2ème valeur à E1
Clignote' 2ème appel de procédure Clignote
[E1] = "Il fait beau chez toi??" 'affectation de la 3ème valeur à E1
Clignote' 3ème appel de procédure Clignote
[E1] = ""
End Sub


Option Explicit
Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
Sub Clignote()
Dim i As Integer, mem#, a$
Application.ScreenUpdating = True
a$ = [E1]
With Feuil1.Range("E1")
mem = .Font.Size
.Font.ColorIndex = 3
.Font.Size = mem + 4
.Font.Bold = True
For i = 0 To 8
If [E1] = a Then ' Si E1 prend une valeur
[E1] = "" 'j'efface E1
Else
[E1] = a 'si non je rétablis la valeur sur E1
End If
Sleep (200) 'procédure interne déclarée par la ligne en amont
de cette routine,
DoEvents
Next i
'Redonne le format de cellules mitoyennes
.Font.Size = [E4].Font.Size
.Font.ColorIndex = [E4].Font.ColorIndex
.Font.Bold = [E4].Font.Bold
End With
End Sub


J'ose espérer avoir clarifier dans ton esprit le fonctionnement de ce
classeur.
Jacquouille
Le #16449891
Bonjour
Simplement parce qu'il y a 10 cm d'en-têtes entre le premier fil et le 30/7.
Il n'est donc pas déraisonnable de penser que ceux qui m'ont aidé (on n'est
jamais trop aidé), ne pensent pas à reculer de 10 cm pour voir mes nouveaux
états d'âme sur un problème et une de ses solutions dont la plus grande
majorité se contrefout.
Ai-je répondu à tes attentes?
--
Bien amicalmement,
"Le vin est au repas ce que le parfum est à la femme."

Jacquouille.

"Fredo P" message de news:
Je ne vois pas pourquoi tu ne continues pas sur le même fil!

"Jacquouille" news:
Bonsoir
N'étant pas content de mes début en clignotement (voir dernier msg), et
ne comprenant pas pourquoi la cel changeait de valeur dans une solution
proposée,



''''Réexpliquation''':: Pour voir le code VBA ci-dessous du classeur
proposé, faire soit: Clic droit sur l'onglet de la feuille Feuil1
>Visualiser le code soit Alt + F11. Tu dois voir les lignes écrites plus
bas.
Les 9 lignes de code suivantes qui représentent le code de la Feuil1 sont
exécutées automatiquement à chaque fois que tu sélectionnes une cellule
différente de la Feuil1.
Donc, la procédure "Clignote" qui se trouve dans le module est appelée 3
fois. Pour te rendre compte de l'exécution, après avoir fait Alt+F11, tu
appuyes sur F8, puis tu sélectionne une cellule, la première ligne
ci-dessous passe sous arrière-plan en jaune.Ensuite fait parcourir ta
souris en haut de l'éditeur VBA sur les boutons disponibles, lorsque tu
verras "Pas à pas détaillé" tu clic dessus pour faire progresser la
routine.

Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)
[E1] = "Bonjour" 'affectation de la 1iere valeur à E1
Clignote ' 1er appel de procédure Clignote
[E1] = "Ça va?" 'affectation de la 2ème valeur à E1
Clignote' 2ème appel de procédure Clignote
[E1] = "Il fait beau chez toi??" 'affectation de la 3ème valeur à E1
Clignote' 3ème appel de procédure Clignote
[E1] = ""
End Sub


Option Explicit
Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
Sub Clignote()
Dim i As Integer, mem#, a$
Application.ScreenUpdating = True
a$ = [E1]
With Feuil1.Range("E1")
mem = .Font.Size
.Font.ColorIndex = 3
.Font.Size = mem + 4
.Font.Bold = True
For i = 0 To 8
If [E1] = a Then ' Si E1 prend une valeur
[E1] = "" 'j'efface E1
Else
[E1] = a 'si non je rétablis la valeur sur E1
End If
Sleep (200) 'procédure interne déclarée par la ligne en amont
de cette routine,
DoEvents
Next i
'Redonne le format de cellules mitoyennes
.Font.Size = [E4].Font.Size
.Font.ColorIndex = [E4].Font.ColorIndex
.Font.Bold = [E4].Font.Bold
End With
End Sub


J'ose espérer avoir clarifier dans ton esprit le fonctionnement de ce
classeur.



lSteph
Le #16450421
Bonjour Jacques,

;-))

C'est vrai qu'on te voit par intermittences,
c'est sans doute le résultat du clignotement!


Amitiés.

--
lSteph

[HS]J'espère qu'ils vont vous laisser clignoter en W..... g.f.d.





On 31 juil, 16:52, "Jacquouille" wrote:
Bonjour
Simplement parce qu'il y a 10 cm d'en-têtes entre le premier fil et le 30/7.
Il n'est donc pas déraisonnable de penser que ceux qui m'ont aidé (on n'est
jamais trop aidé), ne pensent pas à reculer de 10 cm pour voir mes no uveaux
états d'âme sur un problème et une de ses solutions dont la plus gr ande
majorité se contrefout.
Ai-je répondu à tes attentes?
--
Bien amicalmement,
"Le vin est au repas ce que le parfum est à la femme."

Jacquouille.

"Fredo P" message denews: uPL2wYu8IHA.1__BEGIN_MASK_n#9g02mG7!__...__END_MASK_i?a63 jfAD$

> Je ne vois pas pourquoi tu ne continues pas sur le même fil!

> "Jacquouille" >news: uPsjvNn8IHA.2__BEGIN_MASK_n#9g02mG7!__...__END_MASK_i?a63jfAD$z__@ TK2MSFTNGP02.phx.gbl...
>> Bonsoir
>> N'étant pas content de mes début en clignotement (voir dernier msg ), et
>> ne comprenant pas pourquoi la cel changeait de valeur dans une solutio n
>> proposée,

> ''''Réexpliquation''':: Pour voir le code VBA ci-dessous du classeur
> proposé, faire soit: Clic droit sur l'onglet de la feuille Feuil1
> >Visualiser le code soit Alt + F11. Tu dois voir les lignes écrites plus
> bas.
> Les 9 lignes de code suivantes qui représentent le code de la Feuil1 sont
> exécutées automatiquement à chaque fois que tu sélectionnes une cellule
> différente de la Feuil1.
> Donc, la procédure "Clignote" qui se trouve dans le module est appel ée 3
> fois. Pour te rendre compte de l'exécution, après avoir fait Alt+F1 1, tu
> appuyes sur F8, puis tu sélectionne une cellule, la première ligne
> ci-dessous passe sous arrière-plan en jaune.Ensuite fait parcourir ta
> souris en haut de l'éditeur VBA sur les boutons disponibles, lorsque tu
> verras "Pas à pas détaillé" tu clic dessus pour faire progresser la
> routine.

> Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)
> [E1] = "Bonjour" 'affectation de la 1iere valeur à E1
> Clignote ' 1er appel de procédure Clignote
> [E1] = "Ça va?" 'affectation de la 2ème valeur à E1
> Clignote' 2ème appel de procédure Clignote
> [E1] = "Il fait beau chez toi??" 'affectation de la 3ème valeur à E1
> Clignote' 3ème appel de procédure Clignote
> [E1] = ""
> End Sub

> Option Explicit
> Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
> Sub Clignote()
> Dim i As Integer, mem#, a$
> Application.ScreenUpdating = True
> a$ = [E1]
> With Feuil1.Range("E1")
> mem = .Font.Size
> .Font.ColorIndex = 3
> .Font.Size = mem + 4
> .Font.Bold = True
> For i = 0 To 8
> If [E1] = a Then ' Si E1 prend une valeur
> [E1] = "" 'j'efface E1
> Else
> [E1] = a 'si non je rétablis la valeur su r E1
> End If
> Sleep (200) 'procédure interne déclarée par la ligne en amont
> de cette routine,
> DoEvents
> Next i
> 'Redonne le format de cellules mitoyennes
> .Font.Size = [E4].Font.Size
> .Font.ColorIndex = [E4].Font.ColorIndex
> .Font.Bold = [E4].Font.Bold
> End With
> End Sub

> J'ose espérer avoir clarifier dans ton esprit le fonctionnement de ce
> classeur.


Modeste
Le #16452731
Bonsour® Jacquouille avec ferveur ;o))) vous nous disiez :

Mon but était de partir des secondes de l'heure du PC et de balancer
le contenu de la cel de G à D si le nb de secondes est pair ou impair.



en espérant que GD n'ai pas fait un impair ;o)))
http://cjoint.com/?hFw0sLoCIW

1 - Dans le module ThisWorkbook

Option Explicit
Private Sub workbook_open()
' -------on ajoute le style "Clignote"
On Error Resume Next
ThisWorkbook.Styles.Add Name:="Clignote"
Selection.Style = "Clignote"
' ------- on lance le clignotement
Cligne
End Sub

Private Sub Workbook_BeforeClose(Cancel As Boolean)
' ----on arrete le clignotement
StopCligne
End Sub

2 - dans le module de Feuil1

Option Explicit
Private Sub Worksheet_Activate()
' ------- on lance le clignotement
Cligne
End Sub

Private Sub Worksheet_Deactivate()
' ----on arrete le clignotement
StopCligne
End Sub

3 - Dand un module standard :

Option Explicit
Public Prochain As Double

Sub Cligne()
Dim xx As Integer
xx = Second(Now) Mod 2
With ActiveWorkbook.Styles("Clignote")
.Font.Color = IIf(0 = xx, vbRed, vbBlue)
.HorizontalAlignment = IIf(0 = xx, xlRight, xlLeft)
End With
Prochain = Now + TimeSerial(0, 0, 1) ' <<---- prochain appel de la proc dans une seconde
Application.OnTime Prochain, "'" & ThisWorkbook.Name & "'!Cligne", , True
End Sub

Sub StopCligne()
On Error Resume Next
Application.OnTime Prochain, "'" & ThisWorkbook.Name & "'!Cligne", , False
End Sub





--
--
@+
;o)))
Fredo P
Le #16453341
"lSteph"
Bonjour Jacques,

;-))

C'est vrai qu'on te voit par intermittences,
c'est sans doute le résultat du clignotement!


Je n'aurais pas été jusque la.O-))
LSteph
Le #16454221
Bonjour Jacquouille,

C'est un peu à côté de ce que tu évoques mais si cela t'inspire
à mettre dans le code d'une feuille:

Private Sub Worksheet_Change(ByVal Target As Range)
'Décocher outils option affichage valeur zéro
'taper 1 en C2 ou en B2 le va et vient démarrera
'taper dans une autre cellule, il s'arretera
Select Case Target.Address
Case "$B$2"
If [b2] = 1 Then
[b2].Interior.ColorIndex = 1
Application.Wait Now + TimeValue("00:00:01")
[b2] = 0
[b2].Interior.ColorIndex = 0
[c2] = 1
End If
Case "$C$2"
If [c2] = 1 Then
[c2].Interior.ColorIndex = 1
Application.Wait Now + TimeValue("00:00:01")
[c2] = 0
[c2].Interior.ColorIndex = 0
[b2] = 1
End If
End Select
DoEvents
End Sub

'lSteph


Jacquouille a écrit :
Bonsoir
N'étant pas content de mes début en clignotement (voir dernier msg), et ne
comprenant pas pourquoi la cel changeait de valeur dans une solution
proposée, j'ai décidé de reprendre cela sous un autre point de vue.
Voici un truc qui fonctionne, mais qui me parait lourd.
Mon but était de partir des secondes de l'heure du PC et de balancer le
contenu de la cel de G à D si le nb de secondes est pair ou impair.
Qu'en pensez-vous?
PS le AAA devant le nom, c'est pour retrouver la macro en tête de liste
quand je travaille dedans.
--------------------------------------------
Sub AAA_Changer_Gauche_Droite()
'Macro enregistrée le 28/07/2008 par JT
For n = Second(Now()) To Second(Now()) + 10 'Si c'est con, ça dure moins
longtemps...-)
reste = n / 2 - Int(n / 2)
Range("A1").Select
With Selection
If reste = 0 Then 'pair = en rouge et à gauche
.HorizontalAlignment = xlLeft
.Interior.ColorIndex = 3
Else 'impair = en gris et à Droite
.HorizontalAlignment = xlRight
.Interior.ColorIndex = 15
End If
End With

newhour = Hour(Now())
newminute = Minute(Now())
newsecond = Second(Now()) + 1
waittime = TimeSerial(newhour, newminute, newsecond)
Application.Wait waittime

Next

End Sub


Jacquouille
Le #16458681
Salut Stéph et Gilbert
Tiens, voilà le retour des gros bras avé des soluces ....
Pas fous de me balancer cela un vendredi soir? N'en dormirai plus jusqu'à
lundi. -))
Je teste cela lundi au bureau car mon Home PC est en grêve d'Excel.
Vas-t-en savoir pourquoi?
Un tout grand merci et un bon WE à tous.
La bise à Mes Dames vos épouses.
Jacques

--
Bien amicalmement,
"Le vin est au repas ce que le parfum est à la femme."

Jacquouille.

"LSteph"
Bonjour Jacquouille,

C'est un peu à côté de ce que tu évoques mais si cela t'inspire
à mettre dans le code d'une feuille:

Private Sub Worksheet_Change(ByVal Target As Range)
'Décocher outils option affichage valeur zéro
'taper 1 en C2 ou en B2 le va et vient démarrera
'taper dans une autre cellule, il s'arretera
Select Case Target.Address
Case "$B$2"
If [b2] = 1 Then
[b2].Interior.ColorIndex = 1
Application.Wait Now + TimeValue("00:00:01")
[b2] = 0
[b2].Interior.ColorIndex = 0
[c2] = 1
End If
Case "$C$2"
If [c2] = 1 Then
[c2].Interior.ColorIndex = 1
Application.Wait Now + TimeValue("00:00:01")
[c2] = 0
[c2].Interior.ColorIndex = 0
[b2] = 1
End If
End Select
DoEvents
End Sub

'lSteph


Jacquouille a écrit :
Bonsoir
N'étant pas content de mes début en clignotement (voir dernier msg), et
ne comprenant pas pourquoi la cel changeait de valeur dans une solution
proposée, j'ai décidé de reprendre cela sous un autre point de vue.
Voici un truc qui fonctionne, mais qui me parait lourd.
Mon but était de partir des secondes de l'heure du PC et de balancer le
contenu de la cel de G à D si le nb de secondes est pair ou impair.
Qu'en pensez-vous?
PS le AAA devant le nom, c'est pour retrouver la macro en tête de liste
quand je travaille dedans.
--------------------------------------------
Sub AAA_Changer_Gauche_Droite()
'Macro enregistrée le 28/07/2008 par JT
For n = Second(Now()) To Second(Now()) + 10 'Si c'est con, ça dure moins
longtemps...-)
reste = n / 2 - Int(n / 2)
Range("A1").Select
With Selection
If reste = 0 Then 'pair = en rouge et à gauche
.HorizontalAlignment = xlLeft
.Interior.ColorIndex = 3
Else 'impair = en gris et à Droite
.HorizontalAlignment = xlRight
.Interior.ColorIndex = 15
End If
End With

newhour = Hour(Now())
newminute = Minute(Now())
newsecond = Second(Now()) + 1
waittime = TimeSerial(newhour, newminute, newsecond)
Application.Wait waittime

Next

End Sub




Fredo P
Le #16460051
http://cjoint.com/?icam7Vjvqw
--
--
@+
;o)))

"Modeste" %23GfNY%
Bonsour® Jacquouille avec ferveur ;o))) vous nous disiez :

Mon but était de partir des secondes de l'heure du PC et de balancer
le contenu de la cel de G à D si le nb de secondes est pair ou impair.



en espérant que GD n'ai pas fait un impair ;o)))
http://cjoint.com/?hFw0sLoCIW

1 - Dans le module ThisWorkbook

Option Explicit
Private Sub workbook_open()
' -------on ajoute le style "Clignote"
On Error Resume Next
ThisWorkbook.Styles.Add Name:="Clignote"
Selection.Style = "Clignote"
' ------- on lance le clignotement
Cligne
End Sub

Private Sub Workbook_BeforeClose(Cancel As Boolean)
' ----on arrete le clignotement
StopCligne
End Sub

2 - dans le module de Feuil1

Option Explicit
Private Sub Worksheet_Activate()
' ------- on lance le clignotement
Cligne
End Sub

Private Sub Worksheet_Deactivate()
' ----on arrete le clignotement
StopCligne
End Sub

3 - Dand un module standard :

Option Explicit
Public Prochain As Double

Sub Cligne()
Dim xx As Integer
xx = Second(Now) Mod 2
With ActiveWorkbook.Styles("Clignote")
.Font.Color = IIf(0 = xx, vbRed, vbBlue)
.HorizontalAlignment = IIf(0 = xx, xlRight, xlLeft)
End With
Prochain = Now + TimeSerial(0, 0, 1) ' <<---- prochain appel de la proc
dans une seconde
Application.OnTime Prochain, "'" & ThisWorkbook.Name & "'!Cligne", ,
True
End Sub

Sub StopCligne()
On Error Resume Next
Application.OnTime Prochain, "'" & ThisWorkbook.Name & "'!Cligne", ,
False
End Sub





--
--
@+
;o)))
Publicité
Poster une réponse
Anonyme