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 :

Problème vba tableau dynamique


Sujet :

Macros et VBA Excel

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Urbaniste
    Inscrit en
    Juin 2021
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Urbaniste

    Informations forums :
    Inscription : Juin 2021
    Messages : 14
    Points : 6
    Points
    6
    Par défaut Problème vba tableau dynamique
    Bonjour

    J'ai un problème j'ai un inventaire lorsque je fais un ajout avec le Bt ajouter un article
    l'ajout ne va pas dans le tableau dynamique il va à la ligne suivante et comment fait pour après mon ajout ou un nouvel article cela se met par ordre alphabétique automatiquement
    UserForm1 = ajout
    UserForm2 = modifier
    module14 15 16
    merci
    Fichiers attachés Fichiers attachés

  2. #2
    Membre confirmé
    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Mars 2021
    Messages
    334
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2021
    Messages : 334
    Points : 602
    Points
    602
    Par défaut
    Salut, tu as déjà des colonnes filtrée, voila ce que j'obtiens avec l'enregistreur de macro :

    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
    Sub Macro1()
    '
    ' Macro1 Macro
    '
     
    '
        ActiveWorkbook.Worksheets("Catalogue").ListObjects("Tableau5").Sort.SortFields. _
            Clear
        ActiveWorkbook.Worksheets("Catalogue").ListObjects("Tableau5").Sort.SortFields. _
            Add2 Key:=Range("Tableau5[[#All],[Article]]"), SortOn:=xlSortOnValues, _
            Order:=xlAscending, DataOption:=xlSortNormal
        With ActiveWorkbook.Worksheets("Catalogue").ListObjects("Tableau5").Sort
            .Header = xlYes
            .MatchCase = False
            .Orientation = xlTopToBottom
            .SortMethod = xlPinYin
            .Apply
        End With
     
    End Sub
    Ça filtre les articles de A a Z, tu peux faire un call à cette macro après avoir inséré ton nouvel article.

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Urbaniste
    Inscrit en
    Juin 2021
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Urbaniste

    Informations forums :
    Inscription : Juin 2021
    Messages : 14
    Points : 6
    Points
    6
    Par défaut
    merci de ta réponse
    tu me dis de faire un call à cette macro après avoir inséré ton nouvel article.

    mon module 15

    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
    Sub recherche()
    'rechercher dans la feuil catalogue, le contenu de la feuil gestion rangé I10
    Application.ScreenUpdating = False
    Sheets("Catalogue").Select
    Dim Cellule As Range
    Set Cellule = Range("A:A").Find(what:=Sheets("Gestionnaire du magasin").Range("I10").Value, LookIn:=xlValues, lookat:=xlWhole)
    If Not Cellule Is Nothing Then Cells(Cellule.Row, Cellule.Column).Select
     
     
    ActiveCell.Select
    ActiveCell = UserForm2.TextBox11.Value
     
    ' on ajoute a la commande  ''Bt ajout''
    ActiveCell.Offset(0, 2) = ActiveCell.Offset(0, 2) + UserForm2.TextBox2.Value
     
     
    '''''''''''''''''''''''''''On additionne chaque sortie de stock-sortie_magasin ''''''''''''''''
    ActiveCell.Offset(0, 4) = ActiveCell.Offset(0, 4) + Val(UserForm2.TextBox4.Value)
     
     
    Sheets("gestionnaire du magasin").Select
    Application.ScreenUpdating = True
    MsgBox "Modification Effectuer!"
    Unload UserForm2
     
    End Sub
    -------------------------------
    Sub Macro30()
    '
    ' Macro30 Macro
    '
     
    '
        ActiveWorkbook.Worksheets("Catalogue").ListObjects("Tableau5").Sort.SortFields. _
            Clear
        ActiveWorkbook.Worksheets("Catalogue").ListObjects("Tableau5").Sort.SortFields. _
            Add2 Key:=Range("Tableau5[[#All],[Article]]"), SortOn:=xlSortOnValues, _
            Order:=xlAscending, DataOption:=xlSortNormal
        With ActiveWorkbook.Worksheets("Catalogue").ListObjects("Tableau5").Sort
            .Header = xlYes
            .MatchCase = False
            .Orientation = xlTopToBottom
            .SortMethod = xlPinYin
            .Apply
        End With
     
    End Sub
    Ça ne marche pas je ne sais pas où le déposer merci

  4. #4
    Membre confirmé
    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Mars 2021
    Messages
    334
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2021
    Messages : 334
    Points : 602
    Points
    602
    Par défaut
    Dans ta macro "recherche" tu ajoute après avoir fais ta mise a jour un :

    comme ceci :

    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 recherche()
    'rechercher dans la feuil catalogue, le contenu de la feuil gestion rangé I10
    Application.ScreenUpdating = False
    Sheets("Catalogue").Select
    Dim Cellule As Range
    Set Cellule = Range("A:A").Find(what:=Sheets("Gestionnaire du magasin").Range("I10").Value, LookIn:=xlValues, lookat:=xlWhole)
    If Not Cellule Is Nothing Then Cells(Cellule.Row, Cellule.Column).Select
     
     
    ActiveCell.Select
    ActiveCell = UserForm2.TextBox11.Value
     
    ' on ajoute a la commande  ''Bt ajout''
    ActiveCell.Offset(0, 2) = ActiveCell.Offset(0, 2) + UserForm2.TextBox2.Value
     
     
    '''''''''''''''''''''''''''On additionne chaque sortie de stock-sortie_magasin ''''''''''''''''
    ActiveCell.Offset(0, 4) = ActiveCell.Offset(0, 4) + Val(UserForm2.TextBox4.Value)
     
     call macro30
     
    Sheets("gestionnaire du magasin").Select
    Application.ScreenUpdating = True
    MsgBox "Modification Effectuer!"
    Unload UserForm2
     
    End Sub

  5. #5
    Futur Membre du Club
    Homme Profil pro
    Urbaniste
    Inscrit en
    Juin 2021
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Urbaniste

    Informations forums :
    Inscription : Juin 2021
    Messages : 14
    Points : 6
    Points
    6
    Par défaut
    Merci mais il y a une erreur lorsque je veut faire une modification

    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
    Sub Macro30()
    '
    ' Macro1 Macro
    '
     
    '
        ActiveWorkbook.Worksheets("Catalogue").ListObjects("Tableau5").Sort.SortFields. _
            Clear
        ActiveWorkbook.Worksheets("Catalogue").ListObjects("Tableau5").Sort.SortFields. _       erreur
            Add2 Key:=Range("Tableau5[[#All],[Article]]"), SortOn:=xlSortOnValues, _               erreur
            Order:=xlAscending, DataOption:=xlSortNormal[/COLOR]                                        erreur
        With ActiveWorkbook.Worksheets("Catalogue").ListObjects("Tableau5").Sort[/COLOR]
            .Header = xlYes
            .MatchCase = False
            .Orientation = xlTopToBottom
            .SortMethod = xlPinYin
            .Apply
        End With
     
    End Sub
    et l'ajout ne va pas dans mon tableau !!

  6. #6
    Membre confirmé
    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Mars 2021
    Messages
    334
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2021
    Messages : 334
    Points : 602
    Points
    602
    Par défaut
    Je n'ai pas compris

  7. #7
    Futur Membre du Club
    Homme Profil pro
    Urbaniste
    Inscrit en
    Juin 2021
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Urbaniste

    Informations forums :
    Inscription : Juin 2021
    Messages : 14
    Points : 6
    Points
    6
    Par défaut
    Désolée

    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
    Sub Macro30()
    '
    ' Macro1 Macro
    '
     
    '
    ActiveWorkbook.Worksheets("Catalogue").ListObjects("Tableau5").Sort.SortFields. _
    Clear
    ActiveWorkbook.Worksheets("Catalogue").ListObjects("Tableau5").Sort.SortFields. _               erreur
    Add2 Key:=Range("Tableau5[[#All],[Article]]"), SortOn:=xlSortOnValues, _                           erreur
    Order:=xlAscending, DataOption:=xlSortNormal                                                                  erreur
    With ActiveWorkbook.Worksheets("Catalogue").ListObjects("Tableau5").Sort[/COLOR]
    .Header = xlYes
    .MatchCase = False
    .Orientation = xlTopToBottom
    .SortMethod = xlPinYin
    .Apply
    End With
     
    End Sub


    j'ai les 3 lignes erreur ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    ActiveWorkbook.Worksheets("Catalogue").ListObjects("Tableau5").Sort.SortFields. _               erreur
    Add2 Key:=Range("Tableau5[[#All],[Article]]"), SortOn:=xlSortOnValues, _                           erreur
    Order:=xlAscending, DataOption:=xlSortNormal
    et comment faire pour qu'après l'ajout elle se met directement en ordre alphabétique

    merci
    et l'ajout ne va pas dans mon tableau !!

  8. #8
    Membre confirmé
    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Mars 2021
    Messages
    334
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2021
    Messages : 334
    Points : 602
    Points
    602
    Par défaut
    C'est quoi l'erreur ? quel message ?

  9. #9
    Futur Membre du Club
    Homme Profil pro
    Urbaniste
    Inscrit en
    Juin 2021
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Urbaniste

    Informations forums :
    Inscription : Juin 2021
    Messages : 14
    Points : 6
    Points
    6
    Par défaut
    Désolée je m'explique mal.

    lorsque je fait un nouvel article il ne va toujours pas dans le tableau dynamique
    et lorsque je fait une modification d'article cela me fait erreur surlignée en jaune au 3 lignes si dessous

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    ActiveWorkbook.Worksheets("Catalogue").ListObjects("Tableau5").Sort.SortFields.
    Add2 Key:=Range("Tableau5[[#All],[Article]]"), SortOn:=xlSortOnValues, 
    Order:=xlAscending, DataOption:=xlSortNormal

    dans la macro30 que j'ai crée

    et mis Call Macro30

    dans la macro recherche

    merci encore de ta patience.

  10. #10
    Membre confirmé
    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Mars 2021
    Messages
    334
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2021
    Messages : 334
    Points : 602
    Points
    602
    Par défaut
    Non mais d'accord j'ai bien compris que tu avais une erreur mais tu as bien un message lorsque l'erreur apparait du style : Erreur : Objet requis

  11. #11
    Futur Membre du Club
    Homme Profil pro
    Urbaniste
    Inscrit en
    Juin 2021
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Urbaniste

    Informations forums :
    Inscription : Juin 2021
    Messages : 14
    Points : 6
    Points
    6
    Par défaut
    bonjour et merci

    je n'est plus d'erreur merci , et comment faire pour que cela se classe par ordre alphabétique automatiquement ,après un ajout ou une modification.
    merci

  12. #12
    Membre confirmé
    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Mars 2021
    Messages
    334
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2021
    Messages : 334
    Points : 602
    Points
    602
    Par défaut
    Citation Envoyé par paulmarc Voir le message
    bonjour et merci

    je n'est plus d'erreur merci , et comment faire pour que cela se classe par ordre alphabétique automatiquement ,après un ajout ou une modification.
    merci
    tu fais call macro30 dans le script après l'enregistrement de ta nouvelle entrée tableau.

  13. #13
    Futur Membre du Club
    Homme Profil pro
    Urbaniste
    Inscrit en
    Juin 2021
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Urbaniste

    Informations forums :
    Inscription : Juin 2021
    Messages : 14
    Points : 6
    Points
    6
    Par défaut
    Bonjour merci de attention

    j'ai bien créé la marco

    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
    Option Explicit
     
    Sub Macro29()
    '
    ' Macro1 Macro
    '
     
    '
        ActiveWorkbook.Worksheets("Catalogue").ListObjects("Tableau5").Sort.SortFields. _
            Clear
        ActiveWorkbook.Worksheets("Catalogue").ListObjects("Tableau5").Sort.SortFields. _
            Add2 Key:=Range("Tableau5[[#All],[Article]]"), SortOn:=xlSortOnValues, _
            Order:=xlAscending, DataOption:=xlSortNormal
        With ActiveWorkbook.Worksheets("Catalogue").ListObjects("Tableau5").Sort
            .Header = xlYes
            .MatchCase = False
            .Orientation = xlTopToBottom
            .SortMethod = xlPinYin
            .Apply
        End With
     
    End Sub

    dans la macro recherche

    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
    Sub recherche()
    'rechercher dans la feuil catalogue, le contenu de la feuil gestion rangé I10
    Application.ScreenUpdating = False
    Sheets("Catalogue").Select
    Dim Cellule As Range
    Set Cellule = Range("A:A").Find(what:=Sheets("Gestionnaire du magasin").Range("I10").Value, LookIn:=xlValues, lookat:=xlWhole)
    If Not Cellule Is Nothing Then Cells(Cellule.Row, Cellule.Column).Select
     
     
    ActiveCell.Select
    ActiveCell = UserForm2.TextBox11.Value
     
    ' on ajoute a la commande  ''Bt ajout''
    ActiveCell.Offset(0, 2) = ActiveCell.Offset(0, 2) + Val(UserForm2.TextBox2.Value)
     
     
    '''''''''''''''''''''''''''On additionne chaque sortie de stock-sortie_magasin ''''''''''''''''
    ActiveCell.Offset(0, 4) = ActiveCell.Offset(0, 4) + Val(UserForm2.TextBox4.Value)
     
     Call marco29        erreur cela devient jaune pas de message juste la couleur jaune
     
     
    Sheets("gestionnaire du magasin").Select
    Application.ScreenUpdating = True
    MsgBox "Modification Effectuer!"
    Unload UserForm2
     
    End Sub
    avec le bt ajout cela s'enregistre mais cela ne se mais pas en ordre alphabétique et lorsque je fait une modification la cela deviens jaune dans mon module 15(module recherche) erreur en jaune sans message

    merci

  14. #14
    Membre confirmé
    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Mars 2021
    Messages
    334
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2021
    Messages : 334
    Points : 602
    Points
    602
    Par défaut
    Salut, ca vient du fait que c'est un appel, essaye de lancer uniquement la macro de mise en forme

  15. #15
    Futur Membre du Club
    Homme Profil pro
    Urbaniste
    Inscrit en
    Juin 2021
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Urbaniste

    Informations forums :
    Inscription : Juin 2021
    Messages : 14
    Points : 6
    Points
    6
    Par défaut
    Merci de ta réponse rapide mais je ne comprend pas


    c'est un appel de quoi ?
    essaye de lancer uniquement la macro de mise en forme cela veut dire quoi
    excuse moi de toute c'est question
    merci

  16. #16
    Membre confirmé
    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Mars 2021
    Messages
    334
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2021
    Messages : 334
    Points : 602
    Points
    602
    Par défaut
    Dans une macro tu peux faire "un appel" a une autre macro avec exemple:

    Et quand tu fais tourner ta macro principal, si il y a des problèmes dans la macro appelée tu ne saura pas a quelle ligne de la macro appelée.

    Il faut donc que au lieu de faire un appel dans la macro principale, tu fasse tourner la macro appelée directement. Ici ta macro29.

Discussions similaires

  1. Problème de tableau dynamique d'objets
    Par markfish55 dans le forum C++
    Réponses: 2
    Dernier message: 07/06/2008, 14h07
  2. Problème de tableau dynamique en paramètre
    Par sapin dans le forum Langage
    Réponses: 2
    Dernier message: 11/04/2008, 15h33
  3. problème allocation tableau dynamique
    Par ofinot dans le forum C++
    Réponses: 5
    Dernier message: 12/02/2008, 16h03
  4. Problème de tableau dynamique
    Par Vindz dans le forum LabVIEW
    Réponses: 23
    Dernier message: 26/04/2007, 14h27
  5. problème avec tableau dynamique
    Par akrobat dans le forum C++
    Réponses: 7
    Dernier message: 28/04/2006, 16h29

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