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 :

VBA-Problème de Triage


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau candidat au Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Janvier 2018
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 28
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2018
    Messages : 1
    Par défaut VBA-Problème de Triage
    Bonjour,

    Voici mon problème : Je travaille sur la création d'un échéancier qui bascule sur un tableau de relance.
    J'ai donc une Macro qui me permet de filtrer dans mes feuilles "échéancier" les personnes où régler=Non et aussi de les trier selon le numéro de client. Seulement les données qui sont des colonnes G à L qui sont des données que rentre l'utilisateur ou alors qui fonctionne à l'aide de formule selon le numéro de client, on tendance à s'interposer, se changer de place ect...
    J'ai décomposer ma macro est j'ai remarquer que c'était des que je lançais le trie selon le numéro de client que ces données se modifiait, je n'arrive pas à comprendre pourquoi.
    Travaillant sur ce projet depuis quelques temps je vous joint le fichier en question afin d'avoir une meilleure vue du problème. Je préfère aussi vous expliquer le fonctionnement de chaque feuille afin de mieux comprendre le fonctionnement.

    - Tout d'abords mes feuilles échéancier ( Ici elles vont jusqu'au mois de mai, mais dans le dossier finale elles iront jusqu'au mois de décembre. ) Elles fonctionnent avec la base de données des Factures et des Clients, et donc s'automatisent selon le numéro des Factures. Et l'utilisateur inscrit si oui ou non il a réglée à l'aide de la liste déroulante dont j'ai inscrit mes données dans ma feuille "Annexe".

    - Ensuite, ma feuille de Relance. Celle ci me permet donc de regrouper tout les "réglée=Non" sur une même feuille afin de suivre la relance du Client. Afin de suivre au mieux la relance il y a les colonnes de "G à L" que j'ai automatisé afin de rechercher dans ma base de données le numéro de téléphone et l'email, mais aussi le reste à payer selon que le client est verser un acompte ou non et aussi les commentaires que l'utilisateur peut rajouter.

    Les Codes sont les suivants :
    -Tout d'abord celui qui permet de basculer les "régler=Non" des échéancier sur le tableau de relance
    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
    Sub ReglerNon()
        Dim a(), i As Long, L As Long, cel As Range
        ' ReglerNon Macro
        ' Trie l'échéancier selon que régler = Non
        Feuil10.Range("A8:F200").ClearContents 'feuil10 codename de feuille RelaceEntête
        For Each w In Worksheets
            If IsNumeric(Left(w.Name, 2)) Then
                L = w.Range("A65000").End(xlUp).Row
                If L > 7 Then
                    For Each cel In w.Range("G8:G" & L)
                        If cel = "Non" Then
                            i = i + 1: ReDim Preserve a(1 To 6, 1 To i)    '1 to 6 colonnes, 1 to i lignes,on ne sait ajouter que des colonnes dans un tableau
                            a(1, i) = cel.Offset(, -2)    'n°client
                            a(2, i) = cel.Offset(, -1)    'raison
                            a(3, i) = cel.Offset(, -6)    'Fact
                            a(4, i) = cel.Offset(, -5)    'date facture
                            a(5, i) = cel.Offset(, -4)    'date échéance
                            a(6, i) = cel.Offset(, -3)    'montant
                        End If
                    Next
                End If
            End If
        Next
        a = Application.Transpose(a)    'a colonnes,lignes devient a lignes,colonnes
        Feuil10.Range("A8").Resize(UBound(a, 1), UBound(a, 2)) = a
     
    End Sub
    -Celle qui me permet de trier le tableau de relance selon le numéro de client.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    Sub Triage()
        ActiveWorkbook.Worksheets("RelanceEntête").Sort.SortFields.Clear
        ActiveWorkbook.Worksheets("RelanceEntête").Sort.SortFields.Add Key:=Range( _
                                                                            "A8:A125"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= _
                                                                       xlSortNormal
        With ActiveWorkbook.Worksheets("RelanceEntête").Sort
            .SetRange Range("A7:L125")
            .Header = xlYes
            .MatchCase = False
            .Orientation = xlTopToBottom
            .SortMethod = xlPinYin
            .Apply
        End With
    End Sub
    J'avais commencer par un Filtre avancé mais de cette façon c'est plus simple et me permet de garder l'entête de mon tableau de relance ce que le filtre avancé ne me permettait pas.

    Je reçu de l'aide pour ce projet, d'ou cette nouvelle Macro sans filtre Avancé, peut-être que vous verrez plus facilement l'erreur présente, j'ai essayer beaucoup de chose différentes et malheureusement je n'arrive toujours pas a repérer le problème.
    En vous remerciant d'avance pour l'aide que vous pourriez m'apporter.

    Cordialement, Masako.
    Fichiers attachés Fichiers attachés

Discussions similaires

  1. problème avec l'apostrophe dans une requête
    Par mika0102 dans le forum VBA Access
    Réponses: 7
    Dernier message: 09/03/2019, 16h51
  2. [DEBUTANT - VBA] Problèmes de ComboBox
    Par _Maniak dans le forum Général VBA
    Réponses: 13
    Dernier message: 10/03/2006, 10h02
  3. Réponses: 2
    Dernier message: 17/10/2005, 14h58
  4. [Excel - VBA] Problème de suppression de lignes...
    Par beholder2 dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 28/01/2005, 17h27
  5. [Requete SQL en VBA] Problème avec la fonction FLOOR
    Par zubral dans le forum Langage SQL
    Réponses: 4
    Dernier message: 13/07/2004, 13h24

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