Pour un classeur, j'ai trouv=E9, dans les archives de ce groupe=20
(Merci!!!), une macro qui me permet de dupliquer une feuille "mod=E8le" e=
n=20
incr=E9mentant les noms des onglets
Sub Dupliquerfeuille()
Dim x As String
x =3D ActiveSheet.Name
ActiveSheet.Copy After:=3DActiveSheet
ActiveSheet.Name =3D Left(x, 3) & Format(Right(x, 4) + 1, "0000")
End Sub
Ma feuille mod=E8le s'appelle Sem0001 et la macro me cr=E9e automatiqueme=
nt=20
des copies conformes, Sem0002, Sem0003...
Mais :-)
En N1 de chaque feuille, j'ai une formule que je souhaiterais=20
incr=E9menter =E0 chaque feuille cr=E9=E9e.
Exemple:
Sur la feuille no 2, la formule est: =3DSem0001!N1+7
Je souhaiterais que sur la feuille no 3 (nomm=E9e Sem0003), la formule=20
soit transform=E9e en: Sem0002 + 7 ...etc.
En fait que la macro reprenne syst=E9matiquement la valeur de N1 de la=20
feuille pr=E9c=E9dente en y ajoutant 7.
Ou encore qu'elle prenne la valeur de la premi=E8re feuille et y ajoute =E0=
=20
chaque feuille cr=E9=E9e 7*(Son num=E9ro-1)
Remarque: La feuille de d=E9part n'est pas la premi=E8re feuille du class=
eur.
Salut Pierre Je te propose d'inclure à ton code ceci :
Range("N1").FormulaR1C1 = "=" & x & "!RC+7"
ce qui donne au final le code suivant :
Dim x As String x = ActiveSheet.Name ActiveSheet.Copy After:¬tiveSheet ActiveSheet.Name = Left(x, 3) & Format(Right(x, 4) + 1, "0000") Range("N1").FormulaR1C1 = "=" & x & "!RC+7"
Est ce bien ainsi ???
Bonjour à toutes et tous;
Pour un classeur, j'ai trouvé, dans les archives de ce groupe (Merci!!!), une macro qui me permet de dupliquer une feuille "modèle" en incrémentant les noms des onglets
Sub Dupliquerfeuille() Dim x As String x = ActiveSheet.Name ActiveSheet.Copy After:¬tiveSheet ActiveSheet.Name = Left(x, 3) & Format(Right(x, 4) + 1, "0000") End Sub
Ma feuille modèle s'appelle Sem0001 et la macro me crée automatiquement des copies conformes, Sem0002, Sem0003...
Mais :-)
En N1 de chaque feuille, j'ai une formule que je souhaiterais incrémenter à chaque feuille créée.
Exemple: Sur la feuille no 2, la formule est: =Sem0001!N1+7
Je souhaiterais que sur la feuille no 3 (nommée Sem0003), la formule soit transformée en: Sem0002 + 7 ...etc.
En fait que la macro reprenne systématiquement la valeur de N1 de la feuille précédente en y ajoutant 7.
Ou encore qu'elle prenne la valeur de la première feuille et y ajoute à chaque feuille créée 7*(Son numéro-1) Remarque: La feuille de départ n'est pas la première feuille du classeur.
Merci pour votre aide.
Cordialement, Pierre F.
Salut Pierre
Je te propose d'inclure à ton code ceci :
Range("N1").FormulaR1C1 = "=" & x & "!RC+7"
ce qui donne au final le code suivant :
Dim x As String
x = ActiveSheet.Name
ActiveSheet.Copy After:¬tiveSheet
ActiveSheet.Name = Left(x, 3) & Format(Right(x, 4) + 1, "0000")
Range("N1").FormulaR1C1 = "=" & x & "!RC+7"
Est ce bien ainsi ???
Bonjour à toutes et tous;
Pour un classeur, j'ai trouvé, dans les archives de ce groupe
(Merci!!!), une macro qui me permet de dupliquer une feuille "modèle" en
incrémentant les noms des onglets
Sub Dupliquerfeuille()
Dim x As String
x = ActiveSheet.Name
ActiveSheet.Copy After:¬tiveSheet
ActiveSheet.Name = Left(x, 3) & Format(Right(x, 4) + 1, "0000")
End Sub
Ma feuille modèle s'appelle Sem0001 et la macro me crée automatiquement
des copies conformes, Sem0002, Sem0003...
Mais :-)
En N1 de chaque feuille, j'ai une formule que je souhaiterais
incrémenter à chaque feuille créée.
Exemple:
Sur la feuille no 2, la formule est: =Sem0001!N1+7
Je souhaiterais que sur la feuille no 3 (nommée Sem0003), la formule
soit transformée en: Sem0002 + 7 ...etc.
En fait que la macro reprenne systématiquement la valeur de N1 de la
feuille précédente en y ajoutant 7.
Ou encore qu'elle prenne la valeur de la première feuille et y ajoute à
chaque feuille créée 7*(Son numéro-1)
Remarque: La feuille de départ n'est pas la première feuille du classeur.
Salut Pierre Je te propose d'inclure à ton code ceci :
Range("N1").FormulaR1C1 = "=" & x & "!RC+7"
ce qui donne au final le code suivant :
Dim x As String x = ActiveSheet.Name ActiveSheet.Copy After:¬tiveSheet ActiveSheet.Name = Left(x, 3) & Format(Right(x, 4) + 1, "0000") Range("N1").FormulaR1C1 = "=" & x & "!RC+7"
Est ce bien ainsi ???
Bonjour à toutes et tous;
Pour un classeur, j'ai trouvé, dans les archives de ce groupe (Merci!!!), une macro qui me permet de dupliquer une feuille "modèle" en incrémentant les noms des onglets
Sub Dupliquerfeuille() Dim x As String x = ActiveSheet.Name ActiveSheet.Copy After:¬tiveSheet ActiveSheet.Name = Left(x, 3) & Format(Right(x, 4) + 1, "0000") End Sub
Ma feuille modèle s'appelle Sem0001 et la macro me crée automatiquement des copies conformes, Sem0002, Sem0003...
Mais :-)
En N1 de chaque feuille, j'ai une formule que je souhaiterais incrémenter à chaque feuille créée.
Exemple: Sur la feuille no 2, la formule est: =Sem0001!N1+7
Je souhaiterais que sur la feuille no 3 (nommée Sem0003), la formule soit transformée en: Sem0002 + 7 ...etc.
En fait que la macro reprenne systématiquement la valeur de N1 de la feuille précédente en y ajoutant 7.
Ou encore qu'elle prenne la valeur de la première feuille et y ajoute à chaque feuille créée 7*(Son numéro-1) Remarque: La feuille de départ n'est pas la première feuille du classeur.
Merci pour votre aide.
Cordialement, Pierre F.
Pierre F.
Salut Pierre ce qui donne au final le code suivant :
Dim x As String x = ActiveSheet.Name ActiveSheet.Copy After:¬tiveSheet ActiveSheet.Name = Left(x, 3) & Format(Right(x, 4) + 1, "0000") Range("N1").FormulaR1C1 = "=" & x & "!RC+7"
Est ce bien ainsi ???
MERCI !
C'est exactement ça; de plus, ça fonctionne du premier coup :-) Super.
Cordialement, Pierre F.
Salut Pierre
ce qui donne au final le code suivant :
Dim x As String
x = ActiveSheet.Name
ActiveSheet.Copy After:=ActiveSheet
ActiveSheet.Name = Left(x, 3) & Format(Right(x, 4) + 1, "0000")
Range("N1").FormulaR1C1 = "=" & x & "!RC+7"
Est ce bien ainsi ???
MERCI !
C'est exactement ça; de plus, ça fonctionne du premier coup :-)
Super.
Salut Pierre Je te propose d'inclure à ton code ceci :
Range("N1").FormulaR1C1 = "=" & x & "!RC+7"
Autre question:
Dans les mêmes conditions, et sur la même feuille, la cellule A1 cont ient :
=Concatener("Secteur ";1)
et je souhaite que l'incrémentation se produise aussi sur A1 sous la forme Secteur 2, Secteur 3...
Comme je ne comprends pas tous les effets de ta formule, j'ai naïvement essayé:
Range("A1").FormulaR1C1 = "=" & x & "!RC+1"
mais je me doutais bien que ce ne serait pas si simple :-)
Sinon, je pourrais peut-être récupérer le dernier No du nom de l'on glet et le concaténer... mais je sais pas faire ça non plus :-(
Cordialement, Pierre F.
Jacky
Bonsoir,
Cellule A1 de départ au format "Secteur " Standard '---------- Sub Dupliquerfeuille() Dim x As String x = ActiveSheet.Name ActiveSheet.Copy After:¬tiveSheet ActiveSheet.Name = Left(x, 3) & Format(Right(x, 4) + 1, "0000") [N1].Formula = "=" & x & "!N1+7" [A1].Formula = "=" & x & "!A1+1" End Sub '-----------
-- Salutations JJ
"Pierre F." a écrit dans le message de news: 2afa3$462f6933$55da2b80$
Salut Pierre Je te propose d'inclure à ton code ceci :
Range("N1").FormulaR1C1 = "=" & x & "!RC+7"
Autre question:
Dans les mêmes conditions, et sur la même feuille, la cellule A1 contient :
=Concatener("Secteur ";1)
et je souhaite que l'incrémentation se produise aussi sur A1 sous la forme Secteur 2, Secteur 3...
Comme je ne comprends pas tous les effets de ta formule, j'ai naïvement essayé:
Range("A1").FormulaR1C1 = "=" & x & "!RC+1"
mais je me doutais bien que ce ne serait pas si simple :-)
Sinon, je pourrais peut-être récupérer le dernier No du nom de l'onglet et le concaténer... mais je sais pas faire ça non plus :-(
Cordialement, Pierre F.
Bonsoir,
Cellule A1 de départ au format
"Secteur " Standard
'----------
Sub Dupliquerfeuille()
Dim x As String
x = ActiveSheet.Name
ActiveSheet.Copy After:¬tiveSheet
ActiveSheet.Name = Left(x, 3) & Format(Right(x, 4) + 1, "0000")
[N1].Formula = "=" & x & "!N1+7"
[A1].Formula = "=" & x & "!A1+1"
End Sub
'-----------
--
Salutations
JJ
"Pierre F." <pfornerodNO@SPAMhotmail.com> a écrit dans le message de news:
2afa3$462f6933$55da2b80$7816@news.hispeed.ch...
Salut Pierre
Je te propose d'inclure à ton code ceci :
Range("N1").FormulaR1C1 = "=" & x & "!RC+7"
Autre question:
Dans les mêmes conditions, et sur la même feuille, la cellule A1 contient :
=Concatener("Secteur ";1)
et je souhaite que l'incrémentation se produise aussi sur A1 sous la
forme Secteur 2, Secteur 3...
Comme je ne comprends pas tous les effets de ta formule, j'ai naïvement
essayé:
Range("A1").FormulaR1C1 = "=" & x & "!RC+1"
mais je me doutais bien que ce ne serait pas si simple :-)
Sinon, je pourrais peut-être récupérer le dernier No du nom de l'onglet
et le concaténer... mais je sais pas faire ça non plus :-(
Cellule A1 de départ au format "Secteur " Standard '---------- Sub Dupliquerfeuille() Dim x As String x = ActiveSheet.Name ActiveSheet.Copy After:¬tiveSheet ActiveSheet.Name = Left(x, 3) & Format(Right(x, 4) + 1, "0000") [N1].Formula = "=" & x & "!N1+7" [A1].Formula = "=" & x & "!A1+1" End Sub '-----------
-- Salutations JJ
"Pierre F." a écrit dans le message de news: 2afa3$462f6933$55da2b80$
Salut Pierre Je te propose d'inclure à ton code ceci :
Range("N1").FormulaR1C1 = "=" & x & "!RC+7"
Autre question:
Dans les mêmes conditions, et sur la même feuille, la cellule A1 contient :
=Concatener("Secteur ";1)
et je souhaite que l'incrémentation se produise aussi sur A1 sous la forme Secteur 2, Secteur 3...
Comme je ne comprends pas tous les effets de ta formule, j'ai naïvement essayé:
Range("A1").FormulaR1C1 = "=" & x & "!RC+1"
mais je me doutais bien que ce ne serait pas si simple :-)
Sinon, je pourrais peut-être récupérer le dernier No du nom de l'onglet et le concaténer... mais je sais pas faire ça non plus :-(
Cordialement, Pierre F.
Pierre F.
Bonsoir,
Cellule A1 de départ au format "Secteur " Standard '---------- Sub Dupliquerfeuille() Dim x As String x = ActiveSheet.Name ActiveSheet.Copy After:¬tiveSheet ActiveSheet.Name = Left(x, 3) & Format(Right(x, 4) + 1, "0000") [N1].Formula = "=" & x & "!N1+7" [A1].Formula = "=" & x & "!A1+1" End Sub '-----------
Bonsoir Jacky,
Oups; ça ne fonctionne pas.
#valeur comme message dans la cellule A1 de la nouvelle feuille; et si je regarde la formule, je vois =Sem0001!A1+1, c'est à dire le n om de la feuille de départ + 1
Il ne tient pas compte du mot "Secteur " inscrit dans A1
Merci. Cordialement, Pierre F.
Bonsoir,
Cellule A1 de départ au format
"Secteur " Standard
'----------
Sub Dupliquerfeuille()
Dim x As String
x = ActiveSheet.Name
ActiveSheet.Copy After:=ActiveSheet
ActiveSheet.Name = Left(x, 3) & Format(Right(x, 4) + 1, "0000")
[N1].Formula = "=" & x & "!N1+7"
[A1].Formula = "=" & x & "!A1+1"
End Sub
'-----------
Bonsoir Jacky,
Oups; ça ne fonctionne pas.
#valeur comme message dans la cellule A1 de la nouvelle feuille;
et si je regarde la formule, je vois =Sem0001!A1+1, c'est à dire le n om
de la feuille de départ + 1
Il ne tient pas compte du mot "Secteur " inscrit dans A1
Cellule A1 de départ au format "Secteur " Standard '---------- Sub Dupliquerfeuille() Dim x As String x = ActiveSheet.Name ActiveSheet.Copy After:¬tiveSheet ActiveSheet.Name = Left(x, 3) & Format(Right(x, 4) + 1, "0000") [N1].Formula = "=" & x & "!N1+7" [A1].Formula = "=" & x & "!A1+1" End Sub '-----------
Bonsoir Jacky,
Oups; ça ne fonctionne pas.
#valeur comme message dans la cellule A1 de la nouvelle feuille; et si je regarde la formule, je vois =Sem0001!A1+1, c'est à dire le n om de la feuille de départ + 1
Il ne tient pas compte du mot "Secteur " inscrit dans A1
Merci. Cordialement, Pierre F.
Jacky
Re... Regarde ici http://cjoint.com/?ezs0rEWpgJ
-- Salutations JJ
"Pierre F." a écrit dans le message de news: 382a1$462f8587$55da2b80$
Bonsoir,
Cellule A1 de départ au format "Secteur " Standard '---------- Sub Dupliquerfeuille() Dim x As String x = ActiveSheet.Name ActiveSheet.Copy After:¬tiveSheet ActiveSheet.Name = Left(x, 3) & Format(Right(x, 4) + 1, "0000") [N1].Formula = "=" & x & "!N1+7" [A1].Formula = "=" & x & "!A1+1" End Sub '-----------
Bonsoir Jacky,
Oups; ça ne fonctionne pas.
#valeur comme message dans la cellule A1 de la nouvelle feuille; et si je regarde la formule, je vois =Sem0001!A1+1, c'est à dire le nom de la feuille de départ + 1
Il ne tient pas compte du mot "Secteur " inscrit dans A1
Merci. Cordialement, Pierre F.
Re...
Regarde ici
http://cjoint.com/?ezs0rEWpgJ
--
Salutations
JJ
"Pierre F." <pfornerodNO@SPAMhotmail.com> a écrit dans le message de news:
382a1$462f8587$55da2b80$20495@news.hispeed.ch...
Bonsoir,
Cellule A1 de départ au format
"Secteur " Standard
'----------
Sub Dupliquerfeuille()
Dim x As String
x = ActiveSheet.Name
ActiveSheet.Copy After:¬tiveSheet
ActiveSheet.Name = Left(x, 3) & Format(Right(x, 4) + 1, "0000")
[N1].Formula = "=" & x & "!N1+7"
[A1].Formula = "=" & x & "!A1+1"
End Sub
'-----------
Bonsoir Jacky,
Oups; ça ne fonctionne pas.
#valeur comme message dans la cellule A1 de la nouvelle feuille;
et si je regarde la formule, je vois =Sem0001!A1+1, c'est à dire le nom
de la feuille de départ + 1
Il ne tient pas compte du mot "Secteur " inscrit dans A1
"Pierre F." a écrit dans le message de news: 382a1$462f8587$55da2b80$
Bonsoir,
Cellule A1 de départ au format "Secteur " Standard '---------- Sub Dupliquerfeuille() Dim x As String x = ActiveSheet.Name ActiveSheet.Copy After:¬tiveSheet ActiveSheet.Name = Left(x, 3) & Format(Right(x, 4) + 1, "0000") [N1].Formula = "=" & x & "!N1+7" [A1].Formula = "=" & x & "!A1+1" End Sub '-----------
Bonsoir Jacky,
Oups; ça ne fonctionne pas.
#valeur comme message dans la cellule A1 de la nouvelle feuille; et si je regarde la formule, je vois =Sem0001!A1+1, c'est à dire le nom de la feuille de départ + 1
Il ne tient pas compte du mot "Secteur " inscrit dans A1
Merci. Cordialement, Pierre F.
Jacky
Re... Dans la feuille de départ, il faut inscrire 1 (un) Et mettre au format "Secteur" Standard Pour éviter le plantage au cas ou la feuille existe déjà modifier comme ceci '------------ Sub Dupliquerfeuille() Dim x As String x = ActiveSheet.Name ActiveSheet.Copy After:¬tiveSheet On Error GoTo err ActiveSheet.Name = Left(x, 3) & Format(Right(x, 4) + 1, "0000") [N1].Formula = "=" & x & "!N1+7" [A1].Formula = "=" & x & "!A1+1" Exit Sub err: MsgBox "La feuille " & Left(x, 3) & Format(Right(x, 4) + 1, "0000") & " existe déjà." End Sub '---------------
-- Salutations JJ
"Pierre F." a écrit dans le message de news: 382a1$462f8587$55da2b80$
Bonsoir,
Cellule A1 de départ au format "Secteur " Standard '---------- Sub Dupliquerfeuille() Dim x As String x = ActiveSheet.Name ActiveSheet.Copy After:¬tiveSheet ActiveSheet.Name = Left(x, 3) & Format(Right(x, 4) + 1, "0000") [N1].Formula = "=" & x & "!N1+7" [A1].Formula = "=" & x & "!A1+1" End Sub '-----------
Bonsoir Jacky,
Oups; ça ne fonctionne pas.
#valeur comme message dans la cellule A1 de la nouvelle feuille; et si je regarde la formule, je vois =Sem0001!A1+1, c'est à dire le nom de la feuille de départ + 1
Il ne tient pas compte du mot "Secteur " inscrit dans A1
Merci. Cordialement, Pierre F.
Re...
Dans la feuille de départ, il faut inscrire 1 (un)
Et mettre au format "Secteur" Standard
Pour éviter le plantage au cas ou la feuille existe déjà modifier comme ceci
'------------
Sub Dupliquerfeuille()
Dim x As String
x = ActiveSheet.Name
ActiveSheet.Copy After:¬tiveSheet
On Error GoTo err
ActiveSheet.Name = Left(x, 3) & Format(Right(x, 4) + 1, "0000")
[N1].Formula = "=" & x & "!N1+7"
[A1].Formula = "=" & x & "!A1+1"
Exit Sub
err:
MsgBox "La feuille " & Left(x, 3) & Format(Right(x, 4) + 1, "0000") & "
existe déjà."
End Sub
'---------------
--
Salutations
JJ
"Pierre F." <pfornerodNO@SPAMhotmail.com> a écrit dans le message de news:
382a1$462f8587$55da2b80$20495@news.hispeed.ch...
Bonsoir,
Cellule A1 de départ au format
"Secteur " Standard
'----------
Sub Dupliquerfeuille()
Dim x As String
x = ActiveSheet.Name
ActiveSheet.Copy After:¬tiveSheet
ActiveSheet.Name = Left(x, 3) & Format(Right(x, 4) + 1, "0000")
[N1].Formula = "=" & x & "!N1+7"
[A1].Formula = "=" & x & "!A1+1"
End Sub
'-----------
Bonsoir Jacky,
Oups; ça ne fonctionne pas.
#valeur comme message dans la cellule A1 de la nouvelle feuille;
et si je regarde la formule, je vois =Sem0001!A1+1, c'est à dire le nom
de la feuille de départ + 1
Il ne tient pas compte du mot "Secteur " inscrit dans A1
Re... Dans la feuille de départ, il faut inscrire 1 (un) Et mettre au format "Secteur" Standard Pour éviter le plantage au cas ou la feuille existe déjà modifier comme ceci '------------ Sub Dupliquerfeuille() Dim x As String x = ActiveSheet.Name ActiveSheet.Copy After:¬tiveSheet On Error GoTo err ActiveSheet.Name = Left(x, 3) & Format(Right(x, 4) + 1, "0000") [N1].Formula = "=" & x & "!N1+7" [A1].Formula = "=" & x & "!A1+1" Exit Sub err: MsgBox "La feuille " & Left(x, 3) & Format(Right(x, 4) + 1, "0000") & " existe déjà." End Sub '---------------
-- Salutations JJ
"Pierre F." a écrit dans le message de news: 382a1$462f8587$55da2b80$
Bonsoir,
Cellule A1 de départ au format "Secteur " Standard '---------- Sub Dupliquerfeuille() Dim x As String x = ActiveSheet.Name ActiveSheet.Copy After:¬tiveSheet ActiveSheet.Name = Left(x, 3) & Format(Right(x, 4) + 1, "0000") [N1].Formula = "=" & x & "!N1+7" [A1].Formula = "=" & x & "!A1+1" End Sub '-----------
Bonsoir Jacky,
Oups; ça ne fonctionne pas.
#valeur comme message dans la cellule A1 de la nouvelle feuille; et si je regarde la formule, je vois =Sem0001!A1+1, c'est à dire le nom de la feuille de départ + 1
Il ne tient pas compte du mot "Secteur " inscrit dans A1
Merci. Cordialement, Pierre F.
Pierre F.
Re... Dans la feuille de départ, il faut inscrire 1 (un) Et mettre au format "Secteur" Standard Pour éviter le plantage au cas ou la feuille existe déjà modifier comme ceci '------------ Sub Dupliquerfeuille() Dim x As String x = ActiveSheet.Name ActiveSheet.Copy After:¬tiveSheet On Error GoTo err ActiveSheet.Name = Left(x, 3) & Format(Right(x, 4) + 1, "0000") [N1].Formula = "=" & x & "!N1+7" [A1].Formula = "=" & x & "!A1+1" Exit Sub err: MsgBox "La feuille " & Left(x, 3) & Format(Right(x, 4) + 1, "0000") & " existe déjà." End Sub
Génial!
Je n'avais pas du tout compris le mot "Format"; j'avais mis le premier item de la liste "Format de la cellule" intitulé justement "Standard" : -) De plus, devant le fichier joint... je ne voyais rien dans la cellule A1... et dès que la feuille était dupliquée, le mot secteur apparai ssait magiquement :-)
Merci!
Encore une question... (c'est fou comme les solutions données sur ce forum poussent à aller encore plus loin :-).
...permet d'ajouter 7 à la valeur de N1 de la page précédente.
Est-il possible d'aller chercher la valeur de cette cellule sur une autre feuille (toujours la même) en lisant la valeur, à chaque page créée, une ligne plus bas.
Exemple: Le N1 de la feuille "Sem0001" correspond à la valeur inscrite dans Feui l1!T1 Le N1 de la feuille créée Sem0002 correspondra alors à la valeur inscrite dans Feuil1!T2 Le N1 de la feuille créée Sem0003 correspondra alors à la valeur inscrite dans Feuil1!T3 ...
Merci.
Cordialement, Pierre F.
PS cette solution éliminerait évidemment le calcul N1+7; on pourra li re la valeur "en clair" directement sur la Feuil1.
Re...
Dans la feuille de départ, il faut inscrire 1 (un)
Et mettre au format "Secteur" Standard
Pour éviter le plantage au cas ou la feuille existe déjà modifier comme ceci
'------------
Sub Dupliquerfeuille()
Dim x As String
x = ActiveSheet.Name
ActiveSheet.Copy After:=ActiveSheet
On Error GoTo err
ActiveSheet.Name = Left(x, 3) & Format(Right(x, 4) + 1, "0000")
[N1].Formula = "=" & x & "!N1+7"
[A1].Formula = "=" & x & "!A1+1"
Exit Sub
err:
MsgBox "La feuille " & Left(x, 3) & Format(Right(x, 4) + 1, "0000") & "
existe déjà."
End Sub
Génial!
Je n'avais pas du tout compris le mot "Format"; j'avais mis le premier
item de la liste "Format de la cellule" intitulé justement "Standard" : -)
De plus, devant le fichier joint... je ne voyais rien dans la cellule
A1... et dès que la feuille était dupliquée, le mot secteur apparai ssait
magiquement :-)
Merci!
Encore une question... (c'est fou comme les solutions données sur ce
forum poussent à aller encore plus loin :-).
...permet d'ajouter 7 à la valeur de N1 de la page précédente.
Est-il possible d'aller chercher la valeur de cette cellule sur une
autre feuille (toujours la même) en lisant la valeur, à chaque page
créée, une ligne plus bas.
Exemple:
Le N1 de la feuille "Sem0001" correspond à la valeur inscrite dans Feui l1!T1
Le N1 de la feuille créée Sem0002 correspondra alors à la valeur
inscrite dans Feuil1!T2
Le N1 de la feuille créée Sem0003 correspondra alors à la valeur
inscrite dans Feuil1!T3
...
Merci.
Cordialement,
Pierre F.
PS cette solution éliminerait évidemment le calcul N1+7; on pourra li re
la valeur "en clair" directement sur la Feuil1.
Re... Dans la feuille de départ, il faut inscrire 1 (un) Et mettre au format "Secteur" Standard Pour éviter le plantage au cas ou la feuille existe déjà modifier comme ceci '------------ Sub Dupliquerfeuille() Dim x As String x = ActiveSheet.Name ActiveSheet.Copy After:¬tiveSheet On Error GoTo err ActiveSheet.Name = Left(x, 3) & Format(Right(x, 4) + 1, "0000") [N1].Formula = "=" & x & "!N1+7" [A1].Formula = "=" & x & "!A1+1" Exit Sub err: MsgBox "La feuille " & Left(x, 3) & Format(Right(x, 4) + 1, "0000") & " existe déjà." End Sub
Génial!
Je n'avais pas du tout compris le mot "Format"; j'avais mis le premier item de la liste "Format de la cellule" intitulé justement "Standard" : -) De plus, devant le fichier joint... je ne voyais rien dans la cellule A1... et dès que la feuille était dupliquée, le mot secteur apparai ssait magiquement :-)
Merci!
Encore une question... (c'est fou comme les solutions données sur ce forum poussent à aller encore plus loin :-).
...permet d'ajouter 7 à la valeur de N1 de la page précédente.
Est-il possible d'aller chercher la valeur de cette cellule sur une autre feuille (toujours la même) en lisant la valeur, à chaque page créée, une ligne plus bas.
Exemple: Le N1 de la feuille "Sem0001" correspond à la valeur inscrite dans Feui l1!T1 Le N1 de la feuille créée Sem0002 correspondra alors à la valeur inscrite dans Feuil1!T2 Le N1 de la feuille créée Sem0003 correspondra alors à la valeur inscrite dans Feuil1!T3 ...
Merci.
Cordialement, Pierre F.
PS cette solution éliminerait évidemment le calcul N1+7; on pourra li re la valeur "en clair" directement sur la Feuil1.
Jacky
Re....
Ligne à remplacer: [N1].Formula = "=" & x & "!N1+7" Par [N1] = Feuil1.Range("t" & Right(x, 4) + 1)
Feuil1 étant le code name vba de la Feuil1
Salutations JJ
"Pierre F." a écrit dans le message de news: 44396$462f96bd$55da2b80$
Re... Dans la feuille de départ, il faut inscrire 1 (un) Et mettre au format "Secteur" Standard Pour éviter le plantage au cas ou la feuille existe déjà modifier comme ceci '------------ Sub Dupliquerfeuille() Dim x As String x = ActiveSheet.Name ActiveSheet.Copy After:¬tiveSheet On Error GoTo err ActiveSheet.Name = Left(x, 3) & Format(Right(x, 4) + 1, "0000") [N1].Formula = "=" & x & "!N1+7" [A1].Formula = "=" & x & "!A1+1" Exit Sub err: MsgBox "La feuille " & Left(x, 3) & Format(Right(x, 4) + 1, "0000") & " existe déjà." End Sub
Génial!
Je n'avais pas du tout compris le mot "Format"; j'avais mis le premier item de la liste "Format de la cellule" intitulé justement "Standard" :-) De plus, devant le fichier joint... je ne voyais rien dans la cellule A1... et dès que la feuille était dupliquée, le mot secteur apparaissait magiquement :-)
Merci!
Encore une question... (c'est fou comme les solutions données sur ce forum poussent à aller encore plus loin :-).
...permet d'ajouter 7 à la valeur de N1 de la page précédente.
Est-il possible d'aller chercher la valeur de cette cellule sur une autre feuille (toujours la même) en lisant la valeur, à chaque page créée, une ligne plus bas.
Exemple: Le N1 de la feuille "Sem0001" correspond à la valeur inscrite dans Feuil1!T1 Le N1 de la feuille créée Sem0002 correspondra alors à la valeur inscrite dans Feuil1!T2 Le N1 de la feuille créée Sem0003 correspondra alors à la valeur inscrite dans Feuil1!T3 ...
Merci.
Cordialement, Pierre F.
PS cette solution éliminerait évidemment le calcul N1+7; on pourra lire la valeur "en clair" directement sur la Feuil1.
Re....
Ligne à remplacer:
[N1].Formula = "=" & x & "!N1+7"
Par
[N1] = Feuil1.Range("t" & Right(x, 4) + 1)
Feuil1 étant le code name vba de la Feuil1
Salutations
JJ
"Pierre F." <pfornerodNO@SPAMhotmail.com> a écrit dans le message de news:
44396$462f96bd$55da2b80$23939@news.hispeed.ch...
Re...
Dans la feuille de départ, il faut inscrire 1 (un)
Et mettre au format "Secteur" Standard
Pour éviter le plantage au cas ou la feuille existe déjà modifier comme
ceci
'------------
Sub Dupliquerfeuille()
Dim x As String
x = ActiveSheet.Name
ActiveSheet.Copy After:¬tiveSheet
On Error GoTo err
ActiveSheet.Name = Left(x, 3) & Format(Right(x, 4) + 1, "0000")
[N1].Formula = "=" & x & "!N1+7"
[A1].Formula = "=" & x & "!A1+1"
Exit Sub
err:
MsgBox "La feuille " & Left(x, 3) & Format(Right(x, 4) + 1, "0000") & "
existe déjà."
End Sub
Génial!
Je n'avais pas du tout compris le mot "Format"; j'avais mis le premier
item de la liste "Format de la cellule" intitulé justement "Standard" :-)
De plus, devant le fichier joint... je ne voyais rien dans la cellule
A1... et dès que la feuille était dupliquée, le mot secteur apparaissait
magiquement :-)
Merci!
Encore une question... (c'est fou comme les solutions données sur ce
forum poussent à aller encore plus loin :-).
...permet d'ajouter 7 à la valeur de N1 de la page précédente.
Est-il possible d'aller chercher la valeur de cette cellule sur une
autre feuille (toujours la même) en lisant la valeur, à chaque page
créée, une ligne plus bas.
Exemple:
Le N1 de la feuille "Sem0001" correspond à la valeur inscrite dans Feuil1!T1
Le N1 de la feuille créée Sem0002 correspondra alors à la valeur
inscrite dans Feuil1!T2
Le N1 de la feuille créée Sem0003 correspondra alors à la valeur
inscrite dans Feuil1!T3
...
Merci.
Cordialement,
Pierre F.
PS cette solution éliminerait évidemment le calcul N1+7; on pourra lire
la valeur "en clair" directement sur la Feuil1.
Ligne à remplacer: [N1].Formula = "=" & x & "!N1+7" Par [N1] = Feuil1.Range("t" & Right(x, 4) + 1)
Feuil1 étant le code name vba de la Feuil1
Salutations JJ
"Pierre F." a écrit dans le message de news: 44396$462f96bd$55da2b80$
Re... Dans la feuille de départ, il faut inscrire 1 (un) Et mettre au format "Secteur" Standard Pour éviter le plantage au cas ou la feuille existe déjà modifier comme ceci '------------ Sub Dupliquerfeuille() Dim x As String x = ActiveSheet.Name ActiveSheet.Copy After:¬tiveSheet On Error GoTo err ActiveSheet.Name = Left(x, 3) & Format(Right(x, 4) + 1, "0000") [N1].Formula = "=" & x & "!N1+7" [A1].Formula = "=" & x & "!A1+1" Exit Sub err: MsgBox "La feuille " & Left(x, 3) & Format(Right(x, 4) + 1, "0000") & " existe déjà." End Sub
Génial!
Je n'avais pas du tout compris le mot "Format"; j'avais mis le premier item de la liste "Format de la cellule" intitulé justement "Standard" :-) De plus, devant le fichier joint... je ne voyais rien dans la cellule A1... et dès que la feuille était dupliquée, le mot secteur apparaissait magiquement :-)
Merci!
Encore une question... (c'est fou comme les solutions données sur ce forum poussent à aller encore plus loin :-).
...permet d'ajouter 7 à la valeur de N1 de la page précédente.
Est-il possible d'aller chercher la valeur de cette cellule sur une autre feuille (toujours la même) en lisant la valeur, à chaque page créée, une ligne plus bas.
Exemple: Le N1 de la feuille "Sem0001" correspond à la valeur inscrite dans Feuil1!T1 Le N1 de la feuille créée Sem0002 correspondra alors à la valeur inscrite dans Feuil1!T2 Le N1 de la feuille créée Sem0003 correspondra alors à la valeur inscrite dans Feuil1!T3 ...
Merci.
Cordialement, Pierre F.
PS cette solution éliminerait évidemment le calcul N1+7; on pourra lire la valeur "en clair" directement sur la Feuil1.
Pierre F.
Re....
Ligne à remplacer: [N1].Formula = "=" & x & "!N1+7" Par [N1] = Feuil1.Range("t" & Right(x, 4) + 1)
Feuil1 étant le code name vba de la Feuil1
Merci! Super.
Cordialement, Pierre F.
Re....
Ligne à remplacer:
[N1].Formula = "=" & x & "!N1+7"
Par
[N1] = Feuil1.Range("t" & Right(x, 4) + 1)