IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Userform qui contrôle une autre feuille [XL-2003]


Sujet :

Macros et VBA Excel

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 20
    Points : 16
    Points
    16
    Par défaut Userform qui contrôle une autre feuille
    Un grand bonjour à tout le forum

    A partir d'un USF récupéré sur le forum, j'aimerais l'utiliser dans un fichier à moi .

    Le problème est que sur l'exemple l'USF est sur la feuille activée. Pour ma part, je souhaiterais qu'il soit activé à partir d'une autre feuille.
    je ne trouve pas le code

    Merci
    Fichiers attachés Fichiers attachés

  2. #2
    Expert éminent sénior Avatar de mercatog
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9 435
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9 435
    Points : 31 877
    Points
    31 877
    Par défaut
    Bonjour
    Mieux, mets le code au lieu du fichier
    et précise quoi cloche chez toi dans ledit code
    Cordialement.
    J'utilise toujours le point comme séparateur décimal dans mes tests.

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 20
    Points : 16
    Points
    16
    Par défaut
    bonjour
    Voilà ce qui cloche lorsque je lance l'USF à partir d'une autre feuille
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    Option Explicit
    Private Const T As String = "Thierry's Démo, July 2004"
    
    Private WS As Worksheet
    Private Col As Byte, Lig As Integer
    Private SearchType As String
    
    Private Sub CommandButton1_Click()
    Unload Me
    End Sub
    
    Private Sub UserForm_Initialize()
    Set WS = ThisWorkbook.Worksheets("Interface")
    Me.Caption = T
    End Sub
    
    Private Sub OptionButton1_Click()
    SearchType = "Par Prénom "
    ListBox_Criteria 1
    End Sub
    Private Sub OptionButton2_Click()
    SearchType = "Par Age "
    ListBox_Criteria 2
    End Sub
    Private Sub OptionButton3_Click()
    SearchType = "Par Sexe "
    ListBox_Criteria 3
    End Sub
    
    Private Sub ListBox_Criteria(C As Byte)
    Dim ColFilter As Collection
    Dim Plage As Range, Cell As Range
    Dim Item As Variant
    Dim L As Integer
    
    Me.LblSearchType = SearchType & " pas de Critéria défini, clickez sur la ListBox!"
    With WS
    If .FilterMode = True Then .ShowAllData
    End With
    
    Set ColFilter = New Collection
        L = WS.Range("A65536").End(xlUp).Row
        Col = C
        Lig = L
        Set Plage = WS.Range(Cells(2, C), Cells(L, C))
    
    Me.ListBox1.Clear
    
        For Each Cell In Plage
            On Error Resume Next
            ColFilter.Add Cell.Text, Cell.Text
        Next
        
            With Me.ListBox1
                For Each Item In ColFilter
                .AddItem Item
                Next
            End With
    End Sub
    J'ai une erreur avec la ligne en rouge

    Merci

  4. #4
    Expert éminent sénior Avatar de mercatog
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9 435
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9 435
    Points : 31 877
    Points
    31 877
    Par défaut
    Tu as bien ceci?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Set WS = ThisWorkbook.Worksheets("Interface")
    Cordialement.
    J'utilise toujours le point comme séparateur décimal dans mes tests.

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 20
    Points : 16
    Points
    16
    Par défaut
    Oui j'ai bien la feuille "interface" mais pour mon fichier , je souhaiterais lancer l'USF dans la feuille "feuil1".

    Merci

  6. #6
    Membre chevronné Avatar de Krovax
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    1 888
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 888
    Points : 2 168
    Points
    2 168
    Par défaut
    Bonjour
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
     WS.Range(Cells(2, C), Cells(L, C))
    Voila ce que tu lui dis
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
     WS.Range(activesheet.Cells(2, C), activesheet.Cells(L, C))
    tes cells et ton range ne sont pas sur la même feuille
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
     WS.Range(ws.Cells(2, C),ws. Cells(L, C))
    « Il n'y a pas de recette miracle qui permet aux gens d’écrire des programmes corrects sans avoir à réfléchir. Il faut apprendre aux gens comment réfléchir »

  7. #7
    Expert éminent sénior Avatar de mercatog
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9 435
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9 435
    Points : 31 877
    Points
    31 877
    Par défaut
    je retire ma Select

    Bien vu Krovax
    Cordialement.
    J'utilise toujours le point comme séparateur décimal dans mes tests.

  8. #8
    Membre à l'essai
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 20
    Points : 16
    Points
    16
    Par défaut
    Un grand merci à vous
    ça fonctionne

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [PHPExcel] Formule qui référence une autre feuille
    Par DanTesS dans le forum Bibliothèques et frameworks
    Réponses: 5
    Dernier message: 07/04/2011, 16h21
  2. Créer un contrôle dynamique sur une autre feuille
    Par eleomir dans le forum VB.NET
    Réponses: 4
    Dernier message: 14/10/2010, 11h00
  3. [XL-2000] Modifier une macro qui copie/colle vers une autre feuille
    Par wyzer dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 30/04/2010, 23h02
  4. Réponses: 5
    Dernier message: 27/11/2008, 17h34
  5. SetFOcus sur un contrôle d'une autre feuille d'un multipage
    Par MacGeol dans le forum VB 6 et antérieur
    Réponses: 29
    Dernier message: 07/09/2005, 09h37

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo