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 :

J'arrive pas à trouver le rowsource ="data_table"


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Collégien
    Inscrit en
    Juillet 2017
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : Maroc

    Informations professionnelles :
    Activité : Collégien

    Informations forums :
    Inscription : Juillet 2017
    Messages : 21
    Par défaut J'arrive pas à trouver le rowsource ="data_table"
    Bonjour
    Le code que j'ai téléchargé et modifié ne marche que pour les 24 premiéres lignes du feuille Data.
    J'ai essayé de manipulé la propriété Listbox1.Rowsource="Data_Table" mais le pb je n'arrive pas à trouvé le variable "Data_Table" pour augmenter la taille des lignes à filtrer.

    Priére de me répondre le plus tot.
    Merci bcp d'avance.
    Fichiers attachés Fichiers attachés

  2. #2
    Rédacteur/Modérateur

    Avatar de Jean-Philippe André
    Homme Profil pro
    Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Inscrit en
    Juillet 2007
    Messages
    14 682
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Canada

    Informations professionnelles :
    Activité : Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 14 682
    Par défaut
    Bonjour,

    Bienvenue sur DVP

    Comme il n'est pas possible de télécharger des pièces jointes, pourrais tu nous donner le code VBA qui te pose problème en indiquant la ligne qui semble générer une erreur stp ?
    Cycle de vie d'un bon programme :
    1/ ça fonctionne 2/ ça s'optimise 3/ ça se refactorise

    Pas de question technique par MP, je ne réponds pas

    Mes ouvrages :
    Migrer les applications VBA Access et VBA Excel vers la Power Platform
    Apprendre à programmer avec Access 2016, Access 2019 et 2021

    Apprendre à programmer avec VBA Excel
    Prise en main de Dynamics 365 Business Central

    Coffrets disponibles de mes ouvrages : https://www.editions-eni.fr/jean-philippe-andre
    Pensez à consulter la FAQ Excel et la FAQ Access

    Derniers tutos
    Excel et les paramètres régionaux
    Les fichiers Excel binaires : xlsb,

    Autres tutos

  3. #3
    Membre averti
    Homme Profil pro
    Collégien
    Inscrit en
    Juillet 2017
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : Maroc

    Informations professionnelles :
    Activité : Collégien

    Informations forums :
    Inscription : Juillet 2017
    Messages : 21
    Par défaut
    HI
    vous pouvez télecharger le userform à partir d'ici
    https://merkez-ihayat.blogspot.com/2...iteria-on.html
    le pb c'est que le variable Listbox1.rowsource="Data_table" se trouve dans la proprité de listbox1 mais pas dans le code.
    J'arrive pas à le manipuler pour augmenter le nombre de lignes à traiter.

    si vs pouvez me donner un autre userform similaire et simple Ca sera resolu.

  4. #4
    Rédacteur/Modérateur

    Avatar de Jean-Philippe André
    Homme Profil pro
    Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Inscrit en
    Juillet 2007
    Messages
    14 682
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Canada

    Informations professionnelles :
    Activité : Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 14 682
    Par défaut
    Ce n'est pas tant une possibilité de téléchargement qu'une interdiction (mon entreprise bloque) et que les règles le stipulent... Donc stp donne nous le code plutôt que de vouloir absolument nous envoyer un fichier.
    Cycle de vie d'un bon programme :
    1/ ça fonctionne 2/ ça s'optimise 3/ ça se refactorise

    Pas de question technique par MP, je ne réponds pas

    Mes ouvrages :
    Migrer les applications VBA Access et VBA Excel vers la Power Platform
    Apprendre à programmer avec Access 2016, Access 2019 et 2021

    Apprendre à programmer avec VBA Excel
    Prise en main de Dynamics 365 Business Central

    Coffrets disponibles de mes ouvrages : https://www.editions-eni.fr/jean-philippe-andre
    Pensez à consulter la FAQ Excel et la FAQ Access

    Derniers tutos
    Excel et les paramètres régionaux
    Les fichiers Excel binaires : xlsb,

    Autres tutos

  5. #5
    Membre averti
    Homme Profil pro
    Collégien
    Inscrit en
    Juillet 2017
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : Maroc

    Informations professionnelles :
    Activité : Collégien

    Informations forums :
    Inscription : Juillet 2017
    Messages : 21
    Par défaut
    ''' Sinan Kurtaran

    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
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    Private Sub CommandButton1_Click()
    Dim strOperator1 As String, strOperator2 As String
    Dim rCell As Range
     
        With Sheet2
                 On Error Resume Next
     
                .Range("CriteriaData").ClearContents
                .Range("Z1:AD100").Clear
     
     
                If Dand.Value = True Then
                    If D1.ListIndex > -1 Then .Range("B4") = "=" & """" & D1.Value & """"
                    If D2.ListIndex > -1 Then .Range("C4") = "=" & """" & D2.Value & """"
                Else
                    If D1.ListIndex > -1 Then .Range("B4") = "=" & """" & D1.Value & """"
                    If D2.ListIndex > -1 Then .Range("B5") = "=" & """" & D2.Value & """"
                End If
     
                If Qand.Value = True Then
                    If Q1.ListIndex > -1 Then .Range("D4") = Q1C & Q1.Value
                    If Q2.ListIndex > -1 Then .Range("E4") = Q2C & Q2.Value
                Else
                   If Q1.ListIndex > -1 Then .Range("D4") = Q1C & Q1.Value
                   If Q2.ListIndex > -1 Then .Range("D5") = Q2C & Q2.Value
                End If
     
                    strOperator1 = UBDC1
                    strOperator2 = UBDC2
                    If strOperator1 = "=" Then strOperator1 = ""
                    If strOperator2 = "=" Then strOperator2 = ""
     
                If UBDand.Value = True Then
                    If IsDate(UBD1) Then .Range("F4") = strOperator1 & UBD1.Value
                    If IsDate(UBD2) Then .Range("G4") = strOperator2 & UBD2.Value
                Else
                    If IsDate(UBD1) Then .Range("F4") = strOperator1 & UBD1.Value
                    If IsDate(UBD2) Then .Range("F5") = strOperator2 & UBD2.Value
                End If
     
                If Land.Value = True Then
                    If L1.ListIndex > -1 Then .Range("H4") = "=" & """" & L1.Value & """"
                    If L2.ListIndex > -1 Then .Range("I4") = "=" & """" & L2.Value & """"
                Else
                    If L1.ListIndex > -1 Then .Range("H4") = "=" & """" & L1.Value & """"
                    If L2.ListIndex > -1 Then .Range("H5") = "=" & """" & L2.Value & """"
                End If
     
                If ACand.Value = True Then
                   If AC1.ListIndex > -1 Then .Range("J4") = "=" & """" & AC1.Value & """"
                   If AC2.ListIndex > -1 Then .Range("K4") = "=" & """" & AC2.Value & """"
                Else
                   If AC1.ListIndex > -1 Then .Range("J4") = "=" & """" & AC1.Value & """"
                   If AC2.ListIndex > -1 Then .Range("J5") = "=" & """" & AC2.Value & """"
                End If
     
               If WorksheetFunction.CountA(Range("FisrtRowCriteria")) > 0 Then
     
                            For Each rCell In Range("SecondRowCriteria")
                                If IsEmpty(rCell) And rCell.Offset(-1, 0) <> "" Then
                                  rCell = rCell.Offset(-1, 0)
                                End If
                            Next rCell
     
     
                            If WorksheetFunction.CountA(Range("SecondRowCriteria")) > 0 Then
                                    .Range(.Range("A4").End(xlToRight).Offset(-1, 0), _
                                    .Range("L5").End(xlToLeft)).Name = "FilterCriteria"
                            Else
                                    .Range(.Range("A4").End(xlToRight).Offset(-1, 0), _
                                    .Range("L4").End(xlToLeft)).Name = "FilterCriteria"
                            End If
     
                                 Range("Data_Table_With_Heads").AdvancedFilter _
                        Action:=xlFilterCopy, CriteriaRange:=Range("FilterCriteria"), CopyToRange:=.Range("Z1")
     
                        .Range("Z1").CurrentRegion.Offset(1, 0).Name = "Filtered_Data"
                        ListBox2.RowSource = ""
                        ListBox2.RowSource = "Filtered_Data"
                End If
        End With
     
        On Error GoTo 0
    End Sub
     
    Private Sub CommandButton2_Click()
    UserForm_Initialize
    End Sub
     
     
    Private Sub D1_Change()
     
    End Sub
     
    Private Sub UBD1_Change()
        If UBD1.ListIndex > -1 Then
           UBD1 = Format(UBD1, "d-mmm-yy")
        End If
    End Sub
    Private Sub UBD2_Change()
        If UBD2.ListIndex > -1 Then
           UBD2 = Format(UBD2, "d-mmm-yy")
        End If
    End Sub
     
    Private Sub UserForm_Initialize()
    Me.Height = 503
     
        With Sheet1
           Sheet2.Range("O1:AF100").ClearContents
     
           .Range("A1", .Range("A65536").End(xlUp)).AdvancedFilter _
            Action:=xlFilterCopy, CriteriaRange:="", CopyToRange:=Sheet2.Range("O1"), Unique:=True
            Sheet2.Range("O1").CurrentRegion.Offset(1, 0).Name = "DescriptionList"
            Range("DescriptionList").Sort Key1:=Range("DescriptionList").Cells(1, 1), Order1:=xlAscending, Header:=xlNo
            D1.RowSource = "DescriptionList"
            D2.RowSource = "DescriptionList"
           .Range("B1", .Range("B65536").End(xlUp)).AdvancedFilter _
            Action:=xlFilterCopy, CriteriaRange:="", CopyToRange:=Sheet2.Range("Q1"), Unique:=True
            Sheet2.Range("Q1").CurrentRegion.Offset(1, 0).Name = "QuantityList"
            Range("QuantityList").Sort Key1:=Range("QuantityList").Cells(1, 1), Order1:=xlAscending, Header:=xlNo
            Q1.RowSource = "QuantityList"
            Q2.RowSource = "QuantityList"
     
           .Range("C1", .Range("C65536").End(xlUp)).AdvancedFilter _
            Action:=xlFilterCopy, CriteriaRange:="", CopyToRange:=Sheet2.Range("S1"), Unique:=True
            Sheet2.Range("S1").CurrentRegion.Offset(1, 0).Name = "UBDList"
            Range("UBDList").Sort Key1:=Range("UBDList").Cells(1, 1), Order1:=xlAscending, Header:=xlNo
            UBD1.RowSource = "UBDList"
            UBD2.RowSource = "UBDList"
     
           .Range("D1", .Range("D65536").End(xlUp)).AdvancedFilter _
            Action:=xlFilterCopy, CriteriaRange:="", CopyToRange:=Sheet2.Range("U1"), Unique:=True
            Sheet2.Range("U1").CurrentRegion.Offset(1, 0).Name = "LocationList"
            Range("LocationList").Sort Key1:=Range("LocationList").Cells(1, 1), Order1:=xlAscending, Header:=xlNo
            L1.RowSource = "LocationList"
            L2.RowSource = "LocationList"
     
     
           .Range("E1", .Range("E65536").End(xlUp)).AdvancedFilter _
            Action:=xlFilterCopy, CriteriaRange:="", CopyToRange:=Sheet2.Range("W1"), Unique:=True
            Sheet2.Range("W1").CurrentRegion.Offset(1, 0).Name = "ACList"
            Range("ACList").Sort Key1:=Range("ACList").Cells(1, 1), Order1:=xlAscending, Header:=xlYes
            AC1.RowSource = "ACList"
            AC2.RowSource = "ACList"
     
        End With
     
    End Sub

  6. #6
    Membre averti
    Homme Profil pro
    Collégien
    Inscrit en
    Juillet 2017
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : Maroc

    Informations professionnelles :
    Activité : Collégien

    Informations forums :
    Inscription : Juillet 2017
    Messages : 21
    Par défaut
    Je veux que le filtre marche pour plus que 3000 rows.

    Si vs pouvez me donnez un autre userform plus facile à manipuler ca sera mieux.

  7. #7
    Expert confirmé Avatar de hyperion13
    Homme Profil pro
    Webplanneur
    Inscrit en
    Octobre 2007
    Messages
    4 287
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : Réunion

    Informations professionnelles :
    Activité : Webplanneur

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 287
    Par défaut
    Salut,
    Il est possible de compléter la feuille data jusqu'à A102, si tu veux aller au-dela, il faut modifier les formules dynamiques et aussi afficher la feuille masquée Workings.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Data_table=DECALER(Data!$A$2;0;0;NBVAL(Data!$A$2:$A$100);NBVAL(Data!$1:$1))

  8. #8
    Membre averti
    Homme Profil pro
    Collégien
    Inscrit en
    Juillet 2017
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : Maroc

    Informations professionnelles :
    Activité : Collégien

    Informations forums :
    Inscription : Juillet 2017
    Messages : 21
    Par défaut
    Citation Envoyé par hyperion13 Voir le message
    Salut,
    Il est possible de compléter la feuille data jusqu'à A102, si tu veux aller au-dela, il faut modifier les formules dynamiques et aussi afficher la feuille masquée Workings.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Data_table=DECALER(Data!$A$2;0;0;NBVAL(Data!$A$2:$A$100);NBVAL(Data!$1:$1))
    Ca donne erreur
    Caractére incorrecte.
    plz verifie moi le syntaxe.

  9. #9
    Membre averti
    Homme Profil pro
    Collégien
    Inscrit en
    Juillet 2017
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : Maroc

    Informations professionnelles :
    Activité : Collégien

    Informations forums :
    Inscription : Juillet 2017
    Messages : 21
    Par défaut
    Resolu par hyperion13

    Merci bcp.

  10. #10
    Rédacteur/Modérateur

    Avatar de Jean-Philippe André
    Homme Profil pro
    Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Inscrit en
    Juillet 2007
    Messages
    14 682
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Canada

    Informations professionnelles :
    Activité : Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 14 682
    Par défaut
    Citation Envoyé par Jean-Philippe André Voir le message
    pourrais tu nous donner le code VBA qui te pose problème en indiquant la ligne qui semble générer une erreur stp ?
    Cycle de vie d'un bon programme :
    1/ ça fonctionne 2/ ça s'optimise 3/ ça se refactorise

    Pas de question technique par MP, je ne réponds pas

    Mes ouvrages :
    Migrer les applications VBA Access et VBA Excel vers la Power Platform
    Apprendre à programmer avec Access 2016, Access 2019 et 2021

    Apprendre à programmer avec VBA Excel
    Prise en main de Dynamics 365 Business Central

    Coffrets disponibles de mes ouvrages : https://www.editions-eni.fr/jean-philippe-andre
    Pensez à consulter la FAQ Excel et la FAQ Access

    Derniers tutos
    Excel et les paramètres régionaux
    Les fichiers Excel binaires : xlsb,

    Autres tutos

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

Discussions similaires

  1. j'arrive pas à trouver la formule
    Par casavba dans le forum Excel
    Réponses: 8
    Dernier message: 11/09/2007, 18h45
  2. [JNI] FindClass n'arrive pas à trouver une classe
    Par Benoit_Aligon dans le forum Entrée/Sortie
    Réponses: 2
    Dernier message: 04/07/2006, 15h40
  3. [Tableaux] probleme je n'arrive pas à trouver l'erreur
    Par harlock59 dans le forum Langage
    Réponses: 21
    Dernier message: 06/06/2006, 14h43
  4. Réponses: 5
    Dernier message: 14/05/2006, 22h41
  5. Une parse error que j'arrive pas à trouver
    Par Kerweb dans le forum Langage
    Réponses: 3
    Dernier message: 27/03/2006, 12h25

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