Objet requis
Résolu
jean300
Messages postés
374
Date d'inscription
Statut
Membre
Dernière intervention
-
jean300 Messages postés 374 Date d'inscription Statut Membre Dernière intervention -
jean300 Messages postés 374 Date d'inscription Statut Membre Dernière intervention -
A voir également:
- Erreur de compilation objet requis
- Vente objet occasion entre particulier - Guide
- Erreur 3000 france tv - Forum Lecteurs et supports vidéo
- Objet interdit en cabine ryanair - Guide
- Erreur 0x80070643 - Accueil - Windows
- Erreur t32 ✓ - Forum Livebox
16 réponses
Bonjour ALS35
Je ne te remercierait jamais assez pour l'excellence de ton travail pour moi
Le problème venait du fait que je n'avais pas supprimer la Mfc
Reçois toute ma gratitude
Je ne te remercierait jamais assez pour l'excellence de ton travail pour moi
Le problème venait du fait que je n'avais pas supprimer la Mfc
Reçois toute ma gratitude
Bonjour ALS35
Effectivement j'ai un problème avec la ligne de titre qui ne conserve pas la couleur (40) de A1 à AB1
De plus la Mfc supprimée se remet tout le temps
Je te remercie d'être revenu sur ce fil
Effectivement j'ai un problème avec la ligne de titre qui ne conserve pas la couleur (40) de A1 à AB1
De plus la Mfc supprimée se remet tout le temps
Je te remercie d'être revenu sur ce fil
Bonsoir ALS35,
Je te remercie de nouveau pour ta patience et le partage de tes connaissance à moi qui nul.
J'ai fouillé les 250 pages de code et trouvé ceci en rappelant que seule la plage A:AB la Mfc doit être supprimée.
La Mfc qui concerne les colonnes AD et AF soit être conservée.
Voici ce que j'ai trouvé :
Feuil3ThisWorkbook
</code> 'Standardisation des formats des données de la feuille Base
Call BaseStandardiser(BaseLig:=0, DspMsg:=False)
'If BaseStandardiser(BaseLig:=0, DspMsg:=False) Then MsgBox "La vérification de la feuille Base a rétabli certains formats de données"
'Format MFC et Bordures de la feuille Base
Call BaseFormaterFeuille</code>
Feuil3
</code>'Format MFC et Bordures de la feuille Base
Call BaseFormaterFeuille</code>
Module_Action
</code> 'Retire les MFC
ThisWorkbook.Sheets(VisiteNomFeuille).Cells.FormatConditions.Delete</code>
Module_FeuillesEtBase
'-----------------------------------------
</code>'Ajout des MFC et Bordures en feuille Base
'-----------------------------------------
Public Sub BaseFormaterFeuille()
'Les appelants doivent déprotéger Base avant l'appel (ne pas déprotéger ici cause imbrications des [dé]protections)
If BaseIsProtected(Caller:="BaseFormaterFeuille") Then Exit Sub
'Effacer toutes les MFC de la feuille
ThisWorkbook.Sheets(BaseNomFeuille).Cells.FormatConditions.Delete
'Ajoute MFC couleur de fond lignes paires
Call BaseAjouterMFCFond(BaseLig0 + 1, NbMaxLigAv2007) '* 2 pour être à peu près sûr de couvrir toutes les lignes potentielles
'Suppression des bordures
Call BaseSupprimerBordures(BaseLig0 + 1, NbMaxLigAv2007) '* 2 pour être à peu près sûr de couvrir toutes les lignes potentielles
'Numéro de la dernière ligne valorisée non filtrée de la feuille Base
If ThisWorkbook.Sheets(BaseNomFeuille).AutoFilterMode Then ThisWorkbook.Sheets(BaseNomFeuille).Cells.AutoFilter 'Sécurise le calcul de BaseNblig
BaseNbLig = ThisWorkbook.Sheets(BaseNomFeuille).Range(BaseColNom & Rows.Count).End(xlUp).Row
'Ajoute des bordures
Call BaseAjouterBordures(BaseLig0 + 1, BaseNbLig)
End Sub</code>
Module_FeuillesEtBase
Je te remercie de nouveau pour ta patience et le partage de tes connaissance à moi qui nul.
J'ai fouillé les 250 pages de code et trouvé ceci en rappelant que seule la plage A:AB la Mfc doit être supprimée.
La Mfc qui concerne les colonnes AD et AF soit être conservée.
Voici ce que j'ai trouvé :
Feuil3ThisWorkbook
</code> 'Standardisation des formats des données de la feuille Base
Call BaseStandardiser(BaseLig:=0, DspMsg:=False)
'If BaseStandardiser(BaseLig:=0, DspMsg:=False) Then MsgBox "La vérification de la feuille Base a rétabli certains formats de données"
'Format MFC et Bordures de la feuille Base
Call BaseFormaterFeuille</code>
Feuil3
</code>'Format MFC et Bordures de la feuille Base
Call BaseFormaterFeuille</code>
Module_Action
</code> 'Retire les MFC
ThisWorkbook.Sheets(VisiteNomFeuille).Cells.FormatConditions.Delete</code>
Module_FeuillesEtBase
'-----------------------------------------
</code>'Ajout des MFC et Bordures en feuille Base
'-----------------------------------------
Public Sub BaseFormaterFeuille()
'Les appelants doivent déprotéger Base avant l'appel (ne pas déprotéger ici cause imbrications des [dé]protections)
If BaseIsProtected(Caller:="BaseFormaterFeuille") Then Exit Sub
'Effacer toutes les MFC de la feuille
ThisWorkbook.Sheets(BaseNomFeuille).Cells.FormatConditions.Delete
'Ajoute MFC couleur de fond lignes paires
Call BaseAjouterMFCFond(BaseLig0 + 1, NbMaxLigAv2007) '* 2 pour être à peu près sûr de couvrir toutes les lignes potentielles
'Suppression des bordures
Call BaseSupprimerBordures(BaseLig0 + 1, NbMaxLigAv2007) '* 2 pour être à peu près sûr de couvrir toutes les lignes potentielles
'Numéro de la dernière ligne valorisée non filtrée de la feuille Base
If ThisWorkbook.Sheets(BaseNomFeuille).AutoFilterMode Then ThisWorkbook.Sheets(BaseNomFeuille).Cells.AutoFilter 'Sécurise le calcul de BaseNblig
BaseNbLig = ThisWorkbook.Sheets(BaseNomFeuille).Range(BaseColNom & Rows.Count).End(xlUp).Row
'Ajoute des bordures
Call BaseAjouterBordures(BaseLig0 + 1, BaseNbLig)
End Sub</code>
Module_FeuillesEtBase
'----------------------------------------------
'Ajoute la MFC fond alterné sur la feuille Base
'----------------------------------------------
Public Sub BaseAjouterMFCFond(ByVal LigDeb As Long, LigFin As Long)
'Les appelants doivent déprotéger Base avant l'appel (ne pas déprotéger ici cause imbrications des [dé]protections)
If BaseIsProtected(Caller:="BaseAjouterMFCFond") Then Exit Sub
'Mise en forme conditionnelle colonnes vertes
With ThisWorkbook.Sheets(BaseNomFeuille).Range(BaseColNom & LigDeb & ":" & BaseColDateMiseAJour & LigFin)
.FormatConditions.Add Type:=xlExpression, Formula1:="=SI(ET(MOD(LIGNE();2)=0;INDIRECT(""$A"" & LIGNE())<>"""");VRAI;FAUX)"
.FormatConditions(1).Interior.ColorIndex = 35
End With
'Mise en forme conditionnelle colonne jaune
With ThisWorkbook.Sheets(BaseNomFeuille).Range(BaseColCc & LigDeb & ":" & BaseColCc & LigFin)
.FormatConditions.Add Type:=xlExpression, Formula1:="=SI(ET(MOD(LIGNE();2)=0;INDIRECT(""$A"" & LIGNE())<>"""");VRAI;FAUX)"
.FormatConditions(1).Interior.ColorIndex = 19
End With
'Mise en forme conditionnelle colonne rose
With ThisWorkbook.Sheets(BaseNomFeuille).Range(BaseColBcc & LigDeb & ":" & BaseColBcc & LigFin)
.FormatConditions.Add Type:=xlExpression, Formula1:="=SI(ET(MOD(LIGNE();2)=0;INDIRECT(""$A"" & LIGNE())<>"""");VRAI;FAUX)"
.FormatConditions(1).Interior.ColorIndex = 38
End With
End Sub
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bonjour ALS35,
Je pense avoir trouvé car après avoir annihiler ces codes je n'ai plus de problème. Apparemment.
J'ai placé un double apostrophe ' ' pour me repérer.
En te remerciant et en attendant ton verdict pour placer le sujet en résolu.
Module_FeuillesEtBase :
Je pense avoir trouvé car après avoir annihiler ces codes je n'ai plus de problème. Apparemment.
J'ai placé un double apostrophe ' ' pour me repérer.
En te remerciant et en attendant ton verdict pour placer le sujet en résolu.
Module_FeuillesEtBase :
'Ajoute MFC couleur de fond lignes paires
'' Call BaseAjouterMFCFond(BaseLig0 + 1, NbMaxLigAv2007) '* 2 pour être à peu près sûr de couvrir toutes les lignes potentielles
'' If BaseIsProtected(Caller:="BaseAjouterMFCFond") Then Exit Sub
'Mise en forme conditionnelle colonnes vertes
'' With ThisWorkbook.Sheets(BaseNomFeuille).Range(BaseColNom & LigDeb & ":" & BaseColDateMiseAJour & LigFin)
'' .FormatConditions.Add Type:=xlExpression, Formula1:="=SI(ET(MOD(LIGNE();2)=0;INDIRECT(""$A"" & LIGNE())<>"""");VRAI;FAUX)"
'' .FormatConditions(1).Interior.ColorIndex = 35
'' End With
Bonjour jean300,
Difficile de répondre car d'après ce que je comprends ici il n'y a qu'une toute partie du code. Mais si le fonctionnement te convient, c'est parfait.
Attention cependant à ne pas avoir supprimé trop de fonctionnalités, car je vois que tu mis en commentaire la mise en forme conditionnelle sur les lignes paires et également sur des colonnes ! amis je ne connais le fonctionnement exact.
L’important est que tu saches ce que tu veux obtenir.
Si pb, ton fichier avec le code complet en message privé (en effaçant éventuellement les données vraiment confidentielles) => la petite enveloppe en haut à côté de ton pseudo, puis Message Privé, puis Destinataire puis ton message avec fichier lié par cjoint.com ou mon-partage.fr...
Décris bien ce que tu veux.
Cordialement
Difficile de répondre car d'après ce que je comprends ici il n'y a qu'une toute partie du code. Mais si le fonctionnement te convient, c'est parfait.
Attention cependant à ne pas avoir supprimé trop de fonctionnalités, car je vois que tu mis en commentaire la mise en forme conditionnelle sur les lignes paires et également sur des colonnes ! amis je ne connais le fonctionnement exact.
L’important est que tu saches ce que tu veux obtenir.
Si pb, ton fichier avec le code complet en message privé (en effaçant éventuellement les données vraiment confidentielles) => la petite enveloppe en haut à côté de ton pseudo, puis Message Privé, puis Destinataire puis ton message avec fichier lié par cjoint.com ou mon-partage.fr...
Décris bien ce que tu veux.
Cordialement
Bonjour ALS35
Cher ami je suis particulièrement touché par ton amabilité, je vais continuer cette semaine à vérifier le tout avant un séjour à l'hosto (Alzheimer oblige) je suis particulièrement conscient que ma fin approche mais je suis tranquille.
Je vais clôturer ce fil et reviendrai vers toi s'il le faut et si je peux.
Je te remercie pour tout ce que tu as fais pour me venir en aide.
Que Dieu te bénisse.
Cher ami je suis particulièrement touché par ton amabilité, je vais continuer cette semaine à vérifier le tout avant un séjour à l'hosto (Alzheimer oblige) je suis particulièrement conscient que ma fin approche mais je suis tranquille.
Je vais clôturer ce fil et reviendrai vers toi s'il le faut et si je peux.
Je te remercie pour tout ce que tu as fais pour me venir en aide.
Que Dieu te bénisse.
Bonjour ALS35
Je souhaiterai qu'à l'activation de la feuille Base il n'y ait pas la ligne colorée en jaune
En te remerciant
PS : fichier en mp
Je souhaiterai qu'à l'activation de la feuille Base il n'y ait pas la ligne colorée en jaune
En te remerciant
PS : fichier en mp
Bonjour jean300,
J'ai bien reçu ton fichier,
Dans un premier temps , dans la procédure EffCouleur, remplace déjà
Set MaPlage = Range("A3:AB" & DLigne)
par
Set MaPlage = Range("A2:AB" & DLigne)
Cela évitera d'avoir la ligne 2 toujours en jaune après l'avoir sélectionnée une seule fois
De plus quand tu cliques dans une autre colonne que A ou B, la ligne précédemment sélectionnée reste jaune. Si c'est ça que tu veux éviter alors rajoute dans le code de la feuille Base la procédure suivante :
Private Sub Worksheet_Activate()
EffCouleur
End Sub
Cela devrait encore améliorer le fonctionnement
Cordialement
J'ai bien reçu ton fichier,
Dans un premier temps , dans la procédure EffCouleur, remplace déjà
Set MaPlage = Range("A3:AB" & DLigne)
par
Set MaPlage = Range("A2:AB" & DLigne)
Cela évitera d'avoir la ligne 2 toujours en jaune après l'avoir sélectionnée une seule fois
De plus quand tu cliques dans une autre colonne que A ou B, la ligne précédemment sélectionnée reste jaune. Si c'est ça que tu veux éviter alors rajoute dans le code de la feuille Base la procédure suivante :
Private Sub Worksheet_Activate()
EffCouleur
End Sub
Cela devrait encore améliorer le fonctionnement
Cordialement
Bonjour ALS35
Je te cite :
"De plus quand tu cliques dans une autre colonne que A ou B, la ligne précédemment sélectionnée reste jaune." C"est ce que je souhaite.
J'aimerai seulement que lors de l'activation de la feuille Base la ligne jaune n'apparaisse pas.
Je te cite :
"De plus quand tu cliques dans une autre colonne que A ou B, la ligne précédemment sélectionnée reste jaune." C"est ce que je souhaite.
J'aimerai seulement que lors de l'activation de la feuille Base la ligne jaune n'apparaisse pas.
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim plage As Range
Dim Dligne As Long
Dim MaPlage As Range
Set MaPlage = Range("A:AB")
Sub EffCouleur()
Dim Ligne As Long
Dim Dligne As Long
Dim MaPlage As Range
Set MaPlage = Range("A:AB")
Seule les lignes impaires se colorie en jaune pas les lignes pairs
J te remercie de m'aider car je ne m'en sors pas
Bonjour,
Maintenant que tu n'as plus d'erreur de syntaxe, on arrive sur le fonctionnement.
Explique exactement ce que tu veux et plutôt qu'une image difficilement exploitable poste directement ton code ici en utilisant la flèche et en choisissant Basic PUISen mettant le code entre les ><.
Cordialement
Maintenant que tu n'as plus d'erreur de syntaxe, on arrive sur le fonctionnement.
Explique exactement ce que tu veux et plutôt qu'une image difficilement exploitable poste directement ton code ici en utilisant la flèche et en choisissant Basic PUISen mettant le code entre les ><.
Cordialement
Bonjour cher ami
Si je pouvais ce serait avec plaisir que je mettrai le fichier, mais tout est confidentiel
Ce que je recherche c'est que sur la feuille Base une ligne sur deux soit en vert clair
Lors d'un clic en colonne A ou B la ligne se colorie en jaune clair
C'est pourquoi je ne peux utiliser de Mfc
Le tout limité à la plage A:AB
Si je pouvais ce serait avec plaisir que je mettrai le fichier, mais tout est confidentiel
Ce que je recherche c'est que sur la feuille Base une ligne sur deux soit en vert clair
Lors d'un clic en colonne A ou B la ligne se colorie en jaune clair
C'est pourquoi je ne peux utiliser de Mfc
Le tout limité à la plage A:AB
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim plage As Range
Dim DLigne As Long
Dim MaPlage As Range
Set MaPlage = Range("A:AB")
Application.ScreenUpdating = False
If Target.Cells.Column > 2 Then Exit Sub
EffCouleur
Set plage = Application.Intersect(MaPlage, Rows(Target.Row))
If Not plage Is Nothing Then
plage.Interior.ColorIndex = 36 '(jaune clair)
End If
Application.ScreenUpdating = True
End Sub
Sub EffCouleur()
Dim Ligne As Long
Dim DLigne As Long
Dim MaPlage As Range
Set MaPlage = Range("A:AB")
Application.ScreenUpdating = False
DLigne = Range("A" & Rows.Count).End(xlUp).Row
Set MaPlage = Range("A3:AB" & DLigne)
MaPlage.Interior.ColorIndex = xlNone
For Ligne = 1 To DLigne Step 2
MaPlage.Rows(Ligne).Interior.ColorIndex = 35 '(vert clair)
Next Ligne
Application.ScreenUpdating = True
End Sub
Bonjour,
Pour moi, d'après ce que j'ai compris, le code ci-joint fonctionne bien sur les colonnes A:AB de la ligne 1 jusqu'à la dernière ligne remplie en colonne A.
Essaie et redis-moi.
Cordialement
Pour moi, d'après ce que j'ai compris, le code ci-joint fonctionne bien sur les colonnes A:AB de la ligne 1 jusqu'à la dernière ligne remplie en colonne A.
Essaie et redis-moi.
Private Sub Worksheet_SelectionChange(ByVal Target As Range) Dim DLigne As Long Dim MaPlage As Range Dim Plage As Range DLigne = Range("A" & Rows.Count).End(xlUp).Row Set MaPlage = Range("A1:AB" & DLigne) Application.ScreenUpdating = False If Target.Cells.Column > 2 Then Exit Sub EffCouleur Set Plage = Application.Intersect(MaPlage, Rows(Target.Row)) If Not Plage Is Nothing Then Plage.Interior.ColorIndex = 36 '(jaune clair) End If Application.ScreenUpdating = True End Sub Sub EffCouleur() Dim Ligne As Long Dim DLigne As Long Dim MaPlage As Range DLigne = Range("A" & Rows.Count).End(xlUp).Row Set MaPlage = Range("A1:AB" & DLigne) MaPlage.Interior.ColorIndex = xlNone For Ligne = 1 To DLigne Step 2 MaPlage.Rows(Ligne).Interior.ColorIndex = 35 '(vert clair) Next Ligne End Sub
Cordialement
Le problème est toujours là, pas de coloriage jaune pour les lignes paires de la feuille,
En te remerciant
En te remerciant
Toujours pareil, je te remercie pour ta patience et tes connaissances que tu mets à ma portée mais je pense que je vais laisser tomber.
Sur un classeur vierge ça fonctionne mais pas sur mon classeur.
Les macros sont sur la feuille Base.
En te remerciant infiniment pour tout le temps que tu as passé à me venir en aide.
ps : si tu le souhaite je peux t'adresser le classeur par mail.
Sur un classeur vierge ça fonctionne mais pas sur mon classeur.
Les macros sont sur la feuille Base.
En te remerciant infiniment pour tout le temps que tu as passé à me venir en aide.
ps : si tu le souhaite je peux t'adresser le classeur par mail.