Je cherche =E0 faire une macro relativement simple en VBA mais je n'y
connais pas grand chose. Si quelqu'un pouvait m'aider, ce serait super.
En fait, je suis limit=E9 par le nombre de SI imbriqu=E9s sur Excel (7).
Ce que je cherche =E0 faire :
1- savoir combien de cellules sont vides sur une plage
2- a partir de l=E0, calculer la variation entre 2005 et 2006 sur les
cellules pleines (ex. donn=E9es 2006 renseign=E9es que jusqu'=E0 mars -->
nb cellules vides =3D9 donc calcul de la variation cumul=E9e 2005 par
rapport =E0 2006 la plage des 3 cellules pleines)
3- renvoyer la variation dans une cellule excel
=E7a doit donner quelque chose de ce genre l=E0 ? :
nb_cells_vides =3D NB.VIDE(plage_cellules_2006);
for i=3D0 to 12 'il y a douze cellules sur ma plage
{
if nb_cells_vides =3D i
{
variation =3D
somme(plage_cellule_pleine_2006)/somme(plage_cellule_pleine_2005)-1;
write variation ;
}
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Jacky
Bonjour,
Si tu le souhaites, un exemple brouillon avec la structure des données et le résultat souhaité sur: http://cjoint.com
Salutations JJ
a écrit dans le message de news: Bonjour,
Je cherche à faire une macro relativement simple en VBA mais je n'y connais pas grand chose. Si quelqu'un pouvait m'aider, ce serait super. En fait, je suis limité par le nombre de SI imbriqués sur Excel (7).
Ce que je cherche à faire : 1- savoir combien de cellules sont vides sur une plage 2- a partir de là, calculer la variation entre 2005 et 2006 sur les cellules pleines (ex. données 2006 renseignées que jusqu'à mars --> nb cellules vides =9 donc calcul de la variation cumulée 2005 par rapport à 2006 la plage des 3 cellules pleines) 3- renvoyer la variation dans une cellule excel
ça doit donner quelque chose de ce genre là ? :
nb_cells_vides = NB.VIDE(plage_cellules_2006);
for i=0 to 12 'il y a douze cellules sur ma plage { if nb_cells_vides = i { variation somme(plage_cellule_pleine_2006)/somme(plage_cellule_pleine_2005)-1; write variation ; }
} end for
Bonjour,
Si tu le souhaites, un exemple brouillon avec la structure des données et le
résultat souhaité sur:
http://cjoint.com
Salutations
JJ
<alexpression1980@yahoo.fr> a écrit dans le message de
news:1138183707.729612.252270@g44g2000cwa.googlegroups.com...
Bonjour,
Je cherche à faire une macro relativement simple en VBA mais je n'y
connais pas grand chose. Si quelqu'un pouvait m'aider, ce serait super.
En fait, je suis limité par le nombre de SI imbriqués sur Excel (7).
Ce que je cherche à faire :
1- savoir combien de cellules sont vides sur une plage
2- a partir de là, calculer la variation entre 2005 et 2006 sur les
cellules pleines (ex. données 2006 renseignées que jusqu'à mars -->
nb cellules vides =9 donc calcul de la variation cumulée 2005 par
rapport à 2006 la plage des 3 cellules pleines)
3- renvoyer la variation dans une cellule excel
ça doit donner quelque chose de ce genre là ? :
nb_cells_vides = NB.VIDE(plage_cellules_2006);
for i=0 to 12 'il y a douze cellules sur ma plage
{
if nb_cells_vides = i
{
variation somme(plage_cellule_pleine_2006)/somme(plage_cellule_pleine_2005)-1;
write variation ;
}
Si tu le souhaites, un exemple brouillon avec la structure des données et le résultat souhaité sur: http://cjoint.com
Salutations JJ
a écrit dans le message de news: Bonjour,
Je cherche à faire une macro relativement simple en VBA mais je n'y connais pas grand chose. Si quelqu'un pouvait m'aider, ce serait super. En fait, je suis limité par le nombre de SI imbriqués sur Excel (7).
Ce que je cherche à faire : 1- savoir combien de cellules sont vides sur une plage 2- a partir de là, calculer la variation entre 2005 et 2006 sur les cellules pleines (ex. données 2006 renseignées que jusqu'à mars --> nb cellules vides =9 donc calcul de la variation cumulée 2005 par rapport à 2006 la plage des 3 cellules pleines) 3- renvoyer la variation dans une cellule excel
ça doit donner quelque chose de ce genre là ? :
nb_cells_vides = NB.VIDE(plage_cellules_2006);
for i=0 to 12 'il y a douze cellules sur ma plage { if nb_cells_vides = i { variation somme(plage_cellule_pleine_2006)/somme(plage_cellule_pleine_2005)-1; write variation ; }
} end for
alexpression1980
Bonjour, je ne vois ce qu'apporte cette adresse à mon problème ? N'hésitez pas à me contacter sur mon adresse e-mail :
En vous remerciant,
Bonjour, je ne vois ce qu'apporte cette adresse à mon problème ?
N'hésitez pas à me contacter sur mon adresse e-mail :
alexpression1980@yahoo.fr
En vous remerciant,
Bonjour, je ne vois ce qu'apporte cette adresse à mon problème ? N'hésitez pas à me contacter sur mon adresse e-mail :
En vous remerciant,
AV
Pas besoin de macro..!
* Avec en "Feuil1" B2:B13 les valeurs de l'année 2005 * Avec en "Feuil1" C2:Cxx les valeurs de l'année 2006
Insertion > Nom > Définir : Nom dans le classeur : "SOM_2005" Fait référence à : =SOMME(DECALER(Feuil1!$B$2;;;NBVAL(Feuil1!$C$2:$C$12))) Nom dans le classeur : "SOM_2006" Fait référence à : =SOMME(DECALER(Feuil1!$C$2;;;NBVAL(Feuil1!$C$2:$C$12)))
Calculer l'évolution (cellule au format %) : =((SOM_2005)-(SOM_2006))/SOM_2006
Exemple là : http://cjoint.com/?bzsBqR5Sau
AV
Pas besoin de macro..!
* Avec en "Feuil1" B2:B13 les valeurs de l'année 2005
* Avec en "Feuil1" C2:Cxx les valeurs de l'année 2006
Insertion > Nom > Définir :
Nom dans le classeur : "SOM_2005"
Fait référence à :
=SOMME(DECALER(Feuil1!$B$2;;;NBVAL(Feuil1!$C$2:$C$12)))
Nom dans le classeur : "SOM_2006"
Fait référence à :
=SOMME(DECALER(Feuil1!$C$2;;;NBVAL(Feuil1!$C$2:$C$12)))
Calculer l'évolution (cellule au format %) :
=((SOM_2005)-(SOM_2006))/SOM_2006
* Avec en "Feuil1" B2:B13 les valeurs de l'année 2005 * Avec en "Feuil1" C2:Cxx les valeurs de l'année 2006
Insertion > Nom > Définir : Nom dans le classeur : "SOM_2005" Fait référence à : =SOMME(DECALER(Feuil1!$B$2;;;NBVAL(Feuil1!$C$2:$C$12))) Nom dans le classeur : "SOM_2006" Fait référence à : =SOMME(DECALER(Feuil1!$C$2;;;NBVAL(Feuil1!$C$2:$C$12)))
Calculer l'évolution (cellule au format %) : =((SOM_2005)-(SOM_2006))/SOM_2006
Exemple là : http://cjoint.com/?bzsBqR5Sau
AV
AV
Pffff...
Pour l'évolution 2005 >> 2006 , il faut, évidemment, inverser les termes : =((SOM_2006)-(SOM_2005))/SOM_2005
AV
Pffff...
Pour l'évolution 2005 >> 2006 , il faut, évidemment, inverser les termes :
=((SOM_2006)-(SOM_2005))/SOM_2005