Insérer une ligne sans avoir à modifier les macros

Bonjour,

J’ai un petit souci je souhaiterais savoir si il existe un moyen d’insérer une ligne dans un tableau sans que cela ne me force à modifier la macro qui en ai lié

Je m’explique j’ai créer un tableau d’environ 15 lignes mais il m’en faudra plus au cour de l’année, j’ai utiliser une macro pour cacher le tableaux et en faire apparaitre un autre.

Mon soucis est que quand j’insert une nouvelle ligne je dois modifier la macro. (Pas un problème si il n’y avait que c’est deux tableaux, mais en tout il va y avoir plus de 50 tableau).

Tu te rends bien compte qu'il est impossible de te fournir de réponse...

autre que : on construit une macro pour qu'elle fasse ce qu'on attend d'elle !!!

C'est la seule règle importante en l'occurrence.

Bonjour,

Tu peux nommer la 1ère cellule de chaque tableau.

Ensuite tu utilises son nom. Par exemple nommer A15 Tabl1 et :

    'adresse
    MsgBox "Adresse Tabl1 : " & [Tabl1].Address
    'récup données dans une variable
    datas = [Tabl1].Resize(15, 5).Value

eric

Bonjour Eric ,

Tout d’abords merci pour ta réponse, j’ai essayer ce que tu as dis et le problème reste inchangée quand j'insert une ligne dans le tableau la dernière n’ai plus pris en compte par la macro,

Je débute et apprend par moi mème du coup il es fort possible que je ne me trompe dans l'utilisation du code.

Sub Macro9()
'
' Macro9 Macro
'

'
    'adresse
   MsgBox "Adresse Tabl1 : " & [Tabl1].Address
    'récup données dans une variable
   datas = [Tabl1].Resize(15, 5).Value
   Rows("72:77").Select
    Selection.EntireRow.Hidden = True
End Sub

Je pense avoir réussi

Pouvez vous me dire si c'est correcte pour vous et si il y a plus simple

En tout cas ça fonctionne donc cool

Sub Macro11()
'
' Macro11 Macro
'

'
    MsgBox ("Tabl1:Tabl2") & [Tabl1:Tabl2].Address
    'récup données dans une variable
   datas = [Tabl1:Tabl2].Resize(15, 5).Value
   Range("Tabl1:Tabl2").Select
    Application.Run "'Feuill1!Macro9"
End Sub

Bonjour,

Pas beaucoup de lien entre ce que je t'ai mis et ce que tu a ajouté en dessous.

Tabl1 démarre en ligne 15. Si une ligne a été insérée au-dessus tu verras que le nom a suivi et qu'il est en ligne 16.

Idem pour les autres.

Maintenant pour la hauteur des tableaux c'est à toi de gérer.

Soit tu regardes sur une colonne que tu sais complète, soit tu regardes la position du nom suivant et tu fais la différence moins les lignes de séparation ou que sais-je encore.

eric

Youpi ça fonctionne !!!

Quand j'insert une ligne dans le tableaux toute les lignes sont pris en compte merci beaucoup

On n'est bien d'accord que les 2 lignes que je t'ai donné ne sont que des exemples et ne servent à rien dans ton code hein.

Au passage dans 99.9% des cas un .select est inutile et ne sert à rien d'autre que ralentir.

Oui tkt pas , j'ai modifié comme tu l'as dit et ça fonctionne reste plus qu'à le faire pour les 50 tableau

Rechercher des sujets similaires à "inserer ligne modifier macros"