Comment extraire les sous-chaines avant le tiret "-" dans la colonne A
ainsi que la valeur correspondante dans la colonne B pour avoir dans
Feuil2 le r=E9sultat suivant :
Laboratoire............... Abr=E9viation
Biologie Bio
Chimie Chm
Electronique Eln
Electricit=E9 Elt
Voilà qui fonctionne selon ce que j'ai compris mais le principe même de ta demande te posera éventuellement un problème, voir ligne 12 de la table.
Il serait nettement préférable de créer d'abord une liste exhaustive des Laboratoires et leur assigner une abréviation unique. Ainsi ne pas être confronté à des articles où le suffixe serait différent ou erroné pour un même laboratoire.
A ce que j'en vois l'abréviation (c'est de cela que je parlais) est bien toujours de 3 chr mais sinon tu peux d'en départir avec cherche() ou trouve(), l'essentiel n'est pas là...
puisqu'au lieu au lieu de cette recherche =SI(E2="";"";GAUCHE(INDEX(base A:A;EQUIV(E2;base B:B;0));3)) selon une meilleure organisation on irait directement dans la table laboratoire et peu importerait également le nb de chr , ce serait une et seule abréviation tel que fixée.
Pour la macro j'ai simplement déterminé base et extraction et utilisé l'enregistreur sur mes actions dans données filtre élaboré.
Cordialement.
lSteph
Bonsoir Modeste, Jacky.
J'ai essayé avec vos formulaires mais ça n'a pas marché.
Alors j'ai utilsé une macro pour le besoin, mais il reste des correstions à faire.
Voilà un fichier joint.
http://cjoint.com/?lxxC5ZsTHa
Merci.
Bonjour Apitos,
http://cjoint.com/?lylhn8Xbsq
Voilà qui fonctionne selon ce que j'ai compris mais le principe même de
ta demande te posera éventuellement un problème, voir ligne 12 de la
table.
Il serait nettement préférable de créer d'abord une liste exhaustive des
Laboratoires et leur assigner une abréviation unique.
Ainsi ne pas être confronté à des articles où le suffixe serait
différent ou erroné pour un même laboratoire.
A ce que j'en vois l'abréviation (c'est de cela que je parlais) est bien
toujours de 3 chr mais sinon tu peux d'en départir avec cherche() ou
trouve(), l'essentiel n'est pas là...
puisqu'au lieu au lieu de cette recherche
=SI(E2="";"";GAUCHE(INDEX(base A:A;EQUIV(E2;base B:B;0));3))
selon une meilleure organisation on irait directement dans la table
laboratoire et peu importerait également le nb de chr , ce serait une et
seule abréviation tel que fixée.
Pour la macro j'ai simplement déterminé base et extraction et utilisé
l'enregistreur sur mes actions dans données filtre élaboré.
Cordialement.
lSteph
Bonsoir Modeste, Jacky.
J'ai essayé avec vos formulaires mais ça n'a pas marché.
Alors j'ai utilsé une macro pour le besoin, mais il reste des
correstions à faire.
Voilà qui fonctionne selon ce que j'ai compris mais le principe même de ta demande te posera éventuellement un problème, voir ligne 12 de la table.
Il serait nettement préférable de créer d'abord une liste exhaustive des Laboratoires et leur assigner une abréviation unique. Ainsi ne pas être confronté à des articles où le suffixe serait différent ou erroné pour un même laboratoire.
A ce que j'en vois l'abréviation (c'est de cela que je parlais) est bien toujours de 3 chr mais sinon tu peux d'en départir avec cherche() ou trouve(), l'essentiel n'est pas là...
puisqu'au lieu au lieu de cette recherche =SI(E2="";"";GAUCHE(INDEX(base A:A;EQUIV(E2;base B:B;0));3)) selon une meilleure organisation on irait directement dans la table laboratoire et peu importerait également le nb de chr , ce serait une et seule abréviation tel que fixée.
Pour la macro j'ai simplement déterminé base et extraction et utilisé l'enregistreur sur mes actions dans données filtre élaboré.
Cordialement.
lSteph
Bonsoir Modeste, Jacky.
J'ai essayé avec vos formulaires mais ça n'a pas marché.
Alors j'ai utilsé une macro pour le besoin, mais il reste des correstions à faire.
Voilà un fichier joint.
http://cjoint.com/?lxxC5ZsTHa
Merci.
LSteph
...suffixe oupsss préfixe!
Bonjour Apitos,
http://cjoint.com/?lylhn8Xbsq
Voilà qui fonctionne selon ce que j'ai compris mais le principe même de ta demande te posera éventuellement un problème, voir ligne 12 de la table.
Il serait nettement préférable de créer d'abord une liste exhaustive des Laboratoires et leur assigner une abréviation unique. Ainsi ne pas être confronté à des articles où le suffixe serait différent ou erroné pour un même laboratoire.
A ce que j'en vois l'abréviation (c'est de cela que je parlais) est bien toujours de 3 chr mais sinon tu peux d'en départir avec cherche() ou trouve(), l'essentiel n'est pas là...
puisqu'au lieu au lieu de cette recherche =SI(E2="";"";GAUCHE(INDEX(base A:A;EQUIV(E2;base B:B;0));3)) selon une meilleure organisation on irait directement dans la table laboratoire et peu importerait également le nb de chr , ce serait une et seule abréviation tel que fixée.
Pour la macro j'ai simplement déterminé base et extraction et utilisé l'enregistreur sur mes actions dans données filtre élaboré.
Cordialement.
lSteph
Bonsoir Modeste, Jacky.
J'ai essayé avec vos formulaires mais ça n'a pas marché.
Alors j'ai utilsé une macro pour le besoin, mais il reste des correstions à faire.
Voilà un fichier joint.
http://cjoint.com/?lxxC5ZsTHa
Merci.
...suffixe oupsss préfixe!
Bonjour Apitos,
http://cjoint.com/?lylhn8Xbsq
Voilà qui fonctionne selon ce que j'ai compris mais le principe même de
ta demande te posera éventuellement un problème, voir ligne 12 de la
table.
Il serait nettement préférable de créer d'abord une liste exhaustive des
Laboratoires et leur assigner une abréviation unique.
Ainsi ne pas être confronté à des articles où le suffixe serait
différent ou erroné pour un même laboratoire.
A ce que j'en vois l'abréviation (c'est de cela que je parlais) est bien
toujours de 3 chr mais sinon tu peux d'en départir avec cherche() ou
trouve(), l'essentiel n'est pas là...
puisqu'au lieu au lieu de cette recherche
=SI(E2="";"";GAUCHE(INDEX(base A:A;EQUIV(E2;base B:B;0));3))
selon une meilleure organisation on irait directement dans la table
laboratoire et peu importerait également le nb de chr , ce serait une et
seule abréviation tel que fixée.
Pour la macro j'ai simplement déterminé base et extraction et utilisé
l'enregistreur sur mes actions dans données filtre élaboré.
Cordialement.
lSteph
Bonsoir Modeste, Jacky.
J'ai essayé avec vos formulaires mais ça n'a pas marché.
Alors j'ai utilsé une macro pour le besoin, mais il reste des
correstions à faire.
Voilà qui fonctionne selon ce que j'ai compris mais le principe même de ta demande te posera éventuellement un problème, voir ligne 12 de la table.
Il serait nettement préférable de créer d'abord une liste exhaustive des Laboratoires et leur assigner une abréviation unique. Ainsi ne pas être confronté à des articles où le suffixe serait différent ou erroné pour un même laboratoire.
A ce que j'en vois l'abréviation (c'est de cela que je parlais) est bien toujours de 3 chr mais sinon tu peux d'en départir avec cherche() ou trouve(), l'essentiel n'est pas là...
puisqu'au lieu au lieu de cette recherche =SI(E2="";"";GAUCHE(INDEX(base A:A;EQUIV(E2;base B:B;0));3)) selon une meilleure organisation on irait directement dans la table laboratoire et peu importerait également le nb de chr , ce serait une et seule abréviation tel que fixée.
Pour la macro j'ai simplement déterminé base et extraction et utilisé l'enregistreur sur mes actions dans données filtre élaboré.
Cordialement.
lSteph
Bonsoir Modeste, Jacky.
J'ai essayé avec vos formulaires mais ça n'a pas marché.
Alors j'ai utilsé une macro pour le besoin, mais il reste des correstions à faire.
Voilà un fichier joint.
http://cjoint.com/?lxxC5ZsTHa
Merci.
Modeste
Bonsour® LSteph
La solution de JB est on ne peut plus judicieuse et élégante...
Notre JB fait toujours preuve d'une présence efficace, pour son didactisme par l'exemple.
@+ ;o)))
Bonsour® LSteph
La solution de JB est on ne peut plus judicieuse et élégante...
Notre JB fait toujours preuve d'une présence efficace, pour son didactisme par
l'exemple.
La solution de JB est on ne peut plus judicieuse et élégante...
Notre JB fait toujours preuve d'une présence efficace, pour son didactisme par l'exemple.
@+ ;o)))
LSteph
Bonjour,
oui certes cela répond exactement, mais cela n'écarte pas le le bug ou plutôt dû à un souci d'organisation des données que j'évoquais. Créer d'abord une table des laboratoires serait préférable en cas de libellé d'article.. lire aussi ma proposition, puisque tu m'attires sur celle de JB. Merci d'ailleurs car tu as eu le nez creux, elle m'avait réellement échappé. Pour le reste, j'ai préfèré quand même utiliser d'abord le contexte et les outils d'excel avant d'aller chercher ailleurs.(Scripting.Dictionary) cela dit c'est fort intéressant ce qu'on peut en faire.
La solution de JB est on ne peut plus judicieuse et élégante...
Notre JB fait toujours..
Je ne crois pas qu'il soit vraiment à propos de parler à la 3ème personne sur un forum .. JB pardonne moi puisqu'indirectement on m'y engage je donne ma pensée:
Sur le style du code, ce que je n'aime pas du tout c'est l'absence presque systématique de déclaration des variables,(faut pas oublier tous ceux qui utilisent Option explicit même s'il leur est loisible d'adapter) pour le reste c'est un ensemble soutenu d'excellentes idées et elles sont encore plus appréciées et efficaces pour le suivi du forum lorsqu'il prend soin de donner formules ou solutions dans le post en plus du lien vers jb-...
Oui, en dehors de ces appréciations qui n'engagent que mes goûts et sentiments personnels, s'il m'est permis de formuler un avis je trouve que JB est vraiment un excellent contributeur.
Cordialement.
lSteph
Bonsour® LSteph
La solution de JB est on ne peut plus judicieuse et élégante...
Notre JB fait toujours preuve d'une présence efficace, pour son didactisme par l'exemple.
@+ ;o)))
Bonjour,
oui certes cela répond exactement, mais cela n'écarte pas le le bug ou
plutôt dû à un souci
d'organisation des données que j'évoquais.
Créer d'abord une table des laboratoires serait préférable en cas de
libellé d'article.. lire aussi ma proposition, puisque tu m'attires sur
celle de JB. Merci d'ailleurs car tu as eu le nez creux, elle m'avait
réellement échappé.
Pour le reste, j'ai préfèré quand même utiliser d'abord
le contexte et les outils d'excel avant d'aller
chercher ailleurs.(Scripting.Dictionary) cela dit c'est fort
intéressant ce qu'on peut en faire.
La solution de JB est on ne peut plus judicieuse et élégante...
Notre JB fait toujours..
Je ne crois pas qu'il soit vraiment à propos de parler à la 3ème
personne sur un forum ..
JB pardonne moi puisqu'indirectement on m'y engage je donne ma pensée:
Sur le style du code, ce que je n'aime pas du tout c'est
l'absence presque systématique de déclaration des variables,(faut pas
oublier tous ceux qui utilisent Option explicit même s'il leur est
loisible d'adapter) pour le reste
c'est un ensemble soutenu d'excellentes idées et elles sont encore plus
appréciées et efficaces pour le suivi du forum lorsqu'il prend soin de
donner formules ou solutions dans le post en plus du lien vers jb-...
Oui, en dehors de ces appréciations qui n'engagent que mes goûts et
sentiments personnels, s'il m'est permis de formuler un avis je trouve
que JB est vraiment un excellent contributeur.
Cordialement.
lSteph
Bonsour® LSteph
La solution de JB est on ne peut plus judicieuse et élégante...
Notre JB fait toujours preuve d'une présence efficace, pour son didactisme par
l'exemple.
oui certes cela répond exactement, mais cela n'écarte pas le le bug ou plutôt dû à un souci d'organisation des données que j'évoquais. Créer d'abord une table des laboratoires serait préférable en cas de libellé d'article.. lire aussi ma proposition, puisque tu m'attires sur celle de JB. Merci d'ailleurs car tu as eu le nez creux, elle m'avait réellement échappé. Pour le reste, j'ai préfèré quand même utiliser d'abord le contexte et les outils d'excel avant d'aller chercher ailleurs.(Scripting.Dictionary) cela dit c'est fort intéressant ce qu'on peut en faire.
La solution de JB est on ne peut plus judicieuse et élégante...
Notre JB fait toujours..
Je ne crois pas qu'il soit vraiment à propos de parler à la 3ème personne sur un forum .. JB pardonne moi puisqu'indirectement on m'y engage je donne ma pensée:
Sur le style du code, ce que je n'aime pas du tout c'est l'absence presque systématique de déclaration des variables,(faut pas oublier tous ceux qui utilisent Option explicit même s'il leur est loisible d'adapter) pour le reste c'est un ensemble soutenu d'excellentes idées et elles sont encore plus appréciées et efficaces pour le suivi du forum lorsqu'il prend soin de donner formules ou solutions dans le post en plus du lien vers jb-...
Oui, en dehors de ces appréciations qui n'engagent que mes goûts et sentiments personnels, s'il m'est permis de formuler un avis je trouve que JB est vraiment un excellent contributeur.
Cordialement.
lSteph
Bonsour® LSteph
La solution de JB est on ne peut plus judicieuse et élégante...
Notre JB fait toujours preuve d'une présence efficace, pour son didactisme par l'exemple.
@+ ;o)))
Modeste
Bonsour® LSteph avec ferveur ;o))) vous nous disiez :
Notre JB fait toujours..
Je ne crois pas qu'il soit vraiment à propos de parler à la 3ème personne sur un forum ..
;o))) foin de polémique... de part ses contributions JB fait maintenant partie des "meubles" ;o))) ses efforts louables pour ne plus mettre un lien sec vers cjoint.com, l'étoffement de son site, et au-delà du didactisme une évolution vers plus de pédagogie font et feront que sa signature appartiendra aux "incontournables" comme aimait à les signaler "notre" [MB] Monique ;o)))
@+ ;o)))
Bonsour® LSteph avec ferveur ;o))) vous nous disiez :
Notre JB fait toujours..
Je ne crois pas qu'il soit vraiment à propos de parler à la 3ème
personne sur un forum ..
;o)))
foin de polémique...
de part ses contributions JB fait maintenant partie des "meubles" ;o)))
ses efforts louables pour ne plus mettre un lien sec vers cjoint.com,
l'étoffement de son site,
et au-delà du didactisme une évolution vers plus de pédagogie
font et feront que sa signature appartiendra aux "incontournables"
comme aimait à les signaler "notre" [MB] Monique
;o)))
Bonsour® LSteph avec ferveur ;o))) vous nous disiez :
Notre JB fait toujours..
Je ne crois pas qu'il soit vraiment à propos de parler à la 3ème personne sur un forum ..
;o))) foin de polémique... de part ses contributions JB fait maintenant partie des "meubles" ;o))) ses efforts louables pour ne plus mettre un lien sec vers cjoint.com, l'étoffement de son site, et au-delà du didactisme une évolution vers plus de pédagogie font et feront que sa signature appartiendra aux "incontournables" comme aimait à les signaler "notre" [MB] Monique ;o)))
@+ ;o)))
LSteph
:-) ...Dis donc GD en tout bonne camaraderie ne m'en veuilles pas mais si tu permets:
Tu écris sous mon post , je réponds sans parler ni de Paul ni de Mick ....je ne sais où tu vois du foin??!!!
...et avec Ferveur t'exprime ce que j'en pense sans faux semblant à cet égard ..c'est sans doute le contenu de ce que j'ai écrit qui est à lire ( au lieu de relever une bribe) qu'il en ressorte l'essentiel qui nécessite d'avoir lu jusqu'en bas.
Pour le reste tu y verra que mon point de vue n'est pas si éloigné permets que j'y maintienne les nuances d'appréciation qui me sont personnelles.
Sur le sujet je pense quand même maintenir ma proposition de réponse. Sinon tu sais que tu n'as pas besoin d'autorisation pour me dire ce qui n'y convient pas!
@+
Amicalement.
Stéphane
Bonsour® LSteph avec ferveur ;o))) vous nous disiez :
Notre JB fait toujours.. Je ne crois pas qu'il soit vraiment à propos de parler à la 3ème
personne sur un forum ..
;o))) foin de polémique... de part ses contributions JB fait maintenant partie des "meubles" ;o))) ses efforts louables pour ne plus mettre un lien sec vers cjoint.com, l'étoffement de son site, et au-delà du didactisme une évolution vers plus de pédagogie font et feront que sa signature appartiendra aux "incontournables" comme aimait à les signaler "notre" [MB] Monique ;o)))
@+ ;o)))
:-) ...Dis donc GD en tout bonne camaraderie
ne m'en veuilles pas mais si tu permets:
Tu écris sous mon post , je réponds sans parler ni de Paul ni de Mick
....je ne sais où tu vois du foin??!!!
...et avec Ferveur t'exprime ce que j'en pense sans faux semblant à cet
égard
..c'est sans doute le contenu de ce que j'ai écrit qui est à lire
( au lieu de relever une bribe) qu'il en ressorte l'essentiel
qui nécessite d'avoir lu jusqu'en bas.
Pour le reste tu y verra que mon point de vue n'est pas si éloigné
permets que j'y maintienne les nuances d'appréciation qui me sont
personnelles.
Sur le sujet je pense quand même maintenir ma proposition de réponse.
Sinon tu sais que tu n'as pas besoin d'autorisation pour me dire
ce qui n'y convient pas!
@+
Amicalement.
Stéphane
Bonsour® LSteph avec ferveur ;o))) vous nous disiez :
Notre JB fait toujours..
Je ne crois pas qu'il soit vraiment à propos de parler à la 3ème
personne sur un forum ..
;o)))
foin de polémique...
de part ses contributions JB fait maintenant partie des "meubles" ;o)))
ses efforts louables pour ne plus mettre un lien sec vers cjoint.com,
l'étoffement de son site,
et au-delà du didactisme une évolution vers plus de pédagogie
font et feront que sa signature appartiendra aux "incontournables"
comme aimait à les signaler "notre" [MB] Monique
;o)))
:-) ...Dis donc GD en tout bonne camaraderie ne m'en veuilles pas mais si tu permets:
Tu écris sous mon post , je réponds sans parler ni de Paul ni de Mick ....je ne sais où tu vois du foin??!!!
...et avec Ferveur t'exprime ce que j'en pense sans faux semblant à cet égard ..c'est sans doute le contenu de ce que j'ai écrit qui est à lire ( au lieu de relever une bribe) qu'il en ressorte l'essentiel qui nécessite d'avoir lu jusqu'en bas.
Pour le reste tu y verra que mon point de vue n'est pas si éloigné permets que j'y maintienne les nuances d'appréciation qui me sont personnelles.
Sur le sujet je pense quand même maintenir ma proposition de réponse. Sinon tu sais que tu n'as pas besoin d'autorisation pour me dire ce qui n'y convient pas!
@+
Amicalement.
Stéphane
Bonsour® LSteph avec ferveur ;o))) vous nous disiez :
Notre JB fait toujours.. Je ne crois pas qu'il soit vraiment à propos de parler à la 3ème
personne sur un forum ..
;o))) foin de polémique... de part ses contributions JB fait maintenant partie des "meubles" ;o))) ses efforts louables pour ne plus mettre un lien sec vers cjoint.com, l'étoffement de son site, et au-delà du didactisme une évolution vers plus de pédagogie font et feront que sa signature appartiendra aux "incontournables" comme aimait à les signaler "notre" [MB] Monique ;o)))
@+ ;o)))
Apitos
Bonsoir à tous,
Je m'excuse pour avoir pris tout ce retard pour vous répondre, à cause de quelques empêchements.
Un grand merci pour LSteph, JB et Modeste pour leurs précieux temps qu'ils avaient pris pour me répondre.
Bonsoir à tous,
Je m'excuse pour avoir pris tout ce retard pour vous répondre, à cause
de quelques empêchements.
Un grand merci pour LSteph, JB et Modeste pour leurs précieux temps
qu'ils avaient pris pour me répondre.
Je m'excuse pour avoir pris tout ce retard pour vous répondre, à cause de quelques empêchements.
Un grand merci pour LSteph, JB et Modeste pour leurs précieux temps qu'ils avaient pris pour me répondre.
Apitos
Bonjour à tous,
'---------------- Set mondico = CreateObject("Scripting.Dictionary") Set f = Sheets("feuil1") For Each c In f.Range("B2", f.[B65000].End(xlUp)) If Not mondico.Exists(c.Value) Then mondico.Add c.Value, Left(c.Offset(0, -1), InStr(c.Offset(0, -1), "-") - 1) Next c [f2].Resize(mondico.Count, 1) = Application.Transpose(mondico.keys) [g2].Resize(mondico.Count, 1) = Application.Transpose(mondico.items)
'----------------
Chaque mois j'utilise cette macro dans un nouveau classeur.
Mais j'aimerais bien que la liste du mois précédent soit retenue.
On ne devra alors y ajouter que les nouveaux noms de laboratoires saisis dans Feuil1 et non pas créer une nouvelle liste chaque mois et effacer l'ancienne.
Merci.
Bonjour à tous,
'----------------
Set mondico = CreateObject("Scripting.Dictionary")
Set f = Sheets("feuil1")
For Each c In f.Range("B2", f.[B65000].End(xlUp))
If Not mondico.Exists(c.Value) Then mondico.Add c.Value,
Left(c.Offset(0, -1), InStr(c.Offset(0, -1), "-") - 1)
Next c
[f2].Resize(mondico.Count, 1) = Application.Transpose(mondico.keys)
[g2].Resize(mondico.Count, 1) = Application.Transpose(mondico.items)
'----------------
Chaque mois j'utilise cette macro dans un nouveau classeur.
Mais j'aimerais bien que la liste du mois précédent soit retenue.
On ne devra alors y ajouter que les nouveaux noms de laboratoires
saisis dans Feuil1 et non pas créer une nouvelle liste chaque mois et
effacer l'ancienne.
'---------------- Set mondico = CreateObject("Scripting.Dictionary") Set f = Sheets("feuil1") For Each c In f.Range("B2", f.[B65000].End(xlUp)) If Not mondico.Exists(c.Value) Then mondico.Add c.Value, Left(c.Offset(0, -1), InStr(c.Offset(0, -1), "-") - 1) Next c [f2].Resize(mondico.Count, 1) = Application.Transpose(mondico.keys) [g2].Resize(mondico.Count, 1) = Application.Transpose(mondico.items)
'----------------
Chaque mois j'utilise cette macro dans un nouveau classeur.
Mais j'aimerais bien que la liste du mois précédent soit retenue.
On ne devra alors y ajouter que les nouveaux noms de laboratoires saisis dans Feuil1 et non pas créer une nouvelle liste chaque mois et effacer l'ancienne.
Merci.
JB
Bonjour,
Sub Essai() Set mondico = CreateObject("Scripting.Dictionary") '------------- Set f = Sheets("feuil2") For Each c In f.Range("f2", f.[f65000].End(xlUp)) mondico.Add c.Value, c.Offset(0, 1) Next c '------------- Set f = Sheets("feuil1") For Each c In f.Range("B2", f.[B65000].End(xlUp)) If Not mondico.Exists(c.Value) Then mondico.Add c.Value, Left(c.Offset(0, -1), InStr(c.Offset(0, -1), "-") - 1) Next c [f2].Resize(mondico.Count, 1) = Application.Transpose(mondico.keys) [g2].Resize(mondico.Count, 1) = Application.Transpose(mondico.items) End Sub
http://cjoint.com/?mdrsEr1jDX
JB
On 3 déc, 15:01, Apitos wrote:
Bonjour à tous,
'---------------- Set mondico = CreateObject("Scripting.Dictionary") Set f = Sheets("feuil1") For Each c In f.Range("B2", f.[B65000].End(xlUp)) If Not mondico.Exists(c.Value) Then mondico.Add c.Value, Left(c.Offset(0, -1), InStr(c.Offset(0, -1), "-") - 1) Next c [f2].Resize(mondico.Count, 1) = Application.Transpose(mondico.keys) [g2].Resize(mondico.Count, 1) = Application.Transpose(mondico.items)
'----------------
Chaque mois j'utilise cette macro dans un nouveau classeur.
Mais j'aimerais bien que la liste du mois précédent soit retenue.
On ne devra alors y ajouter que les nouveaux noms de laboratoires saisis dans Feuil1 et non pas créer une nouvelle liste chaque mois et effacer l'ancienne.
Merci.
Bonjour,
Sub Essai()
Set mondico = CreateObject("Scripting.Dictionary")
'-------------
Set f = Sheets("feuil2")
For Each c In f.Range("f2", f.[f65000].End(xlUp))
mondico.Add c.Value, c.Offset(0, 1)
Next c
'-------------
Set f = Sheets("feuil1")
For Each c In f.Range("B2", f.[B65000].End(xlUp))
If Not mondico.Exists(c.Value) Then mondico.Add c.Value,
Left(c.Offset(0, -1), InStr(c.Offset(0, -1), "-") - 1)
Next c
[f2].Resize(mondico.Count, 1) = Application.Transpose(mondico.keys)
[g2].Resize(mondico.Count, 1) = Application.Transpose(mondico.items)
End Sub
http://cjoint.com/?mdrsEr1jDX
JB
On 3 déc, 15:01, Apitos <api...@gmail.com> wrote:
Bonjour à tous,
'----------------
Set mondico = CreateObject("Scripting.Dictionary")
Set f = Sheets("feuil1")
For Each c In f.Range("B2", f.[B65000].End(xlUp))
If Not mondico.Exists(c.Value) Then mondico.Add c.Value,
Left(c.Offset(0, -1), InStr(c.Offset(0, -1), "-") - 1)
Next c
[f2].Resize(mondico.Count, 1) = Application.Transpose(mondico.keys)
[g2].Resize(mondico.Count, 1) = Application.Transpose(mondico.items)
'----------------
Chaque mois j'utilise cette macro dans un nouveau classeur.
Mais j'aimerais bien que la liste du mois précédent soit retenue.
On ne devra alors y ajouter que les nouveaux noms de laboratoires
saisis dans Feuil1 et non pas créer une nouvelle liste chaque mois et
effacer l'ancienne.
Sub Essai() Set mondico = CreateObject("Scripting.Dictionary") '------------- Set f = Sheets("feuil2") For Each c In f.Range("f2", f.[f65000].End(xlUp)) mondico.Add c.Value, c.Offset(0, 1) Next c '------------- Set f = Sheets("feuil1") For Each c In f.Range("B2", f.[B65000].End(xlUp)) If Not mondico.Exists(c.Value) Then mondico.Add c.Value, Left(c.Offset(0, -1), InStr(c.Offset(0, -1), "-") - 1) Next c [f2].Resize(mondico.Count, 1) = Application.Transpose(mondico.keys) [g2].Resize(mondico.Count, 1) = Application.Transpose(mondico.items) End Sub
http://cjoint.com/?mdrsEr1jDX
JB
On 3 déc, 15:01, Apitos wrote:
Bonjour à tous,
'---------------- Set mondico = CreateObject("Scripting.Dictionary") Set f = Sheets("feuil1") For Each c In f.Range("B2", f.[B65000].End(xlUp)) If Not mondico.Exists(c.Value) Then mondico.Add c.Value, Left(c.Offset(0, -1), InStr(c.Offset(0, -1), "-") - 1) Next c [f2].Resize(mondico.Count, 1) = Application.Transpose(mondico.keys) [g2].Resize(mondico.Count, 1) = Application.Transpose(mondico.items)
'----------------
Chaque mois j'utilise cette macro dans un nouveau classeur.
Mais j'aimerais bien que la liste du mois précédent soit retenue.
On ne devra alors y ajouter que les nouveaux noms de laboratoires saisis dans Feuil1 et non pas créer une nouvelle liste chaque mois et effacer l'ancienne.
Merci.
Apitos
Bonsoir JB et tous le forum,
Si la macro est exécutée pour la première fois (colonne F et G de Feuil2 sont vides) je reçois cette erreur :