Excel - Insert dans une zone nommée

labrele Messages postés 3 Date d'inscription   Statut Membre Dernière intervention   -  
irongege Messages postés 41001 Date d'inscription   Statut Modérateur Dernière intervention   -
Bonjour,

Encore une question se rapportant aux zones nommées sous Excel.

Exemple :

Sur une feuille j'ai une zone nommée (ref_1) pour les cellules C59 jusqu'a C70.

Quand j'insère une ligne entre les cellules C60 jusqu’a la cellule C70 pas de problème, la ligne est bien insérée et la zone nommée est bien agrandie de C59 jusqu’a C71

Par contre quand j'insère une ligne à partir de la cellule C59 la nouvelle ligne est insérée au dessus et NE RENTRE PAS dans la zone nommée qui est elle translatée de C60 jusqu'à C71

Comment faire (voir macro ci-dessous qui peux servir de base pour réflexion) pour corriger ce problème ???

Merci a tous

---------

Private Sub insert_ligne_Click()

lig_select = Selection.Row
nb_lig_select = Selection.Rows.Count

For activ_lig = lig_select To lig_select + nb_lig_select - 1
Rows(ActiveCell.Row & ":" & ActiveCell.Row).Select
Selection.Copy
Selection.Insert Shift:=xlDown
If Len(Cells(activ_lig, 3)) > 0 Then Cells(activ_lig, 3) = ""
If Len(Cells(activ_lig, 4)) > 0 Then Cells(activ_lig, 4) = ""
If Len(Cells(activ_lig, 5)) > 0 Then Cells(activ_lig, 5) = ""
If Len(Cells(activ_lig, 14)) > 0 Then Cells(activ_lig, 14) = ""
If Len(Cells(activ_lig, 20)) > 0 Then Cells(activ_lig, 20) = ""
If Len(Cells(activ_lig, 28)) > 0 Then Cells(activ_lig, 28) = ""
If Len(Cells(activ_lig, 29)) > 0 Then Cells(activ_lig, 29) = ""
If Len(Cells(activ_lig, 30)) > 0 Then Cells(activ_lig, 30) = ""
Next activ_lig

End Sub
A voir également:

2 réponses

xdomxfr
 
remarque quand tu insert une ligne sur excel

si tu selectione b2 il t'inser au dessus
je pense donc qu'il faut que tu reduise ta zone d'insert c60 a c70 mais analyse entre c59 et c70 pour que la nouveele ligne insere en c59 soit prise en compte

essaye
0
eriiic Messages postés 24603 Date d'inscription   Statut Contributeur Dernière intervention   7 276
 
Bonjour,

tu ne peux pas corriger ce pb puisque c'en n'est pas un, c'est prévu comme ça. Des fois ça t'arrange, d'autres fois ça t'embete...

Par contre tu peux mettre un en-tete à ta liste au-dessus et l'inclure dans le nom, l'insertion se fera ainsi toujours dans ta plage nommée.
Ou bien tu inseres n'importe où et tu tries ensuite.
Ou bien encore tu redéfinis ton nom...
eric
0
irongege Messages postés 41001 Date d'inscription   Statut Modérateur Dernière intervention   5 079
 
"Le message n° 3, ne respectant pas en tous points la charte de CCM, a du être supprimé, cependant il contenait la solution suivante: ..............................."

ou encore tu utilises les zones de listes !!!
;-)
0