Soit en A1 l'entête de colonne et de A2 à A11 une plage nommée PLAGE1
En insérant10 enregistrements à partir de A2 (avec un décalage vers le bas)
on a 20 enregistrements de A2 à A21
et la PLAGE1 s'est déplacée de A12 à A21
Actuellement, je redéfinis manuellement la PLAGE1 pour qu'elle prenne tous
les enregistrements de A2 à A21
Existe t'il une solution pour qu'une plage nommée "accepte et englobe"
automatiquement tous les enregistrements, anciens et nouveaux ?
Merci,
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Jacky
Bonsoir,
Je propose ceci à placer dans le module de la feuille en question '-------------- Private Sub Worksheet_Change(ByVal Target As Range) If Target.Column = 1 Then ActiveWorkbook.Names.Add Name:="plage1", RefersTo:= _ "=OFFSET(Feuil1!$a$2,,,COUNTA(Feuil1!$a:$a)-1)" End If End Sub '-------------- -- Salutations JJ
"NewsMic" a écrit dans le message de news: 49930333$0$4057$
Bonjour,
Soit en A1 l'entête de colonne et de A2 à A11 une plage nommée PLAGE1 En insérant10 enregistrements à partir de A2 (avec un décalage vers le bas) on a 20 enregistrements de A2 à A21 et la PLAGE1 s'est déplacée de A12 à A21 Actuellement, je redéfinis manuellement la PLAGE1 pour qu'elle prenne tous les enregistrements de A2 à A21 Existe t'il une solution pour qu'une plage nommée "accepte et englobe" automatiquement tous les enregistrements, anciens et nouveaux ? Merci,
NewsMic
Bonsoir,
Je propose ceci à placer dans le module de la feuille en question
'--------------
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 1 Then
ActiveWorkbook.Names.Add Name:="plage1", RefersTo:= _
"=OFFSET(Feuil1!$a$2,,,COUNTA(Feuil1!$a:$a)-1)"
End If
End Sub
'--------------
--
Salutations
JJ
"NewsMic" <britannicus60@wanadoo.fr> a écrit dans le message de news:
49930333$0$4057$ba4acef3@news.orange.fr...
Bonjour,
Soit en A1 l'entête de colonne et de A2 à A11 une plage nommée PLAGE1
En insérant10 enregistrements à partir de A2 (avec un décalage vers le
bas) on a 20 enregistrements de A2 à A21
et la PLAGE1 s'est déplacée de A12 à A21
Actuellement, je redéfinis manuellement la PLAGE1 pour qu'elle prenne tous
les enregistrements de A2 à A21
Existe t'il une solution pour qu'une plage nommée "accepte et englobe"
automatiquement tous les enregistrements, anciens et nouveaux ?
Merci,
Je propose ceci à placer dans le module de la feuille en question '-------------- Private Sub Worksheet_Change(ByVal Target As Range) If Target.Column = 1 Then ActiveWorkbook.Names.Add Name:="plage1", RefersTo:= _ "=OFFSET(Feuil1!$a$2,,,COUNTA(Feuil1!$a:$a)-1)" End If End Sub '-------------- -- Salutations JJ
"NewsMic" a écrit dans le message de news: 49930333$0$4057$
Bonjour,
Soit en A1 l'entête de colonne et de A2 à A11 une plage nommée PLAGE1 En insérant10 enregistrements à partir de A2 (avec un décalage vers le bas) on a 20 enregistrements de A2 à A21 et la PLAGE1 s'est déplacée de A12 à A21 Actuellement, je redéfinis manuellement la PLAGE1 pour qu'elle prenne tous les enregistrements de A2 à A21 Existe t'il une solution pour qu'une plage nommée "accepte et englobe" automatiquement tous les enregistrements, anciens et nouveaux ? Merci,
NewsMic
Youky \(BJ\)
Bonjour, Insertion /nom/définir fait référence......mettre ceci en mettant bien le nom d'onglet cela fera une liste toujours à jour Þcaler(nomonglet!$A$2;0;0;nbval(nomonglet!$A:$A);1)
-- Youky (BJ)
Bonjour,
Insertion /nom/définir
fait référence......mettre ceci en mettant bien le nom d'onglet
cela fera une liste toujours à jour
Þcaler(nomonglet!$A$2;0;0;nbval(nomonglet!$A:$A);1)
Bonjour, Insertion /nom/définir fait référence......mettre ceci en mettant bien le nom d'onglet cela fera une liste toujours à jour Þcaler(nomonglet!$A$2;0;0;nbval(nomonglet!$A:$A);1)
-- Youky (BJ)
Fredo P.
il y a aucun inconvénient à nommer ta plage à partir de la première ligne (l'entête), de cette façon ta plage prendra la bonne dimension. "NewsMic" a écrit dans le message de news:49930333$0$4057$
Bonjour,
Soit en A1 l'entête de colonne et de A2 à A11 une plage nommée PLAGE1 En insérant10 enregistrements à partir de A2 (avec un décalage vers le
bas)
on a 20 enregistrements de A2 à A21 et la PLAGE1 s'est déplacée de A12 à A21 Actuellement, je redéfinis manuellement la PLAGE1 pour qu'elle prenne tous les enregistrements de A2 à A21 Existe t'il une solution pour qu'une plage nommée "accepte et englobe" automatiquement tous les enregistrements, anciens et nouveaux ? Merci,
NewsMic
il y a aucun inconvénient à nommer ta plage à partir de la première ligne
(l'entête), de cette façon ta plage prendra la bonne dimension.
"NewsMic" <britannicus60@wanadoo.fr> a écrit dans le message de
news:49930333$0$4057$ba4acef3@news.orange.fr...
Bonjour,
Soit en A1 l'entête de colonne et de A2 à A11 une plage nommée PLAGE1
En insérant10 enregistrements à partir de A2 (avec un décalage vers le
bas)
on a 20 enregistrements de A2 à A21
et la PLAGE1 s'est déplacée de A12 à A21
Actuellement, je redéfinis manuellement la PLAGE1 pour qu'elle prenne tous
les enregistrements de A2 à A21
Existe t'il une solution pour qu'une plage nommée "accepte et englobe"
automatiquement tous les enregistrements, anciens et nouveaux ?
Merci,
il y a aucun inconvénient à nommer ta plage à partir de la première ligne (l'entête), de cette façon ta plage prendra la bonne dimension. "NewsMic" a écrit dans le message de news:49930333$0$4057$
Bonjour,
Soit en A1 l'entête de colonne et de A2 à A11 une plage nommée PLAGE1 En insérant10 enregistrements à partir de A2 (avec un décalage vers le
bas)
on a 20 enregistrements de A2 à A21 et la PLAGE1 s'est déplacée de A12 à A21 Actuellement, je redéfinis manuellement la PLAGE1 pour qu'elle prenne tous les enregistrements de A2 à A21 Existe t'il une solution pour qu'une plage nommée "accepte et englobe" automatiquement tous les enregistrements, anciens et nouveaux ? Merci,
NewsMic
Fredo P.
Autrement dis, si ta plage commence en A2, l'insertion d'une ligne en A2 pousse ta plage vers le bas alors que si elle est définie à partir de A1, il y a une véritable insertion et agrandissement de la plage automatique.
Autrement dis, si ta plage commence en A2, l'insertion d'une ligne en A2
pousse ta plage vers le bas alors que si elle est définie à partir de A1, il
y a une véritable insertion et agrandissement de la plage automatique.
Autrement dis, si ta plage commence en A2, l'insertion d'une ligne en A2 pousse ta plage vers le bas alors que si elle est définie à partir de A1, il y a une véritable insertion et agrandissement de la plage automatique.
michdenis
A ) En passant, si le nom est créé à partir d'un événement dans VBA, pourquoi utiliser une formule plutôt qu'un truc du genre
B ) Pourquoi définir le nom au niveau du Workbook au lieu de le définir au niveau de la feuille ? C'est comme si dans une petite procédure sans raison, on utilisait des variables "public" plutôt que de restreindre l'étendue ce ces dernières à la procédure concernée. (Même si le nom est défini au niveau de la feuille, on peut l'utiliser dans une autre feuille, on a pour se faire que de le faire précéder par le nom de la feuille. þuil1!toto
Mes 2 cents. Quelle générosité !!! ;-)
"Jacky" a écrit dans le message de groupe de discussion : O# Bonsoir,
Je propose ceci à placer dans le module de la feuille en question '-------------- Private Sub Worksheet_Change(ByVal Target As Range) If Target.Column = 1 Then ActiveWorkbook.Names.Add Name:="plage1", RefersTo:= _ "=OFFSET(Feuil1!$a$2,,,COUNTA(Feuil1!$a:$a)-1)" End If End Sub '-------------- -- Salutations JJ
"NewsMic" a écrit dans le message de news: 49930333$0$4057$
Bonjour,
Soit en A1 l'entête de colonne et de A2 à A11 une plage nommée PLAGE1 En insérant10 enregistrements à partir de A2 (avec un décalage vers le bas) on a 20 enregistrements de A2 à A21 et la PLAGE1 s'est déplacée de A12 à A21 Actuellement, je redéfinis manuellement la PLAGE1 pour qu'elle prenne tous les enregistrements de A2 à A21 Existe t'il une solution pour qu'une plage nommée "accepte et englobe" automatiquement tous les enregistrements, anciens et nouveaux ? Merci,
NewsMic
A ) En passant, si le nom est créé à partir d'un événement dans
VBA, pourquoi utiliser une formule plutôt qu'un truc du genre
B ) Pourquoi définir le nom au niveau du Workbook au lieu de le définir
au niveau de la feuille ? C'est comme si dans une petite procédure sans
raison, on utilisait des variables "public" plutôt que de restreindre l'étendue
ce ces dernières à la procédure concernée. (Même si le nom est défini au
niveau de la feuille, on peut l'utiliser dans une autre feuille, on a pour se
faire que de le faire précéder par le nom de la feuille. þuil1!toto
Mes 2 cents. Quelle générosité !!! ;-)
"Jacky" <Dupond@marcel.fr> a écrit dans le message de groupe de discussion :
O#iiOyGjJHA.5244@TK2MSFTNGP06.phx.gbl...
Bonsoir,
Je propose ceci à placer dans le module de la feuille en question
'--------------
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 1 Then
ActiveWorkbook.Names.Add Name:="plage1", RefersTo:= _
"=OFFSET(Feuil1!$a$2,,,COUNTA(Feuil1!$a:$a)-1)"
End If
End Sub
'--------------
--
Salutations
JJ
"NewsMic" <britannicus60@wanadoo.fr> a écrit dans le message de news:
49930333$0$4057$ba4acef3@news.orange.fr...
Bonjour,
Soit en A1 l'entête de colonne et de A2 à A11 une plage nommée PLAGE1
En insérant10 enregistrements à partir de A2 (avec un décalage vers le
bas) on a 20 enregistrements de A2 à A21
et la PLAGE1 s'est déplacée de A12 à A21
Actuellement, je redéfinis manuellement la PLAGE1 pour qu'elle prenne tous
les enregistrements de A2 à A21
Existe t'il une solution pour qu'une plage nommée "accepte et englobe"
automatiquement tous les enregistrements, anciens et nouveaux ?
Merci,
B ) Pourquoi définir le nom au niveau du Workbook au lieu de le définir au niveau de la feuille ? C'est comme si dans une petite procédure sans raison, on utilisait des variables "public" plutôt que de restreindre l'étendue ce ces dernières à la procédure concernée. (Même si le nom est défini au niveau de la feuille, on peut l'utiliser dans une autre feuille, on a pour se faire que de le faire précéder par le nom de la feuille. þuil1!toto
Mes 2 cents. Quelle générosité !!! ;-)
"Jacky" a écrit dans le message de groupe de discussion : O# Bonsoir,
Je propose ceci à placer dans le module de la feuille en question '-------------- Private Sub Worksheet_Change(ByVal Target As Range) If Target.Column = 1 Then ActiveWorkbook.Names.Add Name:="plage1", RefersTo:= _ "=OFFSET(Feuil1!$a$2,,,COUNTA(Feuil1!$a:$a)-1)" End If End Sub '-------------- -- Salutations JJ
"NewsMic" a écrit dans le message de news: 49930333$0$4057$
Bonjour,
Soit en A1 l'entête de colonne et de A2 à A11 une plage nommée PLAGE1 En insérant10 enregistrements à partir de A2 (avec un décalage vers le bas) on a 20 enregistrements de A2 à A21 et la PLAGE1 s'est déplacée de A12 à A21 Actuellement, je redéfinis manuellement la PLAGE1 pour qu'elle prenne tous les enregistrements de A2 à A21 Existe t'il une solution pour qu'une plage nommée "accepte et englobe" automatiquement tous les enregistrements, anciens et nouveaux ? Merci,
NewsMic
Jacky
Bonsoir, Remarques judicieuses Ce qui donne, sauf erreur (en prévision xl2007) '------------ Private Sub Worksheet_Change(ByVal Target As Range) If Target.Count = 1 Then Range("a2:a" & Cells(Rows.Count, "a").End(3).Row).Name = Me.Name & "!" & "Plage1" End If End Sub '------------ Ou dois-je verser les 2 cents ;o)) -- Salutations JJ
"michdenis" a écrit dans le message de news:
A ) En passant, si le nom est créé à partir d'un événement dans VBA, pourquoi utiliser une formule plutôt qu'un truc du genre
B ) Pourquoi définir le nom au niveau du Workbook au lieu de le définir au niveau de la feuille ? C'est comme si dans une petite procédure sans raison, on utilisait des variables "public" plutôt que de restreindre l'étendue ce ces dernières à la procédure concernée. (Même si le nom est défini au niveau de la feuille, on peut l'utiliser dans une autre feuille, on a pour se faire que de le faire précéder par le nom de la feuille. þuil1!toto
Mes 2 cents. Quelle générosité !!! ;-)
Bonsoir,
Remarques judicieuses
Ce qui donne, sauf erreur (en prévision xl2007)
'------------
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Count = 1 Then
Range("a2:a" & Cells(Rows.Count, "a").End(3).Row).Name = Me.Name & "!" &
"Plage1"
End If
End Sub
'------------
Ou dois-je verser les 2 cents
;o))
--
Salutations
JJ
"michdenis" <michdenis@hotmail.com> a écrit dans le message de news:
C18DEED9-4739-4647-BD40-844203DD5590@microsoft.com...
A ) En passant, si le nom est créé à partir d'un événement dans
VBA, pourquoi utiliser une formule plutôt qu'un truc du genre
B ) Pourquoi définir le nom au niveau du Workbook au lieu de le définir
au niveau de la feuille ? C'est comme si dans une petite procédure sans
raison, on utilisait des variables "public" plutôt que de restreindre
l'étendue
ce ces dernières à la procédure concernée. (Même si le nom est défini au
niveau de la feuille, on peut l'utiliser dans une autre feuille, on a pour
se
faire que de le faire précéder par le nom de la feuille. þuil1!toto
Bonsoir, Remarques judicieuses Ce qui donne, sauf erreur (en prévision xl2007) '------------ Private Sub Worksheet_Change(ByVal Target As Range) If Target.Count = 1 Then Range("a2:a" & Cells(Rows.Count, "a").End(3).Row).Name = Me.Name & "!" & "Plage1" End If End Sub '------------ Ou dois-je verser les 2 cents ;o)) -- Salutations JJ
"michdenis" a écrit dans le message de news:
A ) En passant, si le nom est créé à partir d'un événement dans VBA, pourquoi utiliser une formule plutôt qu'un truc du genre
B ) Pourquoi définir le nom au niveau du Workbook au lieu de le définir au niveau de la feuille ? C'est comme si dans une petite procédure sans raison, on utilisait des variables "public" plutôt que de restreindre l'étendue ce ces dernières à la procédure concernée. (Même si le nom est défini au niveau de la feuille, on peut l'utiliser dans une autre feuille, on a pour se faire que de le faire précéder par le nom de la feuille. þuil1!toto