Copie de formules
Fermé
caly.mpl
Messages postés
3
Date d'inscription
samedi 18 avril 2015
Statut
Membre
Dernière intervention
18 avril 2015
-
18 avril 2015 à 10:23
Mike-31 Messages postés 18310 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 29 mars 2024 - 19 avril 2015 à 10:58
Mike-31 Messages postés 18310 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 29 mars 2024 - 19 avril 2015 à 10:58
A voir également:
- Copie de formules
- Formules excel de base - Guide
- Copie cachée - Guide
- Super copie - Télécharger - Gestion de fichiers
- Copie écran samsung - Guide
- Formules - Télécharger - Études & Formations
7 réponses
ozone_
Messages postés
1518
Date d'inscription
lundi 13 juillet 2009
Statut
Membre
Dernière intervention
2 juin 2023
478
Modifié par ozone_ le 18/04/2015 à 10:27
Modifié par ozone_ le 18/04/2015 à 10:27
Salut,
Peut on avoir un exemple (avec des données fictives) de ton classeur ?
Joint le sur : https://www.cjoint.com/
Merci.
1f u c4n r34d th1s u r34lly n33d t0 g37 l41d !
Peut on avoir un exemple (avec des données fictives) de ton classeur ?
Joint le sur : https://www.cjoint.com/
Merci.
1f u c4n r34d th1s u r34lly n33d t0 g37 l41d !
Mike-31
Messages postés
18310
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
29 mars 2024
5 072
18 avril 2015 à 13:28
18 avril 2015 à 13:28
Bonjour,
l'idée pour la cellule A2 feuille 1 serait
=INDIRECT(STXT(CELLULE("filename";A1);TROUVE("]";CELLULE("filename";A1))+1;32)&"!A2")
si cette formule doit être incrémentée depuis la deuxième ligne, la formule serait
=INDIRECT(STXT(CELLULE("filename";A1);TROUVE("]";CELLULE("filename";A1))+1;32)&"!A"&LIGNE())
et copiée sur la feuille 2 le numéro de l'onglet s'actualisera
pour avoir une formule adaptée, commence par répondre à Ozone et poste un exemple de fichier
l'idée pour la cellule A2 feuille 1 serait
=INDIRECT(STXT(CELLULE("filename";A1);TROUVE("]";CELLULE("filename";A1))+1;32)&"!A2")
si cette formule doit être incrémentée depuis la deuxième ligne, la formule serait
=INDIRECT(STXT(CELLULE("filename";A1);TROUVE("]";CELLULE("filename";A1))+1;32)&"!A"&LIGNE())
et copiée sur la feuille 2 le numéro de l'onglet s'actualisera
pour avoir une formule adaptée, commence par répondre à Ozone et poste un exemple de fichier
caly.mpl
Messages postés
3
Date d'inscription
samedi 18 avril 2015
Statut
Membre
Dernière intervention
18 avril 2015
18 avril 2015 à 13:59
18 avril 2015 à 13:59
ouahou !
Je vais etudier cette réponse mais il va me falloir du temps car je me suis toujours débrouillée seule pour en arriver à ce que je sais faire avec excel et là c'est un cran plus haut
Voici le lien que j'ai envoyé à ozone
https://www.cjoint.com/?0DsogrlY4YE
Je vais etudier cette réponse mais il va me falloir du temps car je me suis toujours débrouillée seule pour en arriver à ce que je sais faire avec excel et là c'est un cran plus haut
Voici le lien que j'ai envoyé à ozone
https://www.cjoint.com/?0DsogrlY4YE
Mike-31
Messages postés
18310
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
29 mars 2024
5 072
18 avril 2015 à 17:03
18 avril 2015 à 17:03
Re,
A mon tour OUAHOU! ma formule ne peut s'appliquer parce que changement de nom d'onglet PRESENCE avec mois et pas de progression linéaire exemple en E4 on a ='PRESENCE 01'!$C$3 et en E5 on passe en H ='PRESENCE 01'!$H$3.
Enfin cela n'est pas insurmontable mais bonsoir le formule. Enfin de mon coté je regarde ce qui peut être fait
A mon tour OUAHOU! ma formule ne peut s'appliquer parce que changement de nom d'onglet PRESENCE avec mois et pas de progression linéaire exemple en E4 on a ='PRESENCE 01'!$C$3 et en E5 on passe en H ='PRESENCE 01'!$H$3.
Enfin cela n'est pas insurmontable mais bonsoir le formule. Enfin de mon coté je regarde ce qui peut être fait
michel_m
Messages postés
16603
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2023
3 303
Modifié par michel_m le 18/04/2015 à 17:18
Modifié par michel_m le 18/04/2015 à 17:18
Bonjour
excusez l'incrute (bonjour Mike, ca va ?)
Il existe une fonction personnalisée crée par jacques boisgontier pour donner le nom de l'onglet précédent
et la formule devient
=INDIRECT(ongletprecedent()&"!A2")
Le site de jacques
http://boisgontierjacques.free.fr/
site incontournable à mettre dans ses favoris
Michel
excusez l'incrute (bonjour Mike, ca va ?)
Il existe une fonction personnalisée crée par jacques boisgontier pour donner le nom de l'onglet précédent
Dans un module
Function OngletPrecedent()
OngletPrecedent = Sheets(Application.Caller.Parent.Name).Previous.Name
End Function
et la formule devient
=INDIRECT(ongletprecedent()&"!A2")
Le site de jacques
http://boisgontierjacques.free.fr/
site incontournable à mettre dans ses favoris
Michel
ozone_
Messages postés
1518
Date d'inscription
lundi 13 juillet 2009
Statut
Membre
Dernière intervention
2 juin 2023
478
18 avril 2015 à 17:18
18 avril 2015 à 17:18
Ou aussi :
Function OngletPrecedent()
OngletPrecedent = Sheets(Sheets.Count - 1).Name
End Function
michel_m
Messages postés
16603
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2023
3 303
>
ozone_
Messages postés
1518
Date d'inscription
lundi 13 juillet 2009
Statut
Membre
Dernière intervention
2 juin 2023
Modifié par michel_m le 18/04/2015 à 17:20
Modifié par michel_m le 18/04/2015 à 17:20
ca te donne l'avant dernier onglet ?....
ozone_
Messages postés
1518
Date d'inscription
lundi 13 juillet 2009
Statut
Membre
Dernière intervention
2 juin 2023
478
18 avril 2015 à 17:20
18 avril 2015 à 17:20
Ah ouais, là c'est l'onglet précédent de la feuille sélectionné !
C'est stylé, à garder sous le coude =o
C'est stylé, à garder sous le coude =o
michel_m
Messages postés
16603
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2023
3 303
>
ozone_
Messages postés
1518
Date d'inscription
lundi 13 juillet 2009
Statut
Membre
Dernière intervention
2 juin 2023
18 avril 2015 à 17:24
18 avril 2015 à 17:24
Que veux tu dire par
Ah ouais, là c'est l'onglet précédent de la feuille sélectionné !
C'est stylé, à garder sous le coude =o ?
Ah ouais, là c'est l'onglet précédent de la feuille sélectionné !
C'est stylé, à garder sous le coude =o ?
ozone_
Messages postés
1518
Date d'inscription
lundi 13 juillet 2009
Statut
Membre
Dernière intervention
2 juin 2023
478
18 avril 2015 à 17:26
18 avril 2015 à 17:26
Moi ma formule donne l'avant dernier onglet du classeur,
ici, ça donne l'avant dernier onglet par rapport à la feuille où l'on est.
Si j'ai bien saisie le truc
ici, ça donne l'avant dernier onglet par rapport à la feuille où l'on est.
Si j'ai bien saisie le truc
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Mike-31
Messages postés
18310
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
29 mars 2024
5 072
18 avril 2015 à 17:26
18 avril 2015 à 17:26
Re,
Salut Michel, oui ça va merci j'espère pour toi également.
je viens juste de trouver ce merveilleux code qui fonctionne parfaitement et essaye de l'adapter au fichier de Ozone
Salut Michel, oui ça va merci j'espère pour toi également.
je viens juste de trouver ce merveilleux code qui fonctionne parfaitement et essaye de l'adapter au fichier de Ozone
Mike-31
Messages postés
18310
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
29 mars 2024
5 072
18 avril 2015 à 21:59
18 avril 2015 à 21:59
Re,
vu la complexité de ton fichier ou on passe de C3 à H3 puis à M3 etc
il est difficile de créer une incrémentation alors je te propose de créer dans le module du Visual Basic (Alt et touche de fonction F11)
Insertion/Module
coller ce code
Function OngletPrec(cell As Range) As Variant
Application.Volatile
Var = Sheets(ActiveSheet.Index - 1).Range(cell.Address)
OngletPrec = Sheets(ActiveSheet.Index - 1).Range(cell.Address)
End Function
revenir sur ta feuille Janvier et clic en E4 et onglet Formules/module Bibliothèque de Fonctions/Inserer une fonction
Pointer sur OngletPrec et saisir dans cell C3
ensuite dans chaque cellule copier cette formule que tu as en E4 =OngletPrec(C3) reste plus qu'a modifier l'adresse dans chaque formule collée, exemple en E5 modifier =OngletPrec(C3) comme ceci =OngletPrec(H3)
une fois l'onglet JANVIER terminé efface l'onglet FEVRIER et faire un copier de la feuille JANVIER et Coller sur l'onglet FEVRIER, puis sur mars etc ... intercaler les feuilles PRESENCE
revenir dans le visual Basic, double clic sur Thiswokbook et coller ce code
Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
Calculate
End Sub
vu la complexité de ton fichier ou on passe de C3 à H3 puis à M3 etc
il est difficile de créer une incrémentation alors je te propose de créer dans le module du Visual Basic (Alt et touche de fonction F11)
Insertion/Module
coller ce code
Function OngletPrec(cell As Range) As Variant
Application.Volatile
Var = Sheets(ActiveSheet.Index - 1).Range(cell.Address)
OngletPrec = Sheets(ActiveSheet.Index - 1).Range(cell.Address)
End Function
revenir sur ta feuille Janvier et clic en E4 et onglet Formules/module Bibliothèque de Fonctions/Inserer une fonction
Pointer sur OngletPrec et saisir dans cell C3
ensuite dans chaque cellule copier cette formule que tu as en E4 =OngletPrec(C3) reste plus qu'a modifier l'adresse dans chaque formule collée, exemple en E5 modifier =OngletPrec(C3) comme ceci =OngletPrec(H3)
une fois l'onglet JANVIER terminé efface l'onglet FEVRIER et faire un copier de la feuille JANVIER et Coller sur l'onglet FEVRIER, puis sur mars etc ... intercaler les feuilles PRESENCE
revenir dans le visual Basic, double clic sur Thiswokbook et coller ce code
Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
Calculate
End Sub
Salut
Petite rectification le fichier est à moi caly.mpl et pas à ozone. Il risque de ne pas comprendre si tu lui réponds.
Bon à ce ue je vois vous etes 10 0000000000000000000 fois plus calé que moi sur excel.
Je vais essayer de me dépatouiller avec tout ça à faire mais je crois que cela va me prendre plus de temps que de changer le 01 de ma formule en 02, pu 03 puis ................................
C'est pas grave j'aurai au moins appris quelque chose de plus sur excel
Quand vous metttez : colle ce code, il faut coller tout le praragraphe que vous avez notez en dessous?
Merci
Petite rectification le fichier est à moi caly.mpl et pas à ozone. Il risque de ne pas comprendre si tu lui réponds.
Bon à ce ue je vois vous etes 10 0000000000000000000 fois plus calé que moi sur excel.
Je vais essayer de me dépatouiller avec tout ça à faire mais je crois que cela va me prendre plus de temps que de changer le 01 de ma formule en 02, pu 03 puis ................................
C'est pas grave j'aurai au moins appris quelque chose de plus sur excel
Quand vous metttez : colle ce code, il faut coller tout le praragraphe que vous avez notez en dessous?
Merci
michel_m
Messages postés
16603
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2023
3 303
Modifié par michel_m le 19/04/2015 à 08:11
Modifié par michel_m le 19/04/2015 à 08:11
Pourquoi ne pas employer la fonction de JB ???
caly.mpl
>
michel_m
Messages postés
16603
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2023
19 avril 2015 à 08:33
19 avril 2015 à 08:33
Bonjour
Vous n'avez peut etre pas vu mon fichier
Complexe d'après Mike
J'ai essayé votre formule cela ne fonctionne pas
Et celle de Mike non plus *Je pense que cela vient du fait que je n'ai pas la fonction "ongletprec"
Mike me fait faire une copie d' un code dans le Visual Basic mais je pense qu'il a oublié de me dire ce qu'il fallait en faire une fois le code copié (peut etre cela sert-il a créer la fonction ?????)
Je suis plus que novice par rapport à vous alors c'est un peu du chinois même si j'essaie de comprendre.
Je suis allée sur le site de boisgontier et il est fait pour des calés en excel.
Je ne connais pas tout ce langage "english".......
Merci en tout cas de vos réponse
Vous n'avez peut etre pas vu mon fichier
Complexe d'après Mike
J'ai essayé votre formule cela ne fonctionne pas
Et celle de Mike non plus *Je pense que cela vient du fait que je n'ai pas la fonction "ongletprec"
Mike me fait faire une copie d' un code dans le Visual Basic mais je pense qu'il a oublié de me dire ce qu'il fallait en faire une fois le code copié (peut etre cela sert-il a créer la fonction ?????)
Je suis plus que novice par rapport à vous alors c'est un peu du chinois même si j'essaie de comprendre.
Je suis allée sur le site de boisgontier et il est fait pour des calés en excel.
Je ne connais pas tout ce langage "english".......
Merci en tout cas de vos réponse
Mike-31
Messages postés
18310
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
29 mars 2024
5 072
Modifié par Mike-31 le 19/04/2015 à 09:46
Modifié par Mike-31 le 19/04/2015 à 09:46
Re,
C'est bien à toi Caly que je m'adresse et travaille sur ton fichier.
modifier tes formules est rapide et Excel possède des outils puissants pour travailler simplement et rapidement, j'ai mis à jour l'onglet JANVIER et copié sur l'onglet FEVRIER et créé l'onglet MARS à toi de continuer.
Pour cela ouvre le Visual Basic (Alt et F11) double clic sur Thiswokbook et tu verras ces codes
Private Sub Workbook_SheetActivate(ByVal Sh As Object)
Calculate
End Sub
Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
Calculate
End Sub
saisir une apostrophe devant chaque Calculate comme cela 'Calculate ce qui aura pour but de neutraliser la fonction et te faciliter l'intervention
revenir sur Excel et créer tous les onglets PRESENCE et MOIS sans ne mettre aucune données dans les feuilles, les laisser vierge, ensuite pour prendre en compte les formules et mise en page, activer l'onglet PRESENCE 01 et cliquer sur le module juste au dessus de l'en tête de ligne 1 et à gauche de l'en tête de colonne A, tu remarqueras une petite flèche en bas vers la droite, la page se sélectionnera dans son ensemble, clic droit Copier aller sur une feuille PRESENCE vierge clic droit sur A1 et Coller, aller sur un autre onglet PRESENCE vierge clic droit sur A1 et Coller ainsi de suite pour créer toutes les feuilles PRESENCE
recommencer pour les feuilles MOIS
revenir dans la Thiswokbook et supprimer les deux apostrophes
cela doit te prendre une dizaine de minutes max, si les cellules sont hachurées, il suffit de déplacer la cellule active pour que ton fichier s'actualise dès lors que tu auras supprimé l'apostrophe devant les Calculate
https://www.cjoint.com/c/EDtj1ST3SpT
A+
Mike-31
Une période d'échec est un moment rêvé pour semer les graines du savoir.
C'est bien à toi Caly que je m'adresse et travaille sur ton fichier.
modifier tes formules est rapide et Excel possède des outils puissants pour travailler simplement et rapidement, j'ai mis à jour l'onglet JANVIER et copié sur l'onglet FEVRIER et créé l'onglet MARS à toi de continuer.
Pour cela ouvre le Visual Basic (Alt et F11) double clic sur Thiswokbook et tu verras ces codes
Private Sub Workbook_SheetActivate(ByVal Sh As Object)
Calculate
End Sub
Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
Calculate
End Sub
saisir une apostrophe devant chaque Calculate comme cela 'Calculate ce qui aura pour but de neutraliser la fonction et te faciliter l'intervention
revenir sur Excel et créer tous les onglets PRESENCE et MOIS sans ne mettre aucune données dans les feuilles, les laisser vierge, ensuite pour prendre en compte les formules et mise en page, activer l'onglet PRESENCE 01 et cliquer sur le module juste au dessus de l'en tête de ligne 1 et à gauche de l'en tête de colonne A, tu remarqueras une petite flèche en bas vers la droite, la page se sélectionnera dans son ensemble, clic droit Copier aller sur une feuille PRESENCE vierge clic droit sur A1 et Coller, aller sur un autre onglet PRESENCE vierge clic droit sur A1 et Coller ainsi de suite pour créer toutes les feuilles PRESENCE
recommencer pour les feuilles MOIS
revenir dans la Thiswokbook et supprimer les deux apostrophes
cela doit te prendre une dizaine de minutes max, si les cellules sont hachurées, il suffit de déplacer la cellule active pour que ton fichier s'actualise dès lors que tu auras supprimé l'apostrophe devant les Calculate
https://www.cjoint.com/c/EDtj1ST3SpT
A+
Mike-31
Une période d'échec est un moment rêvé pour semer les graines du savoir.
Mike-31
Messages postés
18310
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
29 mars 2024
5 072
Modifié par Mike-31 le 19/04/2015 à 11:26
Modifié par Mike-31 le 19/04/2015 à 11:26
Re,
Ps: prend plutôt ce fichier, dans le code j'ai laissé trainer une ligne inutile
ou supprime cette ligne
Var = Sheets(ActiveSheet.Index - 1).Range(cell.Address)
https://www.cjoint.com/c/EDtllAVhqUM
Ps: prend plutôt ce fichier, dans le code j'ai laissé trainer une ligne inutile
ou supprime cette ligne
Var = Sheets(ActiveSheet.Index - 1).Range(cell.Address)
https://www.cjoint.com/c/EDtllAVhqUM
18 avril 2015 à 13:56
Voici le lien du fichier
https://www.cjoint.com/?0DsogrlY4YE