XL 2010 nombre de lignes automatique dans tableau

gservas

XLDnaute Junior
Bonjour
Je fais de nouveau appel à vos connaissances.
Je cherche à faire des tableaux avec un nombre de ligne automatique suivant le résultat inscrit dans une autre cellule (voir PJ). Je pense que ce nombre serait variable entre 0 et 150.
Aussi j'aimerai que l'écart entre ces tableaux variables soit identique.
Et l'idéal serait que que nombre inscrit dans les colonnes lignes soit aussi automatique.
Je pense que la solution n'est pas simple à trouver c'est pour celà que je vous demande de l'aide.
Merci par avance pour aide.
GS
 

Pièces jointes

  • nombre de ligne automatique tableau.xlsx
    13.7 KB · Affichages: 19

fanch55

XLDnaute Barbatruc
Version multi-feuilles :
La table de contrôle ( jusqu'alors baptisée Tableau0 ) devra avoir l’entête de colonne "Nombre de lignes" avec un commentaire "TabMain" , le code a été migré dans le module ThisWorkBook et sera donc exécuté pour chaque feuille activée ( tu peux tester en dupliquant la feuille )
 

Pièces jointes

  • gservas.xlsm
    38.8 KB · Affichages: 21

gservas

XLDnaute Junior
Bonsoir
Merci pour ton aide, mais je ne maitrise pas du tout VBA et je pensais que la manip était possible via les formules traditionnelles.
Ceci étant dit, le tableau0 que te renommes table de contrôle se situe sur un autre onglet qui n'a pas de tableau à gérer et en plus j'ai 78 tables de contrôle sur cet onglet.
Ensuite les tableaux 1 2 3 sont en réalité entre 1 et 45 sur chacun des 36 onglets. Mais en plus j'ai des onglets qui n'ont pas de tableaux qui seront gérés par cette table de contrôle.
Je ne sais pas quel est le plus simple si je dois de donner les noms des tableaux de controle et les tableaux à gérer sur chacun des onglets... ou autre choses
Aussi je ne sais pas comment on peux copier une macro d'un fichier vers un autre.
En tout cas merci pour ton aide.
GS
 

gservas

XLDnaute Junior
Bonjour
Après réflexion de la nuit, il m'est possible de mettre le tableau de contrôle de l'onglet concerné sur cet onglet.
Et j'ai trouvé comment copier une macro sur un autre fichier.
Par contre, peux-tu me dire comment ajouter le commentaire "tabmain" sur l'entéte de colonne nombre de ligne ?
Aussi est-ce que la macro va s'activer sur tous les onglets du fichier ou pas ? Si oui comment faire pour qu'elle le soit que sur certains ? En mettant un nom particulier au tableau ? ou autres?
Mes onglets sur lequel la macro doit s'activé sont déjà créer et donc je n'aurai pas de copie à faire.
Merci encore pour ton aide
GS
 

fanch55

XLDnaute Barbatruc
Bonjour
gservas.gif

Ou sélectionner la cellule et exécuter le code suivant:
VB:
Sub Add_Comment_Main()
    With Selection.Cells(1)
        If .Comment Is Nothing Then .AddComment
        With .Comment
            .Text "TabMain"
            .Shape.DrawingObject.AutoSize = True
        End With
    End With
End Sub

Aussi est-ce que la macro va s'activer sur tous les onglets du fichier ou pas ? Si oui comment faire pour qu'elle le soit que sur certains ? En mettant un nom particulier au tableau ? ou autres?
Les macros étant dans le module ThisWorkBook, vont s'activer pour chaque feuille uniquement s'il y a une table ayant le commentaire "TabMain"
1606392902699.png
 

fanch55

XLDnaute Barbatruc
Ceci étant dit, le tableau0 que te renommes table de contrôle se situe sur un autre onglet qui n'a pas de tableau à gérer et en plus j'ai 78 tables de contrôle sur cet onglet.

78 tables de contrôles sur un onglet et pour 36 onglets !!!! Il faut revoir la philosophie du contrôle.
Surtout s'il semblerait que tu ne t'en serves que pour ajouter ou détruire des lignes dans d'autres tableaux ....

Pourquoi ne pas utiliser les possibilités natives du clic droit sur un tableau ?
gservas.gif


Si tu pouvais me dire comment tu renseignes les lignes créés, peut-être pourrais-je t'aiguiller sur un autre procédé ?
 

gservas

XLDnaute Junior
Merci pour ton aide.
Je vais essayer d'installer la macro dans mon fichier pour voir ce que cela donne.
Sinon les lignes crées sont remplis de recherchV sur un autre tableau dans le lequel je rentre des résultats. Sur ce tableau de résultats excel créé des codes pour attribuer des places.
Sinon je vais essayer de t'envoyer un fichier résumé de tableau pour t'aider.
Merci
GS
 

gservas

XLDnaute Junior
Bonjour
Merci pour ta macro que j'ai réussi à insérer dans mon tableau. Et lors de la manipulation du fichier pour changer le chiffre dans la cellule dans la colonne nombre de lignes une erreur apparait sur mon fichier.

L'erreur est Erreur d'éxécution '1004'
Le déplacement des cellules dans un tableau de votre feuille de calcul n'est pas autorisé


L'erreur sur la macro se situe à la ligne TabMain.ListRows.Add 1 dans la macro ci-dessous :

Private Sub Workbook_SheetActivate(ByVal Sh As Object)
If Get_Tabmain(Sh) Then
Application.EnableEvents = False
TabMain.DataBodyRange.Rows.Delete
For Each Lobj In Sh.ListObjects
If Lobj.Name <> TabMain.Name Then
TabMain.ListRows.Add 1
TabMain.ListColumns("Tableau").DataBodyRange(1) = Lobj.Name
End If
Next
Application.EnableEvents = True
Info_Tableau Sh
End If

End Sub


Le probléme vient peut être du fait que le nombre de ligne est issue d'une formule matricielle (ci-dessous) qui calcule le nombre de ligne nécessaire au tableau.
=MAX(SI(ESTNUM(CHERCHE(F4;Récap_PSPeurs_départemental[Concat classement pspeur départemental]));CNUM(SUBSTITUE(Récap_PSPeurs_départemental[Concat classement pspeur départemental];F4;))))

Merci encore pour votre aide
GS
 

gservas

XLDnaute Junior
Bonjour
D'autres pistes pour régler le problème :
- convertir les tableaux en plage (est-ce que celà peut débloquer la situation, mais je perdrai les filtres et l'insertion automatique des formules dans mon tableau) Dans l'exemple je n'ai pas mis de formule pour simplifier.
- la colonne ligne n'est pas pas la colonne la plus à gauche dans mon tableau mais la seconde. Dois-je inverser les 2 colonnes pour que cela puisse fonctionner. Ce n'est pas le cas dans mon fichier exemple.
Merci pour votre aide
GS
 

Discussions similaires

  • Question
XL pour MAC mise en forme
Réponses
2
Affichages
125
Réponses
35
Affichages
907

Statistiques des forums

Discussions
312 345
Messages
2 087 453
Membres
103 546
dernier inscrit
mohamed tano