AutomaVB
Résolu
cindy001
Messages postés
102
Date d'inscription
Statut
Membre
Dernière intervention
-
ccm81 Messages postés 10909 Date d'inscription Statut Membre Dernière intervention -
ccm81 Messages postés 10909 Date d'inscription Statut Membre Dernière intervention -
30 réponses
re
bon, je vois que je ne suis pas le seul dans l'expectative
peut etre pas trop compliqué, mais ta demande est difficile a comprendre, je vais tenter d'éclaircir la situation
- la valeur de p a apparemment un lien avec tes noms de feuilles (lequel)
- veux tu une creation auto de feuille, une recopie de feuille modele) avec modif de formule ?
- ta macro doit elle avoir p comme parametre ?
- quelle(s) formule(s) est concernée par p?
- que veux tu faire de p?
- si tu donnais un exemple où p figure, et par quoi tu veux le remplacer (formule - même mal redigée contenant p - avant remplacement de p, formule après remplacement de p par 40 par exemple)
bon courage
bon, je vois que je ne suis pas le seul dans l'expectative
peut etre pas trop compliqué, mais ta demande est difficile a comprendre, je vais tenter d'éclaircir la situation
- la valeur de p a apparemment un lien avec tes noms de feuilles (lequel)
- veux tu une creation auto de feuille, une recopie de feuille modele) avec modif de formule ?
- ta macro doit elle avoir p comme parametre ?
- quelle(s) formule(s) est concernée par p?
- que veux tu faire de p?
- si tu donnais un exemple où p figure, et par quoi tu veux le remplacer (formule - même mal redigée contenant p - avant remplacement de p, formule après remplacement de p par 40 par exemple)
bon courage
Merci de me répondre
Pour le p je voulais dire:
le calcul product on le bas dans chaque cas sur AU-FJ, y'a en tout 120 colonnes normalement:
dans le premier cas ci dessus on l'a couper en deux en gros: AU-DC DC-FJ
(c'était ca mon p = 2)
dans le deuxième cas en trois(ici p = 3)
normalement FJ correspon à une date je dis n'importe quoi:31/12/2009
et AU à 31/12/1999, pour moi le p c'est par exemple couper ca en 2 fois, 3 fois, 4fois, et arreter cette boucle jusqu'à 10, un p ou un i ou j dans cette boucle ca n'a pas d'importance
l'idée c d'automatiser ca
demain jpourrais meme un autre fichier plus précis si je ne suis toujours pas très clair?
une creation auto de feuille pour ces 10 cas serait parfait.
Merci encore
Pour le p je voulais dire:
le calcul product on le bas dans chaque cas sur AU-FJ, y'a en tout 120 colonnes normalement:
dans le premier cas ci dessus on l'a couper en deux en gros: AU-DC DC-FJ
(c'était ca mon p = 2)
dans le deuxième cas en trois(ici p = 3)
normalement FJ correspon à une date je dis n'importe quoi:31/12/2009
et AU à 31/12/1999, pour moi le p c'est par exemple couper ca en 2 fois, 3 fois, 4fois, et arreter cette boucle jusqu'à 10, un p ou un i ou j dans cette boucle ca n'a pas d'importance
l'idée c d'automatiser ca
demain jpourrais meme un autre fichier plus précis si je ne suis toujours pas très clair?
une creation auto de feuille pour ces 10 cas serait parfait.
Merci encore
Merci de m'avoir répondu
Alors dans ma formule j'ai mis FJ en f1 parceque dans la feuille Coef Mul Titre Large Ret1m les chiffres s'arretent en FJ mais j'ai d'autres fichiers ou ca se termine plus loin donc j'aimerai que ma macro sache reconnaitre quelle est cette dernière colonne
donc remplacer FJ par un LastColumn qu'on ferait calculer.
FJ ca correspond par exemple à la date 31/12/2009 et AU 31/12/1999(y' a 120 mois)
le premier cas que j'ai fais au dessus correpondrait au cas ou on coupe cette intervalle en deux(AU-DC en f1 et DC-FJ en f3) donc 120mois/2 = 60 c'était ca mon p =60 mais je me suis mal exprimer
la deuxième cas on le coupe en 3(qu'on peut mettre dans une autre feuille) c'était ca mon cas: p= 40 au dessus car 120/3(3 car on coupe en 3)
puis ensuite j'en ai besoin en 4, 5 ..... jusqu'à 10, qu'on peut mettre à chaque fois dans une nouvelle feuille, en automatique je sais pas comment faire mais ca serait parfait
c ca que je voulais dire que jai dis p mais je me suis mal exprimer
p comme paramètre ou autre aucune importance
pour la formule f2
f2 = "=Feuil1!$DB$" & lig , DB c en fait une colonne avant le DC de f1 ci dessous
automatiser ca serait
f1 = "=product('Coef Mul Titre Large Ret1m'!$DC$" & lig & ":$FJ$" & lig & ")-1"
comme pour f4
f4 = "=Feuil1!$AT$" & lig
le AT c en fait une colonne avant le AU de f3:
f3 = "=product('Coef Mul Titre Large Ret1m'!$AU$" & lig & ":$DC$" & lig & ")-1"
si je suis pas assez précis dis le moi??? comme ca demain jpourrais mettre un autre fichier sur cijoint en fesant plus de cas
Merci encore
Alors dans ma formule j'ai mis FJ en f1 parceque dans la feuille Coef Mul Titre Large Ret1m les chiffres s'arretent en FJ mais j'ai d'autres fichiers ou ca se termine plus loin donc j'aimerai que ma macro sache reconnaitre quelle est cette dernière colonne
donc remplacer FJ par un LastColumn qu'on ferait calculer.
FJ ca correspond par exemple à la date 31/12/2009 et AU 31/12/1999(y' a 120 mois)
le premier cas que j'ai fais au dessus correpondrait au cas ou on coupe cette intervalle en deux(AU-DC en f1 et DC-FJ en f3) donc 120mois/2 = 60 c'était ca mon p =60 mais je me suis mal exprimer
la deuxième cas on le coupe en 3(qu'on peut mettre dans une autre feuille) c'était ca mon cas: p= 40 au dessus car 120/3(3 car on coupe en 3)
puis ensuite j'en ai besoin en 4, 5 ..... jusqu'à 10, qu'on peut mettre à chaque fois dans une nouvelle feuille, en automatique je sais pas comment faire mais ca serait parfait
c ca que je voulais dire que jai dis p mais je me suis mal exprimer
p comme paramètre ou autre aucune importance
pour la formule f2
f2 = "=Feuil1!$DB$" & lig , DB c en fait une colonne avant le DC de f1 ci dessous
automatiser ca serait
f1 = "=product('Coef Mul Titre Large Ret1m'!$DC$" & lig & ":$FJ$" & lig & ")-1"
comme pour f4
f4 = "=Feuil1!$AT$" & lig
le AT c en fait une colonne avant le AU de f3:
f3 = "=product('Coef Mul Titre Large Ret1m'!$AU$" & lig & ":$DC$" & lig & ")-1"
si je suis pas assez précis dis le moi??? comme ca demain jpourrais mettre un autre fichier sur cijoint en fesant plus de cas
Merci encore
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
re
sur le fichier de ton pos1, il y a deux feuilles p=60 et p=40
donc si je comprends p = 60 coreespond a quelque chose coupé en 2 et les 4 cellules A2:B3 se referent à la ligne 20.
et p=40 à coupé en 3 ? et les 6 cellules A2:B4 se referent à la ligne 20.
donc le probleme est la gestion (numerique) des n° de colonnes
pour cela il faudrait passer en mode L1C1 (outils/option/general/Style L1C1 (en VBA style R1C1 et ça devient cells(lig,col).formulaR1C1 = fxx )
questions
- pour chaque feuille la reference $FJ$J (col 166) est elle la même
- expliquer alors comment la valeur de p influe t'elle sur $DC$20 (de combien recule t'on depuis FJ en fonction de p?)
- la 1° col du cas p=40 est AW (col 49) et celle du cas p=60 et AU (col 47) est ce normal, comment varie cette colonne en fonction de p?
- quels sont les 10 cas pour p : comment couper 120 en autre chose qu'en 2,3,4,6 (seuls diviseurs de 120 <= 10) me parait bizarre!
- si tu eux m'expliquer tout ça en utilisant des numéros de colonnes (numérique), ça serait plus clair
- envoies ton exemple avec les premieres lignes de chaque cas
bonne suite
sur le fichier de ton pos1, il y a deux feuilles p=60 et p=40
donc si je comprends p = 60 coreespond a quelque chose coupé en 2 et les 4 cellules A2:B3 se referent à la ligne 20.
et p=40 à coupé en 3 ? et les 6 cellules A2:B4 se referent à la ligne 20.
donc le probleme est la gestion (numerique) des n° de colonnes
pour cela il faudrait passer en mode L1C1 (outils/option/general/Style L1C1 (en VBA style R1C1 et ça devient cells(lig,col).formulaR1C1 = fxx )
questions
- pour chaque feuille la reference $FJ$J (col 166) est elle la même
- expliquer alors comment la valeur de p influe t'elle sur $DC$20 (de combien recule t'on depuis FJ en fonction de p?)
- la 1° col du cas p=40 est AW (col 49) et celle du cas p=60 et AU (col 47) est ce normal, comment varie cette colonne en fonction de p?
- quels sont les 10 cas pour p : comment couper 120 en autre chose qu'en 2,3,4,6 (seuls diviseurs de 120 <= 10) me parait bizarre!
- si tu eux m'expliquer tout ça en utilisant des numéros de colonnes (numérique), ça serait plus clair
- envoies ton exemple avec les premieres lignes de chaque cas
bonne suite
- la 1° col du cas p=40 est AW (col 49) et celle du cas p=60 et AU (col 47) est ce normal, comment varie cette colonne en fonction de p? NON c une erreur
pour cette 3 ème question c une bonne question car on a en tout 120 colonnes et on veut donc couper en 2, 3... jusqu'à 10 donc c pas AW mais AU, bref on veut couper de 6 en 6(je parle en colonne là)
on coupe en 2: on aura 60 et 60 colonnes(120/2)
puis j'aimerai ensuite les cas 54, 48, 42, 36 jusqu'à 12(12 c le dernier cas que j'ai dis ou on coupe en 10(120/10)...... au lieu du 60 juste au dessus donc de 6 en 6 je veux qu'on fasse cette boucle(c la réponse à ta deuxième question on bouge de 6 en 6 à partir de FJ (enfin non à partir de la dernière colonne qui est FJ dans ce cas ci)FJ qu'on fige enfin on part de là, on fait donc 60 àpartir de FJ, 54 à partir de FJ,.....jusqu'à 12 à partir de FJ)
le cas p = 40 on coupe en 3 c'était juste pour illustrer ce que je voulais
mais jpense que t'as compris c bien ca:
sur le fichier de ton pos1, il y a deux feuilles p=60 et p=40
donc si je comprends p = 60 coreespond a quelque chose coupé en 2 et les 4 cellules A2:B3 se referent à la ligne 20.
et p=40 à coupé en 3 ? et les 6 cellules A2:B4 se referent à la ligne 20.
Merci encore
pour cette 3 ème question c une bonne question car on a en tout 120 colonnes et on veut donc couper en 2, 3... jusqu'à 10 donc c pas AW mais AU, bref on veut couper de 6 en 6(je parle en colonne là)
on coupe en 2: on aura 60 et 60 colonnes(120/2)
puis j'aimerai ensuite les cas 54, 48, 42, 36 jusqu'à 12(12 c le dernier cas que j'ai dis ou on coupe en 10(120/10)...... au lieu du 60 juste au dessus donc de 6 en 6 je veux qu'on fasse cette boucle(c la réponse à ta deuxième question on bouge de 6 en 6 à partir de FJ (enfin non à partir de la dernière colonne qui est FJ dans ce cas ci)FJ qu'on fige enfin on part de là, on fait donc 60 àpartir de FJ, 54 à partir de FJ,.....jusqu'à 12 à partir de FJ)
le cas p = 40 on coupe en 3 c'était juste pour illustrer ce que je voulais
mais jpense que t'as compris c bien ca:
sur le fichier de ton pos1, il y a deux feuilles p=60 et p=40
donc si je comprends p = 60 coreespond a quelque chose coupé en 2 et les 4 cellules A2:B3 se referent à la ligne 20.
et p=40 à coupé en 3 ? et les 6 cellules A2:B4 se referent à la ligne 20.
Merci encore
Alors voila comme je l'avais dis
j'ai fait d'autres cas, 4 en tout et les résultats sont bon ils sont dans les feuilles cas1(p=120 c tout AU-FJ macro CCM1 module1) cas2(p = 60 c la macro CCM2 que j'ai lancé) cas3(macro CCM3) et cas4(p = 24 j'ai coupé AU-FJ en 5(120/5 pour le p=24) )
http://www.cijoint.fr/cjlink.php?file=cj201101/cijLrxkd2S.xls
Merci
j'ai fait d'autres cas, 4 en tout et les résultats sont bon ils sont dans les feuilles cas1(p=120 c tout AU-FJ macro CCM1 module1) cas2(p = 60 c la macro CCM2 que j'ai lancé) cas3(macro CCM3) et cas4(p = 24 j'ai coupé AU-FJ en 5(120/5 pour le p=24) )
http://www.cijoint.fr/cjlink.php?file=cj201101/cijLrxkd2S.xls
Merci
Et enfin avec le dernier cas on coupe AU-FJ en 10, les formules c ca:
f1 = "=product('Coef Mul Titre Large Ret1m'!$EY$" & lig & ":$FJ$" & lig & ")-1"
f2 = "=Feuil1!$EX$" & lig
f3 = "=product('Coef Mul Titre Large Ret1m'!$EM$" & lig & ":$EX$" & lig & ")-1"
f4 = "=Feuil1!$EL$" & lig
f5 = "=product('Coef Mul Titre Large Ret1m'!$EA$" & lig & ":$EL$" & lig & ")-1"
f6 = "=Feuil1!$DZ$" & lig
f7 = "=product('Coef Mul Titre Large Ret1m'!$DO$" & lig & ":$DZ$" & lig & ")-1"
f8 = "=Feuil1!$DN$" & lig
f9 = "=product('Coef Mul Titre Large Ret1m'!$DC$" & lig & ":$DN$" & lig & ")-1"
f10 = "=Feuil1!$DB$" & lig
f11 = "=product('Coef Mul Titre Large Ret1m'!$CQ$" & lig & ":$DB$" & lig & ")-1"
f12 = "=Feuil1!$CP$" & lig
f13 = "=product('Coef Mul Titre Large Ret1m'!$CE$" & lig & ":$CP$" & lig & ")-1"
f14 = "=Feuil1!$CD$" & lig
f15 = "=product('Coef Mul Titre Large Ret1m'!$BS$" & lig & ":$CD$" & lig & ")-1"
f16 = "=Feuil1!$BR$" & lig
f17 = "=product('Coef Mul Titre Large Ret1m'!$BG$" & lig & ":$BR$" & lig & ")-1"
f18 = "=Feuil1!$BF$" & lig
f19 = "=product('Coef Mul Titre Large Ret1m'!$AU$" & lig & ":$BF$" & lig & ")-1"
f20 = "=Feuil1!$AT$" & lig
c la dernière macro CCM5 résultats Feuille Cas5
http://www.cijoint.fr/cjlink.php?file=cj201101/cijvtryCLz.xls
Bon si j'arrive toujours pas à me faire comprendre, dis le moi stp comme ca je le fais à la main, en tout y'a que 10 cas j'en ai déja fais 5 (document cijoint)
f1 = "=product('Coef Mul Titre Large Ret1m'!$EY$" & lig & ":$FJ$" & lig & ")-1"
f2 = "=Feuil1!$EX$" & lig
f3 = "=product('Coef Mul Titre Large Ret1m'!$EM$" & lig & ":$EX$" & lig & ")-1"
f4 = "=Feuil1!$EL$" & lig
f5 = "=product('Coef Mul Titre Large Ret1m'!$EA$" & lig & ":$EL$" & lig & ")-1"
f6 = "=Feuil1!$DZ$" & lig
f7 = "=product('Coef Mul Titre Large Ret1m'!$DO$" & lig & ":$DZ$" & lig & ")-1"
f8 = "=Feuil1!$DN$" & lig
f9 = "=product('Coef Mul Titre Large Ret1m'!$DC$" & lig & ":$DN$" & lig & ")-1"
f10 = "=Feuil1!$DB$" & lig
f11 = "=product('Coef Mul Titre Large Ret1m'!$CQ$" & lig & ":$DB$" & lig & ")-1"
f12 = "=Feuil1!$CP$" & lig
f13 = "=product('Coef Mul Titre Large Ret1m'!$CE$" & lig & ":$CP$" & lig & ")-1"
f14 = "=Feuil1!$CD$" & lig
f15 = "=product('Coef Mul Titre Large Ret1m'!$BS$" & lig & ":$CD$" & lig & ")-1"
f16 = "=Feuil1!$BR$" & lig
f17 = "=product('Coef Mul Titre Large Ret1m'!$BG$" & lig & ":$BR$" & lig & ")-1"
f18 = "=Feuil1!$BF$" & lig
f19 = "=product('Coef Mul Titre Large Ret1m'!$AU$" & lig & ":$BF$" & lig & ")-1"
f20 = "=Feuil1!$AT$" & lig
c la dernière macro CCM5 résultats Feuille Cas5
http://www.cijoint.fr/cjlink.php?file=cj201101/cijvtryCLz.xls
Bon si j'arrive toujours pas à me faire comprendre, dis le moi stp comme ca je le fais à la main, en tout y'a que 10 cas j'en ai déja fais 5 (document cijoint)
re
bon ccm etait dans les choux du moins depuis chez moi .... ce qui m'a obligé a reflechir tranquille !!!
je n'ai pas vu ton dernier ccm5
ce qui est sur c'est que le style L1C1 convient beaucoup mieux a ton pb que le style A1, ça permet de travailler sur les n° de colonnes ce qui est nettement plus commode que les lettres (ça permet des calculs)
j'ai traité les cas p = 2 et p = 3 (sans macro - avec decaler)
j'ai traité le cas p = 2 avec macro.
les numéros de colonnes doivent pouvoir se calculer en fonction de p (a toi de voir)
RQ. j'ai ajouté une feuille F0 pour essayer d'y voir clair !!! elle ne m'a pas servi, mais on ne sait jamais !
http://www.cijoint.fr/cjlink.php?file=cj201101/cij62xK4qC.xls
bonne suite
bon ccm etait dans les choux du moins depuis chez moi .... ce qui m'a obligé a reflechir tranquille !!!
je n'ai pas vu ton dernier ccm5
ce qui est sur c'est que le style L1C1 convient beaucoup mieux a ton pb que le style A1, ça permet de travailler sur les n° de colonnes ce qui est nettement plus commode que les lettres (ça permet des calculs)
j'ai traité les cas p = 2 et p = 3 (sans macro - avec decaler)
j'ai traité le cas p = 2 avec macro.
les numéros de colonnes doivent pouvoir se calculer en fonction de p (a toi de voir)
RQ. j'ai ajouté une feuille F0 pour essayer d'y voir clair !!! elle ne m'a pas servi, mais on ne sait jamais !
http://www.cijoint.fr/cjlink.php?file=cj201101/cij62xK4qC.xls
bonne suite
re
j'ai repris ton dernier envoi
en essayant d'automatiser le cas p = 3
j'ai mis un bouton sur cette feuille et code la procedure
MAIS il y a pb voir RQ dans le code du bouton
http://www.cijoint.fr/cjlink.php?file=cj201101/cijG2lkuuj.xls
tu peux toujours t'en inspirer pour les cas suivants, mais si on veut vraiment automatiser, , il faut regler le pb des tailles de paquets
bonne suite
j'ai repris ton dernier envoi
en essayant d'automatiser le cas p = 3
j'ai mis un bouton sur cette feuille et code la procedure
MAIS il y a pb voir RQ dans le code du bouton
http://www.cijoint.fr/cjlink.php?file=cj201101/cijG2lkuuj.xls
tu peux toujours t'en inspirer pour les cas suivants, mais si on veut vraiment automatiser, , il faut regler le pb des tailles de paquets
bonne suite
Salut ccm81,
Avant de me pencher sur le problème en cours, je désirais attirer ton attention sur la déclaration de variables. Tu dis, dans ton code VBA ne pas être obligé de déclarer toutes les variables, car cela fonctionne. Il faut déclarer systématiquement toutes les variables utilisées dans la macro! Voici deux liens cadeaux :
http://www.info-3000.com/vbvba/variableconstante.php
et surtout :
ftp://ftp-developpez.com/silkyroad/VBA/LesVariables/LesVariables.pdf
Si tu veux être sur de ne jamais oublier de déclarer tes variables, commence systématiquement tes macros par :
Option Explicit
Sub ...()
Cordialement,
Avant de me pencher sur le problème en cours, je désirais attirer ton attention sur la déclaration de variables. Tu dis, dans ton code VBA ne pas être obligé de déclarer toutes les variables, car cela fonctionne. Il faut déclarer systématiquement toutes les variables utilisées dans la macro! Voici deux liens cadeaux :
http://www.info-3000.com/vbvba/variableconstante.php
et surtout :
ftp://ftp-developpez.com/silkyroad/VBA/LesVariables/LesVariables.pdf
Si tu veux être sur de ne jamais oublier de déclarer tes variables, commence systématiquement tes macros par :
Option Explicit
Sub ...()
Cordialement,
Ok
donc tu comprends ce que je voulais faire maintenant
mais bon c peut etre impossible d'aller aussi loin dans l'automatisation.
meme si raisonner en terme de L C plutot que mettre les lettres des colonnes FJ... c'était une bonne idée
sinon t'as rien touché aux macros t'as juste changé dans les formules FJ en C166..... à la main.
Merci quand meme d'avoir regardé
donc tu comprends ce que je voulais faire maintenant
mais bon c peut etre impossible d'aller aussi loin dans l'automatisation.
meme si raisonner en terme de L C plutot que mettre les lettres des colonnes FJ... c'était une bonne idée
sinon t'as rien touché aux macros t'as juste changé dans les formules FJ en C166..... à la main.
Merci quand meme d'avoir regardé
Merci de répondre merci à vous deux
http://www.cijoint.fr/cjlink.php?file=cj201101/cijpb4ged3.xls
Je veux juste une macro qui soit capable de me créer ces onglets( que j'ai appelé Cas1...cas6 mais peu importe les noms) automatiquement avec ces formules à l'interieur dépendant des 3 premières feuilles, mon idée du Offset n'est peut etre pas terrible mais peut importe la méthode ou fonction utiliser.
J'ai 6 macros que j'ai lancé chacune dans un onglet que j'ai créer à la main.
Mais je crois que c trop dur à faire?
http://www.cijoint.fr/cjlink.php?file=cj201101/cijpb4ged3.xls
Je veux juste une macro qui soit capable de me créer ces onglets( que j'ai appelé Cas1...cas6 mais peu importe les noms) automatiquement avec ces formules à l'interieur dépendant des 3 premières feuilles, mon idée du Offset n'est peut etre pas terrible mais peut importe la méthode ou fonction utiliser.
J'ai 6 macros que j'ai lancé chacune dans un onglet que j'ai créer à la main.
Mais je crois que c trop dur à faire?
Bon je n'ai touché à rien dans le code, je n'ai même pas cherché à en comprendre le but.
Ce que j'ai fait par contre :
création du module : "création onglets" dans lequel j'ai automatisé la création des feuilles et réunit les 6 macros.
Vous dites...
http://www.cijoint.fr/cjlink.php?file=cj201101/cijldex3Ga.xls
Ce que j'ai fait par contre :
création du module : "création onglets" dans lequel j'ai automatisé la création des feuilles et réunit les 6 macros.
Vous dites...
http://www.cijoint.fr/cjlink.php?file=cj201101/cijldex3Ga.xls
re
j'ai toujours des pb pour me connecter au site !!!
au vu de ton dernier envoi, il y a bien cette fois une logique de découpage selon la valeur de p
du coup, le code est grandement simplifié
- tu mets un bouton (avec la boite a outils controle) dans la feuille
- tu y attaches le code suivant
- tu changes la valeur de p
- et les valeurs de constantes col1 et col2 (colonnes pour l'affichge des resultats)
http://www.cijoint.fr/cjlink.php?file=cj201101/cij2tl7Lkx.xls
RQ1. on peut aussi passer la valeur de p en parametre à la procedure, histoire de n'avoir qu'un seul exemplaire du code
RQ2. pijaku a reglé le problème de la creation des onglets donc ...
bonne suite
j'ai toujours des pb pour me connecter au site !!!
au vu de ton dernier envoi, il y a bien cette fois une logique de découpage selon la valeur de p
du coup, le code est grandement simplifié
- tu mets un bouton (avec la boite a outils controle) dans la feuille
- tu y attaches le code suivant
Const p = 10 Const imax = 70 Const co1 = 5 'j'ai execute en colonnes 4 et 5 Const co2 = 6 Const colder = 166 Const FCoeff = "'Coef Mul Titre Large Ret1m'" Const f1 = "'Feuil1'" Const ideb = 20 ' ligne 1 feuille cas = 3 Dim lig As Long, col1 As Long, col2 As Long, i As Long, j As Long, pp As Long Dim a1 As String, a2 as string lig = 20 pp = 120 \ p i = ideb While i < imax col1 = colder - pp + 1 col2 = colder For j = 1 To p a1 = "=product(" & FCoeff & "!R" & lig & "C" & col1 & ":" & "R" & lig & "C" & col2 & ")-1" b1 = "=" & f1 & "!R" & lig & "C" & col1 - 1 Cells(i, co1).FormulaR1C1 = a1 Cells(i, co2).FormulaR1C1 = b1 i = i + 1 col1 = col1 - pp col2 = col2 - pp Next j lig = lig + 1 Wend
- tu changes la valeur de p
- et les valeurs de constantes col1 et col2 (colonnes pour l'affichge des resultats)
http://www.cijoint.fr/cjlink.php?file=cj201101/cij2tl7Lkx.xls
RQ1. on peut aussi passer la valeur de p en parametre à la procedure, histoire de n'avoir qu'un seul exemplaire du code
RQ2. pijaku a reglé le problème de la creation des onglets donc ...
bonne suite
j'avou que je ne suis pas assez fort en vb pour comprendre tout de suite .
j'ai mis un bouton sur la feuille j'y ai mis le code.
Mais quend je clique dessus il se passe.
Jconnais pas trop ca, peut-etre faut il que je rajoute mon code avant le End Sub avec??
jvais continuer à essayer de le comprendre il mfaut ptere juste un peu de temps
Merci de rseter avec moi
j'ai mis un bouton sur la feuille j'y ai mis le code.
Mais quend je clique dessus il se passe.
Jconnais pas trop ca, peut-etre faut il que je rajoute mon code avant le End Sub avec??
jvais continuer à essayer de le comprendre il mfaut ptere juste un peu de temps
Merci de rseter avec moi
re
as tu
- regarde le la feuille cas 5 de mon dernier post
(clic-droit sur l'onglet/Visualiser le code)
- mis ton bouton dans la feuille a remplir
- mis un bouton avec la boite a outils controle
Au cas où !!
- Affichage/boite a outils controle/
- passer en mode creation (le petit triangle bleu)
- clic-clic sur le bouton pour passer a l'editeur VB
- et mettre le code entre Private Sub CommandButton1_Click() et end sub
- repasser en mode execution (le petit triangle bleu)
bonne suite
as tu
- regarde le la feuille cas 5 de mon dernier post
(clic-droit sur l'onglet/Visualiser le code)
- mis ton bouton dans la feuille a remplir
- mis un bouton avec la boite a outils controle
Au cas où !!
- Affichage/boite a outils controle/
- passer en mode creation (le petit triangle bleu)
- clic-clic sur le bouton pour passer a l'editeur VB
- et mettre le code entre Private Sub CommandButton1_Click() et end sub
- repasser en mode execution (le petit triangle bleu)
bonne suite
Bonjour le forum,
J'ai parcouru le topic en diagonal et je compte pas aller plus loin, mais ce qui me fait intervenir c'est... pourquoi faire une macro qui insère une formule plutôt que de mettre directement la fonction qui génère la réponse. ???
Ce serait quand même plus rationnel.
A+
J'ai parcouru le topic en diagonal et je compte pas aller plus loin, mais ce qui me fait intervenir c'est... pourquoi faire une macro qui insère une formule plutôt que de mettre directement la fonction qui génère la réponse. ???
Ce serait quand même plus rationnel.
A+
re
j'ai rajouté la creation et le remplissage des feuilles selon la valeur de p > feuille F0, (p =2 correspond a ton 60, p = 3 à ton 40 etc ... )
http://www.cijoint.fr/cjlink.php?file=cj201101/cijYHPIBGu.xls
les modules deviennent inutiles (sauf module 6 qui contient le code) et pourront etre supprimes
si c'est bon, il te faudra modifier dans le code de CreerFeuille, les valeurs de col1, col2 et imax
bonne suite
j'ai rajouté la creation et le remplissage des feuilles selon la valeur de p > feuille F0, (p =2 correspond a ton 60, p = 3 à ton 40 etc ... )
http://www.cijoint.fr/cjlink.php?file=cj201101/cijYHPIBGu.xls
les modules deviennent inutiles (sauf module 6 qui contient le code) et pourront etre supprimes
si c'est bon, il te faudra modifier dans le code de CreerFeuille, les valeurs de col1, col2 et imax
bonne suite
bon jpeux pas rgarder la parceque j'ai pas excel chez moi mais comme t'as compris ce que je voulais jpense que t'as bien traité ca:(c ce que j'avais mis plus haut le 12 jan 2011 à 23:33)
on coupe en 2: on aura 60 et 60 colonnes(120/2)
puis j'aimerai ensuite les cas 54, 48, 42, 36 jusqu'à 12(12 c le dernier cas que j'ai dis ou on coupe en 10(120/10)......on bouge de 6 en 6 à partir de FJ
quand jdisais à la fin 120 , puis 120/2(p = 2), puis 120/3 (p =3)....., c'était pour que tu saisisses le truc, qui était un peu difficile à expliquer.
Mais bon c peut etre ce que t'as fais.
Alors Merci jpourrais rgarder ca que lundi.
on coupe en 2: on aura 60 et 60 colonnes(120/2)
puis j'aimerai ensuite les cas 54, 48, 42, 36 jusqu'à 12(12 c le dernier cas que j'ai dis ou on coupe en 10(120/10)......on bouge de 6 en 6 à partir de FJ
quand jdisais à la fin 120 , puis 120/2(p = 2), puis 120/3 (p =3)....., c'était pour que tu saisisses le truc, qui était un peu difficile à expliquer.
Mais bon c peut etre ce que t'as fais.
Alors Merci jpourrais rgarder ca que lundi.
re
en relisant ton dernier post, j'ai encore quelques doutes, donc je re-précise comment j'ai compris/traité le decoupage
- le cas p=5 correspond au decoupage de C47:C166 (AU:FJ) en 5 paquets de 120/5 = 24 colonnes (166:143 , 142:119 , ... , 70:47)
- donc pour p (obligatoirement diviseur de 120) on découpe C47:C166 en p paquets de 120/p
puis j'aimerai ensuite les cas 54, 48, 42, 36 jusqu'à 12(12 c le dernier cas que j'ai dis ou on coupe en 10(120/10)......on bouge de 6 en 6 à partir de FJ
si on bouge de 6 en 6, pour moi, on coupe en p = 20 (120/20 = 6)
sur mon envoi, j'ai traité le cas p = 10,
enfin, tu verifies avec les cas que tu as déjà fabriqués et tu dis ...
bonne suite
en relisant ton dernier post, j'ai encore quelques doutes, donc je re-précise comment j'ai compris/traité le decoupage
- le cas p=5 correspond au decoupage de C47:C166 (AU:FJ) en 5 paquets de 120/5 = 24 colonnes (166:143 , 142:119 , ... , 70:47)
- donc pour p (obligatoirement diviseur de 120) on découpe C47:C166 en p paquets de 120/p
puis j'aimerai ensuite les cas 54, 48, 42, 36 jusqu'à 12(12 c le dernier cas que j'ai dis ou on coupe en 10(120/10)......on bouge de 6 en 6 à partir de FJ
si on bouge de 6 en 6, pour moi, on coupe en p = 20 (120/20 = 6)
sur mon envoi, j'ai traité le cas p = 10,
enfin, tu verifies avec les cas que tu as déjà fabriqués et tu dis ...
bonne suite