recup données d'une colonne

recup données d'une colonne - VB/VBA/VBS - Programmation

Marsh Posté le 07-09-2005 à 09:55:57    

Bonjour
 
Nouvel inscrit et nouveau sur  VB  
 
j'aimerais recuperer dans une colonne toutes les données possibles d'une colonne,
Pour etre plus clair je voudrais recuperer la meme liste que je vois lorsque je clique sur la petite flêche d'un filtre
 
a ce jour je passais par un Tableau croisé dynamique mais la il me faut les recuprées dans une macro .
 
Merci d'avance de votre collaboration  
 
 
Michel

Reply

Marsh Posté le 07-09-2005 à 09:55:57   

Reply

Marsh Posté le 07-09-2005 à 15:57:54    

HELP !!!
 
j'suis peu etre pas assez claire,
 
j'ai 55765 lignes  , 18 ou 20(variable)valeurs differentes sont utilisées dans la meme colonne , j'aimerais pourvoir extraitre les 18 ou 20 valeurs differentes...
 
c'a doit bien pour voir se faire par une fonction ou une macro puisque "le filtre" est capable de n'affichée quelles dans sa liste de choix ?
 
j'suis bloquer la dessus et je ne peux avancer  
 
Merci d'avance

Reply

Marsh Posté le 07-09-2005 à 16:14:21    

Bonjour,
 
A la fin de la colonne (dans la première cellule vide) tu fais Alt + Flèche bas

Reply

Marsh Posté le 07-09-2005 à 16:24:25    

Merci Pc75  
je ne conaissais pas ,mais ca ne me donne pas plus que de cliquer sur fitre puis sur le fléche .
 
comment puis -je recupere les donées pour les reecrires ailleure ?
 
 
PS Alt +F_bas  ne fonctionne pas avec le numerique ??

Reply

Marsh Posté le 07-09-2005 à 16:38:40    

Re,
 
Peut-être du côté de la propriété Filter, sinon, je ne vois pas.
 
Bon courage.

Reply

Marsh Posté le 08-09-2005 à 08:14:41    

bonjour,
ce n'est peut-être pas la solution la plus brillante, il reste à dimensionner v éventuellement
Cette macro fonctionne sur une sélection mais il est aisé de l'adapter à une plage :

Code :
  1. Sub Test()
  2. Dim i%, k%, o As Range, Y As Boolean, Tablo()
  3. ReDim Tablo(0)
  4. For Each o In Selection
  5. v = o.Value
  6.   For i = 1 To UBound(Tablo)
  7.   If v = Tablo(i) Then
  8.   Y = True: Exit For
  9.   End If
  10.   Next
  11.   If Not Y Then
  12.   ReDim Preserve Tablo(UBound(Tablo) + 1)
  13.   Tablo(UBound(Tablo)) = v
  14.   End If
  15.   Y = False
  16. Next
  17. For k = 1 To UBound(Tablo)
  18. MsgBox Tablo(k)
  19. Next
  20. End Sub

Nota :  
on gagnerait surement en temps d'éxécution si on remplacait la 1ère boucle for each par :
For x = NoPremL to 55765  'en remplaçant NoPremL par le N° de la première ligne
v = Cells(x, NumCol).Value ' en remplaçant NumCol par le N° de colonne à tester...
... le reste sans changement
Bien sur dans ce cas les adresses étant définies "en dur" pas besoin de sélection au départ.
A+


Message édité par galopin01 le 08-09-2005 à 08:53:55
Reply

Marsh Posté le 08-09-2005 à 09:10:58    

merci je test ...
A+

Reply

Marsh Posté le 08-09-2005 à 09:27:52    

Geniale !!
Exactement ce que je voulais avec mes adaptation dans 10 minutes ca sera bon .
 
je crois avoir compris tous se qui se passe dans les cmd
Le novice que je suis, vient de decouvrir quelques cmd qui vont m' eviter quelques ligne de saissie
 
 
Merci Monsieur Galopin01.

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed