Liste colonne A et B en couleur

Fermé
vieuxray - 27 déc. 2013 à 07:50
 vieuxray - 1 janv. 2014 à 09:40
Bonjour a toutes et tous, Forum bonjour


Config Excel 2007 VBA

Je cherche a faire un petit code qui me permettrai d'afficher une liste en couleur.

Dans ma colonne A, en A1 une liste triée, je souhaiterai svp mettre en couleur (le fond) de la cellule de la façon suivante:
une couleur sur deux (Bleu et Vert) et écrit en noir.

la liste commence par des chiffres puis dans l'ordre A puis B etc etc
les chiffres en Bleu puis les (A) en Vert puis les (C) Bleu puis les (D) Vert etc etc

12 Rounds
40 Jours pour vivre
A l'aube du troisième jour
Atomic
Bernard et bianca
Bataille de boules de neige

Dans ma colonne B, en B1 une autre liste triée, je souhaiterai svp (cette fois) mettre en couleur MAIS une ligne sur deux Bleu - Vert etc etc

Je vous souhaite une bonne journée et merci pour votre aide.

Cordialement Ray
A voir également:

20 réponses

f894009 Messages postés 17187 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 1 mai 2024 1 704
27 déc. 2013 à 11:04
Bonjour,

code a mettre dans VBA de la feuille et a adapter:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim derlig1, derlig2, x, Color(1), MemColor1, MemColor2, MemPCG

'couleurs a adapter
Color(0) = vbCyan
Color(1) = vbGreen

derlig1 = Range("A" & Rows.Count).End(xlUp).Row
derlig2 = Range("B" & Rows.Count).End(xlUp).Row
For x = 1 To derlig1
'couleurs liste colonne A
'Premier Caractere a Gauche
PCG = Left(Range("A" & x), 1)
'teste chiffre
If PCG >= "0" And PCG <= 9 Then
Range("A" & x).Interior.Color = Color(0)
MemColor1 = 0
Else
'test memoire PCG = PCG et ensuite test memoire couleur
'pour changement couleur
If PCG <> MemPCG Then
MemPCG = PCG
If MemColor1 = 0 Then
MemColor1 = 1
Else
MemColor1 = 0
End If
Range("A" & x).Interior.Color = Color(MemColor1)
Else
Range("A" & x).Interior.Color = Color(MemColor1)
End If
End If

'Couleur liste colonne B
If x <= derlig2 Then
Range("B" & x).Interior.Color = Color(x Mod 2)
End If

Next x
End Sub
1
Polux31 Messages postés 6917 Date d'inscription mardi 25 septembre 2007 Statut Membre Dernière intervention 1 novembre 2016 1 204
30 déc. 2013 à 19:40
Bonsoir,

Voir avec la propriété Enabled du contrôle. Le mettre à False par défaut puis une fois la sélection effectuée mettre Enabled à True.

;0)
1
f894009 Messages postés 17187 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 1 mai 2024 1 704
31 déc. 2013 à 08:15
Bonjour Polux31 et bonne annee
0
Polux31 Messages postés 6917 Date d'inscription mardi 25 septembre 2007 Statut Membre Dernière intervention 1 novembre 2016 1 204
31 déc. 2013 à 13:53
Bonjour f94009,

Merci et idem ;0)
0
salut polux31

je te souhaite un excellent réveillon a toi et tes proches

a l'année prochaine sans nul doute

Bien cordialement Raymond
0
f894009 Messages postés 17187 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 1 mai 2024 1 704
31 déc. 2013 à 13:30
Bonjour,

Ca devrait aller:

https://www.cjoint.com/c/CLFnDXqHS8A
1
Bonsoir f894009

Merci pour ta réponse et pour le code c'est gentil
désolé pour le retard journée bien chargée

j'ai essayer le code et j'ai la colonne A qui se mets tout en noir
je n'arrive pas a m'en dépatouiller, ca reste toujours noir

j'ai fait quelques modifs pensant trouver mais hélas non.

merci bonne soirée

Cordialement Ray
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Salut f894009

J'ai refait des essais et j'ai toujours la colonne (A) en noir ainsi que la cellule (B1)

et je n'arrive pas a modifier pour faire fonctionner

je retourne essayer voir ce qui ne va pas

Merci et bonne après midi

Cordialement Raym
0
Bonjour f894009,

C'est avec un peu de mal que j'ai enfin réussi a faire fonctionner le code que tu fait
je t'en remercie maintenant ça fonctionne bien

Par contre avec le code ci-dessous qui me permet de choisir un répertoire, ca fonctionne mais si je me trompe en cliquant sur (Annuler) ou autre fausse manipulation, cela engendre un message d'erreur.

Pourrai tu svp me faire un test qui ferai en sorte de reposer la question si je me trompe, que je sois obliger d'effectuer un choix de D-D.

Encore merci pour le petit code je te souhaite un agréable Dimanche

Bien cordialement Ray


Function ChoisirDossier()
Dim objShell, objFolder, SecuriteSlash As Byte

With UserForm1
Set objShell = CreateObject("Shell.Application")
Set objFolder = objShell.BrowseForFolder(&H0&, "Choisissez un répertoire", &H1&)
Volume = Left(objFolder.ParentFolder, Len(objFolder.ParentFolder) - 4) & " "

If objFolder Is Nothing Then GoTo EndProc
If Left(objFolder.self.Path, 2) = ":" Then GoTo EndProc

ChoisirDossier = objFolder.self.Path
SecuriteSlash = InStr(objFolder.Title, ":")
Chemin = objFolder.self.Path

If SecuriteSlash > 0 Then ChoisirDossier = Left(ChoisirDossier, Len(ChoisirDossier) - 1)
EndProc:
Set objFolder = Nothing
Set objShell = Nothing
.Label2.Caption = "Disque dur: " & Volume 'Disque dur
.Label3.Caption = "Répertoire: " & Chemin 'Chemin répertoire
End With
End Function
0
f894009 Messages postés 17187 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 1 mai 2024 1 704
29 déc. 2013 à 15:28
bonjour,

Function ChoisirDossier()
Dim objShell, objFolder, SecuriteSlash As Byte

With UserForm1
Set objShell = CreateObject("Shell.Application")
Set objFolder = objShell.BrowseForFolder(&H0&, "Choisissez un répertoire", &H1&)

If objFolder Is Nothing Then GoTo EndProc
If Left(objFolder.self.Path, 2) = ":" Then GoTo EndProc

Volume = Left(objFolder.ParentFolder, Len(objFolder.ParentFolder) - 4) & " "

ChoisirDossier = objFolder.self.Path
SecuriteSlash = InStr(objFolder.Title, ":")
Chemin = objFolder.self.Path

If SecuriteSlash > 0 Then ChoisirDossier = Left(ChoisirDossier, Len(ChoisirDossier) - 1)

.Label2.Caption = "Disque dur: " & Volume 'Disque dur
.Label3.Caption = "Répertoire: " & Chemin 'Chemin répertoire

EndProc:
Set objFolder = Nothing
Set objShell = Nothing
End With
End Function
0
Salut f894009

Merci pour ta réponse c'est gentil

Quand je selectionne le répertoire et en supposant que j'appuie sur "annuler" car je me suis tromper cela engendre une erreur dans le code UserForm_Click()

l'erreur d'execution "5" ou appel de procédure incorrect

la variable Chemin est declarer Public dans un module

Merci de ton aide bonne fin d'après midi

Cdlt Raymond



Sub UserForm_Click()
Dim Fso, F, Fc
ListBox1.Clear
Columns("A:A").ClearContents
Set Fso = CreateObject("Scripting.FileSystemObject")

Set F = Fso.Getfolder(Chemin) '*** Erreur mets ligne se mets en jaune

For Each Fc In F.Files
ListBox1.AddItem Fc.Name
Next
Set Fso = Nothing

'*** Transfert automatiquement la liste vers la Feuil1
With ListBox1
Sheets("Feuil1").Range(Cells(1, 1), Cells(.ListCount, 1)) = .List
End With
Label1.Caption = ListBox1.ListCount & " Films" 'Nombres de films
End Sub
0
f894009 Messages postés 17187 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 1 mai 2024 1 704
29 déc. 2013 à 19:33
Re,

Comment est appelee la fonction ChoisirDossier ?????
0
Bonsoir f894009

j'appelle la fonction de cette manière ci-dessous

ToggleButton je n'avais jamais utiliser alors j'ai essayer pour le fun
je vais mettre des commandButton par la suite

merci a toi bonne soirée

Cdlt Ray


Private Sub ToggleButton7_Click()
If ToggleButton7 = True Then
ToggleButton7.BackColor = vbGreen

Chemin = ChoisirDossier 'Appel de la fonction

ToggleButton7 = False
ToggleButton7.BackColor = vbGreen
End If

End Sub
0
f894009 Messages postés 17187 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 1 mai 2024 1 704
29 déc. 2013 à 20:50
Re,

pour moi ca marche, voir ci-dessous

https://www.cjoint.com/c/CLDuXxq73xs
0
Bonjour f894009

Bien recu le fichier merci bien

effectivement cela fonctionne avec ton fichier

je me permets de t'envoyer le mien, si tu peux svp regarder quand tu aura du temps

ce qui cloche, fait du fichier comme bon te semble, j'ai la sauvegarde.

Merci a toi pour ton aide, bon début de semaine.

voici le lien: http://www.cjoint.com/?CLEihrUuXRz

Cdlt Ray
0
f894009 Messages postés 17187 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 1 mai 2024 1 704
30 déc. 2013 à 09:45
Bonjour,

Je recupere le fichier et vous tiens au courant.

A+
0
f894009 Messages postés 17187 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 1 mai 2024 1 704
30 déc. 2013 à 10:16
Re,

deux couleurs definies et change userform1_click par Affiche_liste:

https://www.cjoint.com/c/CLEknpLmNaZ
0
Salut

Merci pour les modifications c'est sympa a toi

bon j'ai toujours l'erreur

Si je clic par ex: sur "annuler" lors du choix du D-D alors j'ai l'erreur, donc
tant qu'une liste n'ai pas afficher la moindre manipulation provoque l'erreur.

Mais dès qu'une liste est afficher alors plus de problème.

je pense qu'il faudrait tester: que tant que la liste est vide ou qu'une liste n'ai pas afficher aucune action sur les ToggleButton ne doit etre possible

Merci bien pour ton aide, bonne après midi

Ray
0
f894009 Messages postés 17187 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 1 mai 2024 1 704
30 déc. 2013 à 17:26
Re,

Il est sur que si vous cliquez sur un des boutons sans avoir choisi un dossier et une liste, ca va pas le faire!!!!!!

Il faut que vous ne puissiez pas cliquez sur les boutons si pas de liste affichee
0
Re,
Merci pour la réponse et effectivement

Voila tout le problème est la

Je suis dessus, j'essai de trouver comment faire

(1) Bloquer les boutons pour éviter toutes actions et ainsi éviter les erreurs.

(2) il me faut choisir le disk dur voir un sous répertoire et tester de manière a afficher ma liste sans erreur,
quelle soit la raison par (annuler) ou X raison puis une fois la liste afficher.

(3) Donner l'autorisation aux boutons seulement a ce moment.

mais je ne n'arrive pas, ca fait déja un moment que j'essai sans bon résultat.

Voila Mr f894009 bon bah j'y retourne, trop chiant ces messages d'erreurs.

A plus tard et bonne soirée

Cdlt Ray
0
Salut polux31

Merci pour ta réponse, pour ce que tu propose je pense que je vais y arriver

le probleme c'est au moment de choisir

(1) le disk dur
(2) le ou les sous répertoires

le soucis c'est qu'il ne faut pas faire d'erreur ou bien annuler ou abandonner en route du choix ou bien X autres raisons, sinon ca plante et m'envoie les messages désagréables.

ceci c'est pas grave, ca plante pas Excel, déja bien, mais juste de ne pas avoir les messages.

Merci pour les infos

Bonne journée a toi

Cdlt Ray
0
Salut f894009,

Merci pour le fichier, alors ton fichier fonctionne bien

j'ai repris et adapter sur mon programme qui a évoluer

maintenant tout fonctionne également.

Merci beaucoup pour ton aide et surtout pour ta patience, je sais bien que ce n'ai pas toujours facile de se comprendre, enfin le résultat est la et c'est l'essentiel.

Je te souhaite un excellent réveillon de jour de l'an et encore avec tous mes remerciements 2013 ihihih

Bien cordialement Raymond
merci bonne soirée a toi et tes proches
0
f894009 Messages postés 17187 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 1 mai 2024 1 704
1 janv. 2014 à 09:24
Bonjour et meilleurs voeux a vous et votre famille
0
Bonjour f894009

Merci beaucoup c'est très sympa, qu'il en soit de mème, meilleurs voeux a vous et tous vos

proches et naturellement une très bonne santé pour tous, sans quoi rien n'est possible .

Bonne année 2014

Raymond
0