|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Membre régulier
![]() Inscription : septembre 2011 Messages : 86 ![]() |
Bonjour à tous
,Je suis en galère depuis plusieurs jours sur une macro utilisant des tableaux. Pour comprendre, voici mon bout de code : Code :
Qu'est-ce que cela signifie ? Quelqu'un peut m'éclairer ? Merci d'avance, |
||
|
|
00
|
|
|
#2 |
|
Membre régulier
![]() Inscription : septembre 2011 Messages : 86 ![]() |
Je viens de trouver mon erreur.
Le tableau LN était trop petit par rapport au tableau Tbl. Il m'a donc simplement fallu accorder la taille des deux. ![]() Désolée...
|
|
|
00
|
|
|
#3 | ||
|
Membre régulier
![]() Inscription : septembre 2011 Messages : 86 ![]() |
Finalement j'aurais qd même besoin de votre aide !
Je n'arrive pas à remplir mon tableau. J'ai l'impression qu'il ne me le remplit pas à la ligne . Et de ce fait, j'ai une erreur dans ce code : Code :
Merci d'avance |
||
|
|
00
|
|
|
#4 |
|
Membre éprouvé
![]() Franck PRESSEInscription : août 2010 Messages : 202 ![]() |
Bonjour,
Tout d'abord milles excuses car je n'ai pas d'explication à apporter..... Cependant, ton code fonctionnera si tu remplaces : par : Une autre petite correction à apporter concernant DerL. Cette variable "représente" un nombre entier. Tu le sais. Donc il vaux mieux la déclarer en tant que "Entier" plutôt que "Variant". Remplace donc : par : Code :
Dim DerL As Integer 'ou Long si le nombre de lignes est appelé à dépasser 32767...
__________________
Cordialement, Franck P. Ps : n'oubliez pas de placer vos posts comme "résolus" ( ) si tel est le cas...
|
|
|
10
|
|
|
#5 |
|
Membre régulier
![]() Inscription : septembre 2011 Messages : 86 ![]() |
Merci Pijaku pour tes conseils.
![]() En fait, j'ai un peu tricher mais j'ai remplacé par un entier (20 entre autre) et par un autre (34) et ça fonctionne. M'enfin, si quelqu'un peut m'éclairer, je suis preneuse |
|
|
00
|
|
|
#6 | |
|
Membre éprouvé
![]() Franck PRESSEInscription : août 2010 Messages : 202 ![]() |
Citation:
Plutôt que de corriger des bouts de code les uns après les autres, il serait préférable que tu nous dises exactement ce que tu souhaites réaliser, et, le cas échéant, que tu nous donnes l'intégralité du code concerné...
__________________
Cordialement, Franck P. Ps : n'oubliez pas de placer vos posts comme "résolus" ( ) si tel est le cas...
|
|
|
|
00
|
|
|
#7 | ||
|
Membre régulier
![]() Inscription : septembre 2011 Messages : 86 ![]() |
Ok. C'est vrai que je me mélange un peu.
Je voudrais transmettre ma mise en forme de mon tableur Excel dans une ListView (au moins la couleur de police). Voici mon code : Code :
Code :
.ListItems(.ListItems.Count).ListSubItems.ForeColor = RGB(0, 0, 0) Mais j'ai l'impression que mon tableau LN est vide... ![]() Est-on sûr et certain que l'on peut "sauvegarder" dans une cellule ou un tableau (ensemble de cellules) la mise en forme d'une autre cellule ? Code :
LN(D.Row, D.Column) = D.Interior.Color |
||
|
|
00
|
|
|
#8 | ||||||||||||
|
Membre éprouvé
![]() Franck PRESSEInscription : août 2010 Messages : 202 ![]() |
Attention, Loooooongue réponse...
Citation:
Citation:
Si tu permets on va reprendre depuis le début, enfin là ou ça commence à "déconner". Code :
2- les lignes : Code :
3- LN(D.Row, D.Column) pour D allant de A2 à AF19 nous donne un tableau comme suit : LN(2, 1) = blabla LN(2, 2) = bla bla Or, il s'avère que les indices des tableaux débutent à 0. Ce qui veux dire que ta variable tableau LN, se remplit automatiquement de "rien" pour toutes ses valeurs de LN(0, 0) à LN(2, 1). Pour modifier cela, (c'est important de le faire pour la erstitution des données), change la ligne : Code :
LN(D.Row, D.Column) = D.Interior.Color Code :
LN(D.Row - 2, D.Column - 1) = D.Interior.Color Tu appelles une autre procédure (IniListview) pour la restitution des données. Or il y a forcément des données communes aux deux procédures (IniListview et UserForm_Initialize). Donc les variables communes doivent être déclarées en tête de module. Pour ne pas compliquer, j'ai intégré la restitution des données dans la procédure Initialise. Ton code : Code :
Non ton tableau LN n'est pas vide, mais pour remplir ta listview, tu n'utilises pas LN, mais ta variable de type range : Tbl........ Marche pas! 2- Pour ajouter à ta listview le contenu de ta variable tableau LN, il convient de boucler, non pas sur la listview, mais sur les éléments de ton tableau. Soit : Code :
Code :
Code :
Je voudrais transmettre ma mise en forme de mon tableur Excel dans une ListView (au moins la couleur de police). Essaye déjà d'intégrer tout ce code, et reviens pour faire un peu de coloriage avec tonton Francky
__________________
Cordialement, Franck P. Ps : n'oubliez pas de placer vos posts comme "résolus" ( ) si tel est le cas...
|
||||||||||||
|
|
10
|
|
|
#9 |
|
Membre régulier
![]() Inscription : septembre 2011 Messages : 86 ![]() |
Oh, merci Frank pour ta looooongue réponse
J'ai bien compris ce qu etu m'as expliqué !!! Merci beaucoup Alors, pour avoir la couleur de police plutôt que le fond, je propose d'utiliser Reste à trouver comment mettre de la couleur dans ma ListView. ![]() Utiliser le ForeColor ?! |
|
|
00
|
|
|
#10 | ||||||
|
Membre éprouvé
![]() Franck PRESSEInscription : août 2010 Messages : 202 ![]() |
Citation:
Citation:
Ca ne fonctionne donc pas. La preuve le code ne colorie rien du tout : Code :
Bon, en attendant qu'une "tête" de ce forum trouve la bonne solution, je te livre mon "usine à gaz"... Cette procédure n'a qu'un seul avantage pour elle, ... elle a le mérite de fonctionner!... ![]() Code :
A suivre...
__________________
Cordialement, Franck P. Ps : n'oubliez pas de placer vos posts comme "résolus" ( ) si tel est le cas...
|
||||||
|
|
00
|
|
|
#11 |
|
Membre régulier
![]() Inscription : septembre 2011 Messages : 86 ![]() |
Euh...
Merci bcp pour ton code Frank ! Mais, la valeur de Couleurs(L, c) pour la première cellule est de -4105 et de ce fait, l'indice n'appartient pas à la sélection vu que ton tableau coul a une dimension de 56... J'ai du louper quelque chose... Sinon, oui, il y a des fonctions pour convertir les couleurs. J'ai jeté un oeil, j'essaie de comprendre... |
|
|
00
|
|
|
#12 | ||
|
Membre éprouvé
![]() Franck PRESSEInscription : août 2010 Messages : 202 ![]() |
Excuse moi...
2 heures + 2 boîtes d'aspirine plus tard... Je me rends compte que j'ai utilisé Font.ColorIndex... Au lieu de Font.Color! Font.Color stocke la couleur RGB sous forme d'un entier Long, et donc fonctionne à la fois pour Font.Color et pour ForeColor... Donc ton code (plus petit que le dernier) : Code :
__________________
Cordialement, Franck P. Ps : n'oubliez pas de placer vos posts comme "résolus" ( ) si tel est le cas...
|
||
|
|
00
|
|
|
#13 |
|
Membre régulier
![]() Inscription : septembre 2011 Messages : 86 ![]() |
Wow !!!
Merci bcp Tonton Francky !!!! C'est presque ça ! Encore quelques réglages ! Je verrais ça demain Bonne soirée Non, en fait c'est carrément ça que je voulais !!! Mille merci !!!
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com