macro pour nommer nombreuses colonnes consécutives
9 réponses
Vincent_C
bonjour ,
j'aurais besoin d'une macro qui me permette de nommer par le contenu de la
celulle en ligne 2, chacune des colonnes consécutives du fichier ci après
(174 colonnes consécutives)
exemple : la macro nommerait la première colonne L d'après le contenu de la
cellule L2, soit _9761 ; puis elle nommerait la colonne M _9762, etc jusqu'à
la dernière colonne, soit la colonne GC qui selon la même logique serait
nommée TOTAL24
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
garnote
Salut Vincent,
Un petit exemple pour voir si ça peut te convenir :
Sub Nommer_Colonne_Selon_Ligne_Deux() Set F = Worksheets("Feuil1") For i = 12 To 15 nom = "_" & Cells(2, i) Set ici = F.Columns(i) ActiveWorkbook.Names.Add Name:=nom, RefersTo:=ici Next i End Sub
Colonne L : 12 Colonne GC : 185
Serge
"Vincent_C" a écrit dans le message de news:
bonjour ,
j'aurais besoin d'une macro qui me permette de nommer par le contenu de la celulle en ligne 2, chacune des colonnes consécutives du fichier ci après (174 colonnes consécutives)
exemple : la macro nommerait la première colonne L d'après le contenu de la cellule L2, soit _9761 ; puis elle nommerait la colonne M _9762, etc jusqu'à la dernière colonne, soit la colonne GC qui selon la même logique serait nommée TOTAL24
http://cjoint.com/?jgb5CqQy0U
merci d'avance !
Salut Vincent,
Un petit exemple pour voir si ça peut te convenir :
Sub Nommer_Colonne_Selon_Ligne_Deux()
Set F = Worksheets("Feuil1")
For i = 12 To 15
nom = "_" & Cells(2, i)
Set ici = F.Columns(i)
ActiveWorkbook.Names.Add Name:=nom, RefersTo:=ici
Next i
End Sub
Colonne L : 12
Colonne GC : 185
Serge
"Vincent_C" <VincentC@discussions.microsoft.com> a écrit dans le message de news:
9B27E28D-D424-408D-BA2B-6A2C6195611B@microsoft.com...
bonjour ,
j'aurais besoin d'une macro qui me permette de nommer par le contenu de la
celulle en ligne 2, chacune des colonnes consécutives du fichier ci après
(174 colonnes consécutives)
exemple : la macro nommerait la première colonne L d'après le contenu de la
cellule L2, soit _9761 ; puis elle nommerait la colonne M _9762, etc jusqu'à
la dernière colonne, soit la colonne GC qui selon la même logique serait
nommée TOTAL24
Un petit exemple pour voir si ça peut te convenir :
Sub Nommer_Colonne_Selon_Ligne_Deux() Set F = Worksheets("Feuil1") For i = 12 To 15 nom = "_" & Cells(2, i) Set ici = F.Columns(i) ActiveWorkbook.Names.Add Name:=nom, RefersTo:=ici Next i End Sub
Colonne L : 12 Colonne GC : 185
Serge
"Vincent_C" a écrit dans le message de news:
bonjour ,
j'aurais besoin d'une macro qui me permette de nommer par le contenu de la celulle en ligne 2, chacune des colonnes consécutives du fichier ci après (174 colonnes consécutives)
exemple : la macro nommerait la première colonne L d'après le contenu de la cellule L2, soit _9761 ; puis elle nommerait la colonne M _9762, etc jusqu'à la dernière colonne, soit la colonne GC qui selon la même logique serait nommée TOTAL24
http://cjoint.com/?jgb5CqQy0U
merci d'avance !
garnote
Salut Vincent,
Sub Nommer_Colonnes_Selon_Ligne_Deux() Set F = Worksheets("Feuil1") For i = 12 To 185 If Left(Cells(2, i), 1) = "T" Then nom = Cells(2, i) Else nom = "_" & Cells(2, i) End If Set ici = F.Columns(i) ActiveWorkbook.Names.Add Name:=nom, RefersTo:=ici Next i End Sub
Et ceci qui peut toujours servir : Sub Efface_Tous_Les_Noms() For Each n In ActiveWorkbook.Names n.Delete Next n End Sub
Serge
"Vincent_C" a écrit dans le message de news:
bonjour ,
j'aurais besoin d'une macro qui me permette de nommer par le contenu de la celulle en ligne 2, chacune des colonnes consécutives du fichier ci après (174 colonnes consécutives)
exemple : la macro nommerait la première colonne L d'après le contenu de la cellule L2, soit _9761 ; puis elle nommerait la colonne M _9762, etc jusqu'à la dernière colonne, soit la colonne GC qui selon la même logique serait nommée TOTAL24
http://cjoint.com/?jgb5CqQy0U
merci d'avance !
Salut Vincent,
Sub Nommer_Colonnes_Selon_Ligne_Deux()
Set F = Worksheets("Feuil1")
For i = 12 To 185
If Left(Cells(2, i), 1) = "T" Then
nom = Cells(2, i)
Else
nom = "_" & Cells(2, i)
End If
Set ici = F.Columns(i)
ActiveWorkbook.Names.Add Name:=nom, RefersTo:=ici
Next i
End Sub
Et ceci qui peut toujours servir :
Sub Efface_Tous_Les_Noms()
For Each n In ActiveWorkbook.Names
n.Delete
Next n
End Sub
Serge
"Vincent_C" <VincentC@discussions.microsoft.com> a écrit dans le message de news:
9B27E28D-D424-408D-BA2B-6A2C6195611B@microsoft.com...
bonjour ,
j'aurais besoin d'une macro qui me permette de nommer par le contenu de la
celulle en ligne 2, chacune des colonnes consécutives du fichier ci après
(174 colonnes consécutives)
exemple : la macro nommerait la première colonne L d'après le contenu de la
cellule L2, soit _9761 ; puis elle nommerait la colonne M _9762, etc jusqu'à
la dernière colonne, soit la colonne GC qui selon la même logique serait
nommée TOTAL24
Sub Nommer_Colonnes_Selon_Ligne_Deux() Set F = Worksheets("Feuil1") For i = 12 To 185 If Left(Cells(2, i), 1) = "T" Then nom = Cells(2, i) Else nom = "_" & Cells(2, i) End If Set ici = F.Columns(i) ActiveWorkbook.Names.Add Name:=nom, RefersTo:=ici Next i End Sub
Et ceci qui peut toujours servir : Sub Efface_Tous_Les_Noms() For Each n In ActiveWorkbook.Names n.Delete Next n End Sub
Serge
"Vincent_C" a écrit dans le message de news:
bonjour ,
j'aurais besoin d'une macro qui me permette de nommer par le contenu de la celulle en ligne 2, chacune des colonnes consécutives du fichier ci après (174 colonnes consécutives)
exemple : la macro nommerait la première colonne L d'après le contenu de la cellule L2, soit _9761 ; puis elle nommerait la colonne M _9762, etc jusqu'à la dernière colonne, soit la colonne GC qui selon la même logique serait nommée TOTAL24
http://cjoint.com/?jgb5CqQy0U
merci d'avance !
isabelle
bonjour Vincent,
Sub Macro1() Rows(1).Cut Rows(65536).Insert Shift:=xlDown Columns("L:GC").CreateNames Top:=True, Left:úlse, Bottom:úlse, Right:úlse Rows(65535).Cut Rows(1).Insert Shift:=xlDown End Sub
isabelle
bonjour ,
j'aurais besoin d'une macro qui me permette de nommer par le contenu de la celulle en ligne 2, chacune des colonnes consécutives du fichier ci après (174 colonnes consécutives)
exemple : la macro nommerait la première colonne L d'après le contenu de la cellule L2, soit _9761 ; puis elle nommerait la colonne M _9762, etc jusqu'à la dernière colonne, soit la colonne GC qui selon la même logique serait nommée TOTAL24
http://cjoint.com/?jgb5CqQy0U
merci d'avance !
bonjour Vincent,
Sub Macro1()
Rows(1).Cut
Rows(65536).Insert Shift:=xlDown
Columns("L:GC").CreateNames Top:=True, Left:úlse, Bottom:úlse, Right:úlse
Rows(65535).Cut
Rows(1).Insert Shift:=xlDown
End Sub
isabelle
bonjour ,
j'aurais besoin d'une macro qui me permette de nommer par le contenu de la
celulle en ligne 2, chacune des colonnes consécutives du fichier ci après
(174 colonnes consécutives)
exemple : la macro nommerait la première colonne L d'après le contenu de la
cellule L2, soit _9761 ; puis elle nommerait la colonne M _9762, etc jusqu'à
la dernière colonne, soit la colonne GC qui selon la même logique serait
nommée TOTAL24
Sub Macro1() Rows(1).Cut Rows(65536).Insert Shift:=xlDown Columns("L:GC").CreateNames Top:=True, Left:úlse, Bottom:úlse, Right:úlse Rows(65535).Cut Rows(1).Insert Shift:=xlDown End Sub
isabelle
bonjour ,
j'aurais besoin d'une macro qui me permette de nommer par le contenu de la celulle en ligne 2, chacune des colonnes consécutives du fichier ci après (174 colonnes consécutives)
exemple : la macro nommerait la première colonne L d'après le contenu de la cellule L2, soit _9761 ; puis elle nommerait la colonne M _9762, etc jusqu'à la dernière colonne, soit la colonne GC qui selon la même logique serait nommée TOTAL24
http://cjoint.com/?jgb5CqQy0U
merci d'avance !
garnote
Bonsoir Isabelle,
Oh la la, quelle élégante macro !
Bonne fin de soirée
Serge
"isabelle" a écrit dans le message de news: %
bonjour Vincent,
Sub Macro1() Rows(1).Cut Rows(65536).Insert Shift:=xlDown Columns("L:GC").CreateNames Top:=True, Left:úlse, Bottom:úlse, Right:úlse Rows(65535).Cut Rows(1).Insert Shift:=xlDown End Sub
isabelle
bonjour ,
j'aurais besoin d'une macro qui me permette de nommer par le contenu de la celulle en ligne 2, chacune des colonnes consécutives du fichier ci après (174 colonnes consécutives)
exemple : la macro nommerait la première colonne L d'après le contenu de la cellule L2, soit _9761 ; puis elle nommerait la colonne M _9762, etc jusqu'à la dernière colonne, soit la colonne GC qui selon la même logique serait nommée TOTAL24
http://cjoint.com/?jgb5CqQy0U
merci d'avance !
Bonsoir Isabelle,
Oh la la, quelle élégante macro !
Bonne fin de soirée
Serge
"isabelle" <i@v> a écrit dans le message de news: %236gSQWC8HHA.980@TK2MSFTNGP06.phx.gbl...
bonjour Vincent,
Sub Macro1()
Rows(1).Cut
Rows(65536).Insert Shift:=xlDown
Columns("L:GC").CreateNames Top:=True, Left:úlse, Bottom:úlse, Right:úlse
Rows(65535).Cut
Rows(1).Insert Shift:=xlDown
End Sub
isabelle
bonjour ,
j'aurais besoin d'une macro qui me permette de nommer par le contenu de la celulle en ligne 2, chacune des colonnes consécutives
du fichier ci après (174 colonnes consécutives)
exemple : la macro nommerait la première colonne L d'après le contenu de la cellule L2, soit _9761 ; puis elle nommerait la
colonne M _9762, etc jusqu'à la dernière colonne, soit la colonne GC qui selon la même logique serait nommée TOTAL24
Sub Macro1() Rows(1).Cut Rows(65536).Insert Shift:=xlDown Columns("L:GC").CreateNames Top:=True, Left:úlse, Bottom:úlse, Right:úlse Rows(65535).Cut Rows(1).Insert Shift:=xlDown End Sub
isabelle
bonjour ,
j'aurais besoin d'une macro qui me permette de nommer par le contenu de la celulle en ligne 2, chacune des colonnes consécutives du fichier ci après (174 colonnes consécutives)
exemple : la macro nommerait la première colonne L d'après le contenu de la cellule L2, soit _9761 ; puis elle nommerait la colonne M _9762, etc jusqu'à la dernière colonne, soit la colonne GC qui selon la même logique serait nommée TOTAL24
http://cjoint.com/?jgb5CqQy0U
merci d'avance !
Vincent_C
Bonjour à tous,
Effectivement, elle est splendide ! Merci beaucoup et excellente journée !
Bien cordialement,
Vincent_C
Bonsoir Isabelle,
Oh la la, quelle élégante macro !
Bonne fin de soirée
Serge
"isabelle" a écrit dans le message de news: %
bonjour Vincent,
Sub Macro1() Rows(1).Cut Rows(65536).Insert Shift:=xlDown Columns("L:GC").CreateNames Top:=True, Left:úlse, Bottom:úlse, Right:úlse Rows(65535).Cut Rows(1).Insert Shift:=xlDown End Sub
isabelle
bonjour ,
j'aurais besoin d'une macro qui me permette de nommer par le contenu de la celulle en ligne 2, chacune des colonnes consécutives du fichier ci après (174 colonnes consécutives)
exemple : la macro nommerait la première colonne L d'après le contenu de la cellule L2, soit _9761 ; puis elle nommerait la colonne M _9762, etc jusqu'à la dernière colonne, soit la colonne GC qui selon la même logique serait nommée TOTAL24
http://cjoint.com/?jgb5CqQy0U
merci d'avance !
Bonjour à tous,
Effectivement, elle est splendide ! Merci beaucoup et excellente journée !
Bien cordialement,
Vincent_C
Bonsoir Isabelle,
Oh la la, quelle élégante macro !
Bonne fin de soirée
Serge
"isabelle" <i@v> a écrit dans le message de news: %236gSQWC8HHA.980@TK2MSFTNGP06.phx.gbl...
bonjour Vincent,
Sub Macro1()
Rows(1).Cut
Rows(65536).Insert Shift:=xlDown
Columns("L:GC").CreateNames Top:=True, Left:úlse, Bottom:úlse, Right:úlse
Rows(65535).Cut
Rows(1).Insert Shift:=xlDown
End Sub
isabelle
bonjour ,
j'aurais besoin d'une macro qui me permette de nommer par le contenu de la celulle en ligne 2, chacune des colonnes consécutives
du fichier ci après (174 colonnes consécutives)
exemple : la macro nommerait la première colonne L d'après le contenu de la cellule L2, soit _9761 ; puis elle nommerait la
colonne M _9762, etc jusqu'à la dernière colonne, soit la colonne GC qui selon la même logique serait nommée TOTAL24
Effectivement, elle est splendide ! Merci beaucoup et excellente journée !
Bien cordialement,
Vincent_C
Bonsoir Isabelle,
Oh la la, quelle élégante macro !
Bonne fin de soirée
Serge
"isabelle" a écrit dans le message de news: %
bonjour Vincent,
Sub Macro1() Rows(1).Cut Rows(65536).Insert Shift:=xlDown Columns("L:GC").CreateNames Top:=True, Left:úlse, Bottom:úlse, Right:úlse Rows(65535).Cut Rows(1).Insert Shift:=xlDown End Sub
isabelle
bonjour ,
j'aurais besoin d'une macro qui me permette de nommer par le contenu de la celulle en ligne 2, chacune des colonnes consécutives du fichier ci après (174 colonnes consécutives)
exemple : la macro nommerait la première colonne L d'après le contenu de la cellule L2, soit _9761 ; puis elle nommerait la colonne M _9762, etc jusqu'à la dernière colonne, soit la colonne GC qui selon la même logique serait nommée TOTAL24
http://cjoint.com/?jgb5CqQy0U
merci d'avance !
Vincent_C
bonjour,
le fait de décaler la 1ère ligne a pour conséquence que les colonnes nommées ne sont pas complètes : ainsi le nom _97112 par exemple fait référence à þuil1!$DS$3:$DS$65536 au lieu de þuil1!$DS:$DS
y a t il SVP un moyen de corriger toutes les références des noms créés ?
d'avance merci à vous
bien cordialement,
Vincent_C
Bonjour à tous,
Effectivement, elle est splendide ! Merci beaucoup et excellente journée !
Bien cordialement,
Vincent_C
Bonsoir Isabelle,
Oh la la, quelle élégante macro !
Bonne fin de soirée
Serge
"isabelle" a écrit dans le message de news: %
bonjour Vincent,
Sub Macro1() Rows(1).Cut Rows(65536).Insert Shift:=xlDown Columns("L:GC").CreateNames Top:=True, Left:úlse, Bottom:úlse, Right:úlse Rows(65535).Cut Rows(1).Insert Shift:=xlDown End Sub
isabelle
bonjour ,
j'aurais besoin d'une macro qui me permette de nommer par le contenu de la celulle en ligne 2, chacune des colonnes consécutives du fichier ci après (174 colonnes consécutives)
exemple : la macro nommerait la première colonne L d'après le contenu de la cellule L2, soit _9761 ; puis elle nommerait la colonne M _9762, etc jusqu'à la dernière colonne, soit la colonne GC qui selon la même logique serait nommée TOTAL24
http://cjoint.com/?jgb5CqQy0U
merci d'avance !
bonjour,
le fait de décaler la 1ère ligne a pour conséquence que les colonnes nommées
ne sont pas complètes : ainsi le nom _97112 par exemple fait référence à
þuil1!$DS$3:$DS$65536 au lieu de þuil1!$DS:$DS
y a t il SVP un moyen de corriger toutes les références des noms créés ?
d'avance merci à vous
bien cordialement,
Vincent_C
Bonjour à tous,
Effectivement, elle est splendide ! Merci beaucoup et excellente journée !
Bien cordialement,
Vincent_C
Bonsoir Isabelle,
Oh la la, quelle élégante macro !
Bonne fin de soirée
Serge
"isabelle" <i@v> a écrit dans le message de news: %236gSQWC8HHA.980@TK2MSFTNGP06.phx.gbl...
bonjour Vincent,
Sub Macro1()
Rows(1).Cut
Rows(65536).Insert Shift:=xlDown
Columns("L:GC").CreateNames Top:=True, Left:úlse, Bottom:úlse, Right:úlse
Rows(65535).Cut
Rows(1).Insert Shift:=xlDown
End Sub
isabelle
bonjour ,
j'aurais besoin d'une macro qui me permette de nommer par le contenu de la celulle en ligne 2, chacune des colonnes consécutives
du fichier ci après (174 colonnes consécutives)
exemple : la macro nommerait la première colonne L d'après le contenu de la cellule L2, soit _9761 ; puis elle nommerait la
colonne M _9762, etc jusqu'à la dernière colonne, soit la colonne GC qui selon la même logique serait nommée TOTAL24
le fait de décaler la 1ère ligne a pour conséquence que les colonnes nommées ne sont pas complètes : ainsi le nom _97112 par exemple fait référence à þuil1!$DS$3:$DS$65536 au lieu de þuil1!$DS:$DS
y a t il SVP un moyen de corriger toutes les références des noms créés ?
d'avance merci à vous
bien cordialement,
Vincent_C
Bonjour à tous,
Effectivement, elle est splendide ! Merci beaucoup et excellente journée !
Bien cordialement,
Vincent_C
Bonsoir Isabelle,
Oh la la, quelle élégante macro !
Bonne fin de soirée
Serge
"isabelle" a écrit dans le message de news: %
bonjour Vincent,
Sub Macro1() Rows(1).Cut Rows(65536).Insert Shift:=xlDown Columns("L:GC").CreateNames Top:=True, Left:úlse, Bottom:úlse, Right:úlse Rows(65535).Cut Rows(1).Insert Shift:=xlDown End Sub
isabelle
bonjour ,
j'aurais besoin d'une macro qui me permette de nommer par le contenu de la celulle en ligne 2, chacune des colonnes consécutives du fichier ci après (174 colonnes consécutives)
exemple : la macro nommerait la première colonne L d'après le contenu de la cellule L2, soit _9761 ; puis elle nommerait la colonne M _9762, etc jusqu'à la dernière colonne, soit la colonne GC qui selon la même logique serait nommée TOTAL24
http://cjoint.com/?jgb5CqQy0U
merci d'avance !
isabelle
bonjour Vincent,
le fait de décaler la 1ère ligne a pour conséquence que les colonnes nommées ne sont pas complètes : ainsi le nom _97112 par exemple fait référence à þuil1!$DS$3:$DS$65536 au lieu de þuil1!$DS:$DS
y a t il SVP un moyen de corriger toutes les références des noms créés ?
oui c'est possible, avec la solution que serge (garnotte) t'as donné, _____________________________________________________________________ Sub Nommer_Colonnes_Selon_Ligne_Deux() Set F = Worksheets("Feuil1") For i = 12 To 185 If Left(Cells(2, i), 1) = "T" Then nom = Cells(2, i) Else nom = "_" & Cells(2, i) End If Set ici = F.Columns(i) ActiveWorkbook.Names.Add Name:=nom, RefersTo:=ici Next i End Sub ' Serge
Et ceci qui peut toujours servir :
Sub Efface_Tous_Les_Noms() For Each n In ActiveWorkbook.Names n.Delete Next n End Sub 'Serge ____________________________________________________________________________ isabelle
bonjour Vincent,
le fait de décaler la 1ère ligne a pour conséquence que les colonnes nommées
ne sont pas complètes : ainsi le nom _97112 par exemple fait référence à
þuil1!$DS$3:$DS$65536 au lieu de þuil1!$DS:$DS
y a t il SVP un moyen de corriger toutes les références des noms créés ?
oui c'est possible, avec la solution que serge (garnotte) t'as donné,
_____________________________________________________________________
Sub Nommer_Colonnes_Selon_Ligne_Deux()
Set F = Worksheets("Feuil1")
For i = 12 To 185
If Left(Cells(2, i), 1) = "T" Then
nom = Cells(2, i)
Else
nom = "_" & Cells(2, i)
End If
Set ici = F.Columns(i)
ActiveWorkbook.Names.Add Name:=nom, RefersTo:=ici
Next i
End Sub ' Serge
Et ceci qui peut toujours servir :
Sub Efface_Tous_Les_Noms()
For Each n In ActiveWorkbook.Names
n.Delete
Next n
End Sub 'Serge
____________________________________________________________________________
isabelle
le fait de décaler la 1ère ligne a pour conséquence que les colonnes nommées ne sont pas complètes : ainsi le nom _97112 par exemple fait référence à þuil1!$DS$3:$DS$65536 au lieu de þuil1!$DS:$DS
y a t il SVP un moyen de corriger toutes les références des noms créés ?
oui c'est possible, avec la solution que serge (garnotte) t'as donné, _____________________________________________________________________ Sub Nommer_Colonnes_Selon_Ligne_Deux() Set F = Worksheets("Feuil1") For i = 12 To 185 If Left(Cells(2, i), 1) = "T" Then nom = Cells(2, i) Else nom = "_" & Cells(2, i) End If Set ici = F.Columns(i) ActiveWorkbook.Names.Add Name:=nom, RefersTo:=ici Next i End Sub ' Serge
Et ceci qui peut toujours servir :
Sub Efface_Tous_Les_Noms() For Each n In ActiveWorkbook.Names n.Delete Next n End Sub 'Serge ____________________________________________________________________________ isabelle
Vincent_C
Merci beaucoup Isabelle et merci aussi à Serge !
très bonne journée
bien cordialement,
Vincent_C
bonjour Vincent,
le fait de décaler la 1ère ligne a pour conséquence que les colonnes nommées ne sont pas complètes : ainsi le nom _97112 par exemple fait référence à þuil1!$DS$3:$DS$65536 au lieu de þuil1!$DS:$DS
y a t il SVP un moyen de corriger toutes les références des noms créés ?
oui c'est possible, avec la solution que serge (garnotte) t'as donné, _____________________________________________________________________ Sub Nommer_Colonnes_Selon_Ligne_Deux() Set F = Worksheets("Feuil1") For i = 12 To 185 If Left(Cells(2, i), 1) = "T" Then nom = Cells(2, i) Else nom = "_" & Cells(2, i) End If Set ici = F.Columns(i) ActiveWorkbook.Names.Add Name:=nom, RefersTo:=ici Next i End Sub ' Serge
Et ceci qui peut toujours servir :
Sub Efface_Tous_Les_Noms() For Each n In ActiveWorkbook.Names n.Delete Next n End Sub 'Serge ____________________________________________________________________________ isabelle
Merci beaucoup Isabelle et merci aussi à Serge !
très bonne journée
bien cordialement,
Vincent_C
bonjour Vincent,
le fait de décaler la 1ère ligne a pour conséquence que les colonnes nommées
ne sont pas complètes : ainsi le nom _97112 par exemple fait référence à
þuil1!$DS$3:$DS$65536 au lieu de þuil1!$DS:$DS
y a t il SVP un moyen de corriger toutes les références des noms créés ?
oui c'est possible, avec la solution que serge (garnotte) t'as donné,
_____________________________________________________________________
Sub Nommer_Colonnes_Selon_Ligne_Deux()
Set F = Worksheets("Feuil1")
For i = 12 To 185
If Left(Cells(2, i), 1) = "T" Then
nom = Cells(2, i)
Else
nom = "_" & Cells(2, i)
End If
Set ici = F.Columns(i)
ActiveWorkbook.Names.Add Name:=nom, RefersTo:=ici
Next i
End Sub ' Serge
Et ceci qui peut toujours servir :
Sub Efface_Tous_Les_Noms()
For Each n In ActiveWorkbook.Names
n.Delete
Next n
End Sub 'Serge
____________________________________________________________________________
isabelle
le fait de décaler la 1ère ligne a pour conséquence que les colonnes nommées ne sont pas complètes : ainsi le nom _97112 par exemple fait référence à þuil1!$DS$3:$DS$65536 au lieu de þuil1!$DS:$DS
y a t il SVP un moyen de corriger toutes les références des noms créés ?
oui c'est possible, avec la solution que serge (garnotte) t'as donné, _____________________________________________________________________ Sub Nommer_Colonnes_Selon_Ligne_Deux() Set F = Worksheets("Feuil1") For i = 12 To 185 If Left(Cells(2, i), 1) = "T" Then nom = Cells(2, i) Else nom = "_" & Cells(2, i) End If Set ici = F.Columns(i) ActiveWorkbook.Names.Add Name:=nom, RefersTo:=ici Next i End Sub ' Serge
Et ceci qui peut toujours servir :
Sub Efface_Tous_Les_Noms() For Each n In ActiveWorkbook.Names n.Delete Next n End Sub 'Serge ____________________________________________________________________________ isabelle
isabelle
bonjour Vincent,
attention tout de même car avec des noms représentant une colonne entière tu ne ne pourras pas utilisé les formulles matriciel, sommeprod.
isabelle
Merci beaucoup Isabelle et merci aussi à Serge !
très bonne journée
bien cordialement,
Vincent_C
bonjour Vincent,
le fait de décaler la 1ère ligne a pour conséquence que les colonnes nommées ne sont pas complètes : ainsi le nom _97112 par exemple fait référence à þuil1!$DS$3:$DS$65536 au lieu de þuil1!$DS:$DS
y a t il SVP un moyen de corriger toutes les références des noms créés ?
oui c'est possible, avec la solution que serge (garnotte) t'as donné, _____________________________________________________________________ Sub Nommer_Colonnes_Selon_Ligne_Deux() Set F = Worksheets("Feuil1") For i = 12 To 185 If Left(Cells(2, i), 1) = "T" Then nom = Cells(2, i) Else nom = "_" & Cells(2, i) End If Set ici = F.Columns(i) ActiveWorkbook.Names.Add Name:=nom, RefersTo:=ici Next i End Sub ' Serge
Et ceci qui peut toujours servir :
Sub Efface_Tous_Les_Noms() For Each n In ActiveWorkbook.Names n.Delete Next n End Sub 'Serge ____________________________________________________________________________ isabelle
bonjour Vincent,
attention tout de même car avec des noms représentant une colonne entière tu ne ne pourras pas utilisé
les formulles matriciel, sommeprod.
isabelle
Merci beaucoup Isabelle et merci aussi à Serge !
très bonne journée
bien cordialement,
Vincent_C
bonjour Vincent,
le fait de décaler la 1ère ligne a pour conséquence que les colonnes nommées
ne sont pas complètes : ainsi le nom _97112 par exemple fait référence à
þuil1!$DS$3:$DS$65536 au lieu de þuil1!$DS:$DS
y a t il SVP un moyen de corriger toutes les références des noms créés ?
oui c'est possible, avec la solution que serge (garnotte) t'as donné,
_____________________________________________________________________
Sub Nommer_Colonnes_Selon_Ligne_Deux()
Set F = Worksheets("Feuil1")
For i = 12 To 185
If Left(Cells(2, i), 1) = "T" Then
nom = Cells(2, i)
Else
nom = "_" & Cells(2, i)
End If
Set ici = F.Columns(i)
ActiveWorkbook.Names.Add Name:=nom, RefersTo:=ici
Next i
End Sub ' Serge
Et ceci qui peut toujours servir :
Sub Efface_Tous_Les_Noms()
For Each n In ActiveWorkbook.Names
n.Delete
Next n
End Sub 'Serge
____________________________________________________________________________
isabelle
attention tout de même car avec des noms représentant une colonne entière tu ne ne pourras pas utilisé les formulles matriciel, sommeprod.
isabelle
Merci beaucoup Isabelle et merci aussi à Serge !
très bonne journée
bien cordialement,
Vincent_C
bonjour Vincent,
le fait de décaler la 1ère ligne a pour conséquence que les colonnes nommées ne sont pas complètes : ainsi le nom _97112 par exemple fait référence à þuil1!$DS$3:$DS$65536 au lieu de þuil1!$DS:$DS
y a t il SVP un moyen de corriger toutes les références des noms créés ?
oui c'est possible, avec la solution que serge (garnotte) t'as donné, _____________________________________________________________________ Sub Nommer_Colonnes_Selon_Ligne_Deux() Set F = Worksheets("Feuil1") For i = 12 To 185 If Left(Cells(2, i), 1) = "T" Then nom = Cells(2, i) Else nom = "_" & Cells(2, i) End If Set ici = F.Columns(i) ActiveWorkbook.Names.Add Name:=nom, RefersTo:=ici Next i End Sub ' Serge
Et ceci qui peut toujours servir :
Sub Efface_Tous_Les_Noms() For Each n In ActiveWorkbook.Names n.Delete Next n End Sub 'Serge ____________________________________________________________________________ isabelle