Sélection du plage entre 2 case VBA important

Résolu/Fermé
charly - 4 mars 2011 à 14:12
Patrice33740 Messages postés 8556 Date d'inscription dimanche 13 juin 2010 Statut Membre Dernière intervention 2 mars 2023 - 4 mars 2011 à 16:42
Bonjour tous,

Je voudrais savoir comment sélectionnner des données contenue dans une colonne excel en choisissant une donnée de départ et une d'arriver à l'aide de combobox.

les combobox sont déjà faite, et m'affiche déjà les données.

voilà, je pensais que c'était ce qui allait me pauser moin de problème dans mon programme et finalement... non :D

merci d'avance pour votre aide

Charly


3 réponses

Patrice33740 Messages postés 8556 Date d'inscription dimanche 13 juin 2010 Statut Membre Dernière intervention 2 mars 2023 1 775
4 mars 2011 à 15:08
Re,

Quelque chose comme :

Sub test()

Dim rng1 As Range
Dim rng2 As Range
Dim rng As Range
Dim str1 As String
Dim str2 As String


  str1 = Feuil1.ComboBox1.Text
  str2 = Feuil1.ComboBox2.Text

  Set rng1 = Feuil1.Columns(1).Find(str1)
  Set rng2 = Feuil1.Columns(1).Find(str2)
  Set rng = Feuil1.Range(rng1, rng2)
  rng.Select

End Sub
1
çà marche! merci beaucoups!!
0
Patrice33740 Messages postés 8556 Date d'inscription dimanche 13 juin 2010 Statut Membre Dernière intervention 2 mars 2023 1 775
4 mars 2011 à 16:42
de rien, au plaisir de te relire sur le forum
0
Patrice33740 Messages postés 8556 Date d'inscription dimanche 13 juin 2010 Statut Membre Dernière intervention 2 mars 2023 1 775
4 mars 2011 à 14:28
Bonjour

Essaie avec Find
0
c'est a dire? dans l'aide VB il est écrit que find sert a trouver des cellules entre 2 cases fixe.
(je suis débutant sur les macro je ne programmais VB que pour résoudre dès équations donc aucune liaison avec excel)
0
Bonjour,

Autre option :

Tu peux demander à l'utilisateur de sélectionné la plagen !

Option Explicit

Sub Cherche()

    Dim Impact As Range

    Set Impact = Application.InputBox("Indiquer la plage désiré ?", Type:=8)

    MsgBox Impact.Address
    
    Impact.Select

End Sub
'


où récupérer une plage déjà sélectionné par l'utilisateur :

Private Sub cmd_X()

    Dim PlageX As Range
    
    Set PlageX = ActiveWindow.RangeSelection
    
    MsgBox PlageX.Address

End Sub


'

Si dans ton combobox tu n'as alimenté celui-ci qu'avec des données,
il te faudra passer par une phase de recherche pour connaître la
plage d'adresse visé. C'est un peu plus complexe.

Comment remplis tu ton combobox et avec quoi ?

Cdt

Info
0
je l'a remplis avec des donnés (qui sont des réferences de pièce) donc l'utilisateur doit pouvoir choisir entre quelles référence il veut avoir ces résultats. Donc je ne peu pas utiliser votre solution qui m'avais l'air très bonne domage :(
0