Niouzes.org  

Précédent   Niouzes.org > Forum > Newsgroup microsoft.public.fr.* 1 Forum > Newsgroup microsoft.public.fr.excel
S'inscrire FAQ Membres Calendrier Recherche Messages du jour Marquer les forums comme lus



Réponse

 

LinkBack Outils de la discussion Modes d'affichage
  #1 (permalink)  
Vieux 03/06/2008, 16h27
MichDenis
 
Messages: n/a
Par défaut Re: Scripting Dictionary

D'abord tu te serts d'un filtre élaboré et tu utilises une petite formule
du genre =Nb.Si($A$2:$A$65536;A2) > 1 ou égale 2 selon que
tu t'intéresses à toutes les entrées dont l'occurence est plus grande que 1
ou seulement aux entrées qui ont un double.

P.S. La dernière cellule de la colonne A peut facilement être déterminée par
programmation. Cela emêche d'inclure des plages disproportionnées par rapport
à la réalité !

Comme tu n'auras que la première occuence de chacun des doublons, tu oublies
ton machin de dictionnaire et tu boucles seulement sur les cellules visibles de
la colonne A.

Est-ce assez simple ?
;-)



"Nyck0las" <nicolasnr62***gmail.com> a écrit dans le message de news:
dcc2a8f3-f1f5-46ba-ae29-43a8523cdafa...oglegroups.com...
Bonjour,

Je suis en train d'écrire une macro excel dans laquelle j'utilise un
dictionnaire.
Je le remplis sans doublons en parcourant une liste dont je choisis
certains éléments avec un test.

Set mondico = CreateObject("Scripting.Dictionary")

For i = 2 To [A65000].End(xlUp).Row
cle = Sht.Cells(i, Chp("Collect")) & "|" & Sht.Cells(i,
Chp("Dom"))
tst = True
If Me.cmbDom <> "" And tst Then
If Sht.Cells(i, Chp("Dom")) <> Me.cmbDom Then tst = False
End If
If tst Then
If Not mondico.exists(cle) Then
mondico.Add cle, i
Else
y = mondico.Item(cle)
mondico.Remove (cle)
mondico.Add cle, y & "|" & i
End If
End If
Next

Quand il y a doublon, je stocke le numéro des lignes correspondantes
dans le champ élément de la paire (clé, élément) en les séparant par
"|".
Comme ce sont en fait les éléments doubles qui m'intéressent, je
souhaite ensuite retirer les éléments qui ne sont pas doubles.

n = mondico.Count
a = mondico.keys
b = mondico.items

For i = 0 To n - 1
If Not b(i) Like "*|*" Then
mondico.Remove (a(i))
i = i - 1
End If
i = i + 1
Next

(Quand je ne mets pas la ligne i=i-1, il me reste des éléments non
doublons)

Là çà semble fonctionner mais par contre le dernier élément de la
liste, qui n'est pas un doublon dans mon cas, n'est pas supprimé.

Quelqu'un aurait-il une idée ?




Réponse avec citation
Alt Today
Advertising
Google Adsense
 
This advertising will not be shown
in this way to registered members.
Register your free account today
and become a member on
Niouzes.org
Standard Sponsored Links

Réponse
Tags: ,



Outils de la discussion
Modes d'affichage

Règles de messages
Vous pouvez ouvrir de nouvelles discussions : nonoui
Vous pouvez envoyer des réponses : nonoui
Vous pouvez insérer des pièces jointes : nonoui
Vous pouvez modifier vos messages : nonoui

Les balises BB sont activées : oui
Les smileys sont activés : oui
La balise [IMG] est activée : oui
Le code HTML peut être employé : non
Trackbacks are oui
Pingbacks are oui
Refbacks are oui


Discussions similaires

Discussion Auteur Forum Réponses Dernier message
Erreur Automation sur Scripting.Dictionary Galopin01 Newsgroup microsoft.public.fr.excel 5 12/03/2008 20h00
Utilisation de dictionary sous Windows Pascal Quesseveur Newsgroup fr.fr.comp.applications.emacs 0 25/01/2008 08h41
Looking for Webster and EN-SP SP-EN dictionary for Pocket PC. TIA ymartin@usenet.com Newsgroup alt.fr.pocket.pc 0 03/07/2006 19h15
Dictionary Viewer For Mobile Phones sales@axmasoft.com Newsgroup microsoft.public.fr.smartphone 0 27/10/2005 09h35
[NWN]Scripting koktel Newsgroup fr.rec.jeux.video.aventure-jdr 0 23/07/2004 16h42


Fuseau horaire GMT. Il est actuellement 07h52.

Italiano - German - English - Español


Édité par : vBulletin® version 3.6.8
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO 3.1.0 © 2007, Crawlability, Inc. Tous droits réservés.
Version française #13 par l'association vBulletin francophone


Politique - Droit - Philosophie - Football - Medicine - Française - Bricolage - Photo - Mac Os X - Divers - Physique - Jardinage
Mecanique - Moto - Photographie - Rail - Route - Aviation - Cinema - Linux - Psychanalyse - Finance - Enigmes - Rugby
Environnement - Histoire - Programmes TV - Education - Travail - Voyages - Windows - Immobilier - Cuisine
Windows XP - Excel - Word - Outlook - Access - Internet Explorer - Office - Vista

Page generated in 0,34424 seconds with 11 queries