Je souhaiterais créer une macro qui me permettrait à partir de ma balance mensuelle, de générer mon compte de résultat mensuel(feuille résulat annuel).
La colonne "C" de l'onglet "résultat annuel" (en vert) permet de savoir les comptes de la balance qui sont utilisés pour aboutir au résultat.
Je vous remercie d'avance pour votre aide précieuse.
Cordialement
Luno
PS/ les chiffres utilisés dans mon exemple sont fictifs.
Re : macro qui crée un compte de résultat à partir de balance
Hello,
Suite et fin de l'apprentissage de cette boucle :
Si tu veux écrire "A" dans les cellules A1, A3, A5, A7, A9, A11, A13, A15, A17, ..., A40
C'est à dire toutes les lignes impaires, la solution la plus simple :
VB:
Dim NuméroLigne As Byte
NuméroLigne = 1
For i =1 to 20
Cells(NuméroLigne, 1) = "A"
NuméroLigne = NuméroLigne + 2
Next i
-> J'ai donnée à la variable NuméroLigne le type Byte, car cette variable va contenir des nombres entiers inclus entre 1 et 40, donc pas la peine d'utiliser le type "Long" ou "Integer", plus gourmande en ressource (mais il ne faut pas exagérer non plus, dans ce cas présent, la différence n'est pas perceptible).
-> Si on veut travailler sur toutes les lignes impaires de 1 à 40, il faut exécuter la boucle 20 fois
-> "NuméroLigne = NuméroLigne + 2" => on met dans la variable NuméroLigne la valeur qu'elle contenait précédement, à laquelle on ajoute 2.
Sinon cela peut s'écrire également ainsi (plus court, mais plus complexe) :
VB:
For i =1 to 40 Step 2
Cells(i, 1) = "A"
Next i
Le rajout de Step permet d'indiquer le "pas". C'est à dire l'opération que fais excel avec la variable "i" à chaque fois qu'il exécute la boucle (par défaut il ajoute "+1").
Comme tu le vois c'est plus court, évite d'utiliser la variable NuméroLigne et surtout pas la peine de se casser la tête à savoir combien de fois il faut exécuter la boucle. On met la valeur minimum, la valeur maximum, et l'opération à effectuer à chaque fois.
Voilà, tu as toutes les cartes en main pour comprendre le fichier envoyé dans mon précédent message, et pour pouvoir le terminer.
Re : macro qui crée un compte de résultat à partir de balance
Chers Excel-lent & Gruick,
vos 2 macros me semblent plus simples et plus pro que la mienne. Par contre, elles déconnent toutes les 2. Sauf si c'est moi qui n'arrive pas à les éxécuter.
Re : macro qui crée un compte de résultat à partir de balance
Bonsoir Excel-lent & Gruick,
Encore merci pour ce partage de votre temps et de vos compétences et connaissance. L'altruisme paiera toujours.
Sinon j'ai essayer vos 2 macros.
Gruick: je ne dois pas tout comprendre car quand je veux exécuter la tienne ça bloque.
Excel-lent: je finismes exercices pratiques que tu m'as donnés et je t'envoie ma copie pour correction.
Comme tu peux le voir j'avais oublié un "t" au nom de la variable, donc forcément excel est un peu perdu!
Tu trouveras ci-joint le fichier entier, fini et sans bug.
Si tu as des questions, tu as maintenant l'habitude, n'hésite pas, l'important est de comprendre. Sans compréhension impossible de s'approprier tout cela et de progresser.
Re : macro qui crée un compte de résultat à partir de balance
Hello,
J'ai testé la solution de Gruick, elle ne bug pas! Tu as modifié quelque-chose? Et/ou compris son fonctionnement?
Lorsque la fenêtre s'ouvre, la macro te place sur l'onglet "Balance Annuelle", il te reste plus qu'à cliquer sur la ligne 3 ou 4 sur le nom du mois qui t'intéresse. Et la macro fait le reste.
1/ notre macro fait les 12 mois à chaque fois Inconvénient, elle recalcule TOUS les mois, alors que certains n'ont peut-être pas changé. D'où un p'tit perte de temps (du moins dans l'absolu, car à l'oeil nu, le temps d’exécution est quasi identique). Avantage, tu es sûr de n'oublier aucun mois. Ainsi si tu as oublié que tu avais modifié le mois ..., comme la macro recalcul le compte de résultat de chaque mois, aucun soucis.
2/ la macro de Gruick fait que le mois voulu Avantages, Inconvénients : c'est l'inverse.
Re : macro qui crée un compte de résultat à partir de balance
sON EXCELLENCE,
As-tu remarqué que les comptes de résultats des autres mois se calculent tout seul alors que la balance n'est remplie que pour janvier?
Cela voudrait dire que j'aurai tout le temps les mêmes données sur tous les mois?
Voici ci-joint le fichier corrigé. J'ai profité de l'occasion pour changer la boucle principale : For j = 1 To 12, je trouve cela plus facile à comprendre. Il y a douze mois à traiter, alors on n'effectue la boucle 12 fois.
(même si cela oblige à écrire 2 lignes de codes supplémentaire).
Re : macro qui crée un compte de résultat à partir de balance
Bonjour vous deux,
@l'escargot
Content que tu aies pris mon relais, et approuvé mon petit programme.
En ce qui concerne la bécanne, pour moi, c'est loin, je suis un pépère. Je me suis soigné, et je ne sors la Honda 125 CM que pour aller à Paris, où j'ai toujours été à l'aise. J'ai d'autres amis qui sont plus mordus, un s'est refait une Honda Goldwing 1200 à l'état d'épave, et un autre s'est ruiné pour une Fat Boy de HD.
@Luno123,
Ce serait bien que tu nous dises où ça "déconne", dans la macro, généralement la ligne qui bloque est surlignée en jaune.
Tu es assez sibyllin autant que Excel-lent est précis.
Tes additions intermédiaires ne se calculent pas sur les bonnes colonnes, et ça déconne de février à avril.
Sinon, c'est un bon sujet, ce boulot, je l'ai fait disons "un certain temps", alors j'ai percuté.
Re : macro qui crée un compte de résultat à partir de balance
Bonsoir Gruicl & Excel-lent
OUF je viens de voir mon erreur!!! Dans la macro de Guick, les "é" s'écrivaient "Ž". Du coup par exemple Résultat était écrit "RŽsultat" et Février, "FŽvrier"!
Donc Excel ne comprenait pas! Moi encore moins!!!Peut être problème de compatibilité comme je travaille avec la version EXCEL 2010?