VBA, tableaux
Résolu/Fermé
Utilisateur anonyme
-
29 mai 2016 à 01:21
Frenchie83 Messages postés 2240 Date d'inscription lundi 6 mai 2013 Statut Membre Dernière intervention 11 août 2023 - 1 juin 2016 à 03:02
Frenchie83 Messages postés 2240 Date d'inscription lundi 6 mai 2013 Statut Membre Dernière intervention 11 août 2023 - 1 juin 2016 à 03:02
A voir également:
- VBA, tableaux
- Tableaux croisés dynamiques - Guide
- Fusionner deux tableaux excel - Guide
- Vba attendre 1 seconde ✓ - Forum VB / VBA
- Mkdir vba ✓ - Forum VB / VBA
- Vba récupérer valeur cellule ✓ - Forum VB / VBA
9 réponses
Frenchie83
Messages postés
2240
Date d'inscription
lundi 6 mai 2013
Statut
Membre
Dernière intervention
11 août 2023
338
Modifié par Frenchie83 le 29/05/2016 à 08:07
Modifié par Frenchie83 le 29/05/2016 à 08:07
Bonjour
Je voudrais faire en sorte que ce tableau global s'alimente automatiquement Automatiquement ça me parait difficile, Quel serait l'évènement déclencheur de la recopie ou de la suppression de lignes? A partir de quel moment, déclencher cette recopie?
Je vous propose que vous soyez vous même cet élément déclencheur en appuyant sur un bouton (1 bouton dans chaque feuille) au moment même où cela vous paraît opportun.
De même, la recopie se fera automatiquement dès que vous fermerez le fichier.
https://www.cjoint.com/c/FEDghrNicnw
Si cela vous convient
Cdlt
Je voudrais faire en sorte que ce tableau global s'alimente automatiquement Automatiquement ça me parait difficile, Quel serait l'évènement déclencheur de la recopie ou de la suppression de lignes? A partir de quel moment, déclencher cette recopie?
Je vous propose que vous soyez vous même cet élément déclencheur en appuyant sur un bouton (1 bouton dans chaque feuille) au moment même où cela vous paraît opportun.
De même, la recopie se fera automatiquement dès que vous fermerez le fichier.
https://www.cjoint.com/c/FEDghrNicnw
Si cela vous convient
Cdlt
Frenchie83
Messages postés
2240
Date d'inscription
lundi 6 mai 2013
Statut
Membre
Dernière intervention
11 août 2023
338
29 mai 2016 à 20:12
29 mai 2016 à 20:12
Bonsoir
est-il possible de mettre le tableau global sous le meme format que les autres c'est-a-dire avec les en-têtes (pour trier dans le futur) sans interferer avec la macro. la macro n'interfère pas sur les en-têtes, En faisant des essais , j'ai peut-être modifier celle de la feuille global. la macro n'a aucune incidence .
Pour ce qui est des fabricants, pas de soucis, au lieu de faire de 1 à 6, on fait de 4 à 9 (ce qui correspond aux numéros des feuilfes de chaque fabricant)
Voilà le résultat
https://www.cjoint.com/c/FEDsi1MX0qw
Cdlt
est-il possible de mettre le tableau global sous le meme format que les autres c'est-a-dire avec les en-têtes (pour trier dans le futur) sans interferer avec la macro. la macro n'interfère pas sur les en-têtes, En faisant des essais , j'ai peut-être modifier celle de la feuille global. la macro n'a aucune incidence .
Pour ce qui est des fabricants, pas de soucis, au lieu de faire de 1 à 6, on fait de 4 à 9 (ce qui correspond aux numéros des feuilfes de chaque fabricant)
Voilà le résultat
https://www.cjoint.com/c/FEDsi1MX0qw
Cdlt
Très bien frenchie. Néanmoins dernier soucis, les ajouts ou suppressions de ligne dans les tableaux se répercutent bien dans le global. Mais ce n'est pas le cas avec les colonnes ou la rien ne se passe. En effet lorsque que je supprime ou ajoute une colonne dans chacun des tableau et au même endroit (puisqu'il faut qu'ils soient identiques), rien ne se passe dans le global.
Frenchie83
Messages postés
2240
Date d'inscription
lundi 6 mai 2013
Statut
Membre
Dernière intervention
11 août 2023
338
30 mai 2016 à 20:02
30 mai 2016 à 20:02
Bonsoir
Petite correction
https://www.cjoint.com/c/FEEsafsmwIw
Le regroupement commence à la ligne 9, j'avais une erreur de saisie. En principe ça devrait aller.
Cdlt
Petite correction
https://www.cjoint.com/c/FEEsafsmwIw
Le regroupement commence à la ligne 9, j'avais une erreur de saisie. En principe ça devrait aller.
Cdlt
Merci pour tout frenchie, vous avez répondu au gros du problème. Il y'a vraiment 0 soucis quand le tableau reste sans étiquette. Mais le soucis d'apparition des lignes vides après mise en forme du tableau avec étiquettes puis mise à jour, est toujours présent. Je vais me résigner à trier mes données seulement dans les tableaux des fabricants. Merci encore pour tout.
Passez une bonne journée
Cordialement
Passez une bonne journée
Cordialement
Frenchie83
Messages postés
2240
Date d'inscription
lundi 6 mai 2013
Statut
Membre
Dernière intervention
11 août 2023
338
31 mai 2016 à 10:22
31 mai 2016 à 10:22
Bonjour
J'aimerais pouvoir répondre à votre souci d'étiquettes, mais je n'en vois nullement la trace, ou alors, utilisez-vous un fichier légèrement différent ? Si vous me montrez un exemple du problème qui vous affecte, je peux éventuellement y remédier.
Cdlt
J'aimerais pouvoir répondre à votre souci d'étiquettes, mais je n'en vois nullement la trace, ou alors, utilisez-vous un fichier légèrement différent ? Si vous me montrez un exemple du problème qui vous affecte, je peux éventuellement y remédier.
Cdlt
Utilisateur anonyme
Modifié par kamccm le 31/05/2016 à 11:01
Modifié par kamccm le 31/05/2016 à 11:01
J'utilise le fichier que vous me renvoyer afin de visualiser le problème. Par la suite je compte calquer la macro sur un autre fichier, qui est identique avec des données confidentielles. Voici des captures d'écrans pour visualiser le souci
1ère capture : feuille "GLOBAL" sans en-têtes --> les modifications (ajout/suppressions de lignes ou de colonnes) marchent très bien et aucune lignes vides n'apparaissent.
2ème capture : Mise sous forme de tableau avec en-têtes de la feuille "GLOBAL".
3ème capture : Après modification (ajout/suppression colonnes ou lignes) et ce sous le format tableau avec en-têtes --> modifications bien prises en compte mais apparition de lignes vides (Mon point de vue : à cause de la forme de tableau avec en-têtes, il semble que la macro en plus de marcher correctement, car elle effectue la maj, regroupe une nouvelle fois les tableaux mais cette fois-ci sans les données dans les cellules, ce qui explique ces lignes vides dont je souhaiterais la suppression)
Ci-joint le fichier
http://www.cjoint.com/c/FEFi0xFlyup. Cliquer sur le bouton et vous pourrez visualiser l'apparition de ces lignes superflues
Merci bien
1ère capture : feuille "GLOBAL" sans en-têtes --> les modifications (ajout/suppressions de lignes ou de colonnes) marchent très bien et aucune lignes vides n'apparaissent.
2ème capture : Mise sous forme de tableau avec en-têtes de la feuille "GLOBAL".
3ème capture : Après modification (ajout/suppression colonnes ou lignes) et ce sous le format tableau avec en-têtes --> modifications bien prises en compte mais apparition de lignes vides (Mon point de vue : à cause de la forme de tableau avec en-têtes, il semble que la macro en plus de marcher correctement, car elle effectue la maj, regroupe une nouvelle fois les tableaux mais cette fois-ci sans les données dans les cellules, ce qui explique ces lignes vides dont je souhaiterais la suppression)
Ci-joint le fichier
http://www.cjoint.com/c/FEFi0xFlyup. Cliquer sur le bouton et vous pourrez visualiser l'apparition de ces lignes superflues
Merci bien
Frenchie83
Messages postés
2240
Date d'inscription
lundi 6 mai 2013
Statut
Membre
Dernière intervention
11 août 2023
338
31 mai 2016 à 12:03
31 mai 2016 à 12:03
Effectivement, le problème est lié au fait que vous passiez en tableau.
Il faut donc modifier la fin de la macro pour l'effacement des lignes.
Remplacez les lignes suivantes:
Par:
Ca devrait aller
Il faut donc modifier la fin de la macro pour l'effacement des lignes.
Remplacez les lignes suivantes:
For CtrlLig = Cells.SpecialCells(xlCellTypeLastCell).Row To 9 Step -1 If Rows(CtrlLig).Find("*") Is Nothing Then Rows(CtrlLig).Delete Next CtrlLig
Par:
For i = [A100000].End(xlUp).Row To 9 Step -1 If Cells(i, 1) = "" Then Cells(i, 1).EntireRow.Delete Next i
Ca devrait aller
Parfait cela fonctionne merci pour votre aide. 3 dernières questions après je vous laisse tranquille, je vous en ai déjà assez demandé
La première, concerne la compréhension de la macro et : à quoi sert le fait de dire que la valeur de la plage de A4 à G7 correspond à "obsolescence"
La deuxième concerne la ligne 7 et particulièrement les cellules H7 à AO7 ici. J'y rentre la formule suivante =NB.SI.ENS(H8:H1000;"X";$AG8:$AG1000;"0")+NB.SI.ENS dans H7 que je fais glisser jusqu'à AO7. Cette formule fonctionne parfaitement mais disparait après mise à jour
Enfin, le temps de réponse de la macro environ 15 secondes après appui sur le bonton. Les facteurs sont-ils le nombres de données et les capacités de calcul de l'ordinateur ?
Je vous souhaite une bonne après-midi
La première, concerne la compréhension de la macro et : à quoi sert le fait de dire que la valeur de la plage de A4 à G7 correspond à "obsolescence"
La deuxième concerne la ligne 7 et particulièrement les cellules H7 à AO7 ici. J'y rentre la formule suivante =NB.SI.ENS(H8:H1000;"X";$AG8:$AG1000;"0")+NB.SI.ENS dans H7 que je fais glisser jusqu'à AO7. Cette formule fonctionne parfaitement mais disparait après mise à jour
Enfin, le temps de réponse de la macro environ 15 secondes après appui sur le bonton. Les facteurs sont-ils le nombres de données et les capacités de calcul de l'ordinateur ?
Je vous souhaite une bonne après-midi
Frenchie83
Messages postés
2240
Date d'inscription
lundi 6 mai 2013
Statut
Membre
Dernière intervention
11 août 2023
338
>
Utilisateur anonyme
31 mai 2016 à 13:55
31 mai 2016 à 13:55
Elle ne sert plus, vous pouvez la retirer
Utilisateur anonyme
>
Frenchie83
Messages postés
2240
Date d'inscription
lundi 6 mai 2013
Statut
Membre
Dernière intervention
11 août 2023
31 mai 2016 à 14:10
31 mai 2016 à 14:10
très bien
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
eriiic
Messages postés
24601
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
25 novembre 2024
7 240
31 mai 2016 à 12:18
31 mai 2016 à 12:18
Bonjour à tous,
Pourquoi dupliquer les données et vouloir une macro que tu ne sauras pas faire évoluer ?
Tout saisir dans la même feuille et ajouter une colonne Fabriquant sur laquelle tu mets un filtre automatique est plus simple et plus efficace non ? Inutile de compliquer.
eric
Pourquoi dupliquer les données et vouloir une macro que tu ne sauras pas faire évoluer ?
Tout saisir dans la même feuille et ajouter une colonne Fabriquant sur laquelle tu mets un filtre automatique est plus simple et plus efficace non ? Inutile de compliquer.
eric
Frenchie83
Messages postés
2240
Date d'inscription
lundi 6 mai 2013
Statut
Membre
Dernière intervention
11 août 2023
338
30 mai 2016 à 03:04
30 mai 2016 à 03:04
Bonjour
Je vous renvoi à la demande initiale: Les tableaux sont identiques au niveaux du nombres de colonnes et noms d'étiquettes. Seule le nombre de lignes varie.
Néanmoins, voici avec la modification:
https://www.cjoint.com/c/FEEbdUnZvdw
Cdlt
Je vous renvoi à la demande initiale: Les tableaux sont identiques au niveaux du nombres de colonnes et noms d'étiquettes. Seule le nombre de lignes varie.
Néanmoins, voici avec la modification:
https://www.cjoint.com/c/FEEbdUnZvdw
Cdlt
Petite incompréhension, je discutais du fait que chacun des tableaux étaient identiques sauf sur un point qui est le nombre de lignes. Par contre, la modification apportée ne change rien. Par exemple si je rajoute une colonne dans tous les tableaux entre L1 et L2 par exemple, rien ne se passe dans le global, la colonne ajoutée n'apparait pas
Frenchie83
Messages postés
2240
Date d'inscription
lundi 6 mai 2013
Statut
Membre
Dernière intervention
11 août 2023
338
30 mai 2016 à 12:54
30 mai 2016 à 12:54
comme ceci?
https://www.cjoint.com/c/FEEk1BxMItl
https://www.cjoint.com/c/FEEk1BxMItl
Frenchie, c'est presque parfait :) vous avez résolu le problème des colonnes et cela marche comme pour les lignes. Il reste un petit dernier soucis. A chaque nouvelle mise a jour, il se créer un grand nombre de lignes vides. A première vue, je remarque que la macro me prends bien en compte la modification a mettre a jour, mais en plus de cela, elle crée un nombre de lignes vides égale à la somme des lignes de chacun des tableau. Comme ci, la macro regroupait encore une fois les tableaux mais cette fois-ci avec des cases vides. Je ne sais pas si j'arrive à me faire comprendre. Ainsi je suis obligé a chaque de fois les supprimer après chaque mise à jour
cela ne doit pas être grand chose. En effet, cela semble être du a la mise en forme du tableau, si je reste comme vous sans étiquettes ou bien que je mette en forme avec le tableau, il faut que le regroupement commence sur la ligne 10 et non pas à 9 pour qu'il n'y ait pas de soucis bizarre en tout cas merci pour tout. Je vais quand meme mettre la conversation en résolue
Bonne journée
Cdlt
Bonne journée
Cdlt
Frenchie83
Messages postés
2240
Date d'inscription
lundi 6 mai 2013
Statut
Membre
Dernière intervention
11 août 2023
338
30 mai 2016 à 14:53
30 mai 2016 à 14:53
Essayez ceci
https://www.cjoint.com/c/FEEm0OyE7Il
https://www.cjoint.com/c/FEEm0OyE7Il
29 mai 2016 à 11:56
Cdlt
29 mai 2016 à 14:01
For i = 1 To 6
Sheets("FABRICANT " & i).Select faut-il ici remplacer fabricant par chacun des noms des feuilles ?