VBA petits soucis avec les compteurs

Bonjour le forum

La"Vbaiste" en herbe progresse mais a besoin de votre aide pour 2 procédures

1) ne donne rien !

Private Sub Compteur()'???

For Compteur = 1 To 5

Range("G1").Formula = Compteur

Next

End Sub

2) pas à pas ok mais ne se lance pas ? et l'intruction if Range("A3") = 4 then i =0 est inopérante ??

Private Sub Worksheets_Calculate()''???

If Range("G1") = 1 Then

For i = 0 To 4

Cells(1, i + 1).Value = 2006 + i

Range("A3").Formula = i

Next i

If Range("A3") = 4 Then i = 0'???

End If

End Sub

merci de votre aide

Bisous

Cordialement

Muriel

Bonjour

trop peu d'explications sur ce qui est recherché pour pouvoir donner une solution

cas 2 : l'instruction If Range("A3") = 4 Then i = 0 ne sert à rien ici. Qu'est ce qui est à faire ?

Bonjour

Chat a écrit :

Private Sub Worksheets_Calculate()

Essayes

Private Sub Worksheet_Calculate()

Sans le S à Worksheet

Chat a écrit :

Private Sub Compteur()'???

For Compteur = 1 To 5

Range("G1").Formula = Compteur

Next

End Sub

N'utilises pas le même nom pour le nom de la macro et le nom d'une variable : Ambiguïté

Re,

Effectivement Banzai.

J'avais déjà fait remarquer cela sur une autre fil du même sujet d'ailleurs. Le code corrigé n'est d'ailleurs pas dans ce fichier.

Bonjour Dan

Pas vu

Double réponse

Bonjour Muriel <3

Voilà fichier avec la 2eme procédure qui fonctionne lors d'un recalcule de la feuille.

Lorsque tu dis que le "l'instruction If Range("A3") = 4 Then i = 0 ne sert à rien ici", tu parles de remettre la cellule A3 à 0 ? Si c'est cela, c'est vite arrangé, mais je ne vois plus l'interet d'afficher la cellule. Si tu parles de remettre la variable à 0, oui cette ligne ne sert à rien car tu remets déjà i à 0 lors de ta boucle FOR.

Pour la première procédure, outre le fait de donner un nom de variable identique à la procédure comme le souligne banzai64, quand veux-tu ou en résultat de quoi, doit-elle se lancer ? Car la, si je comprends bien, cela va incrémenter G1 mais du coup G1 n'étant plus à 1, l'autre procédure ne se lancera plus ?

Re

Zirak,

Lorsque tu dis que le "l'instruction If Range("A3") = 4 Then i = 0 ne sert à rien ici", tu parles de remettre la cellule A3 à 0 ? Si c'est cela, c'est vite arrangé, mais je ne vois plus l'interet d'afficher la cellule. Si tu parles de remettre la variable à 0, oui cette ligne ne sert à rien car tu remets déjà i à 0 lors de ta boucle FOR.

C'est pas Muriel qui dit cela mais moi dans mon post.

En gros la demande de départ n'est pas claire. D'une manière générale, à quoi bon charger un forum avec des fichiers si la demande n'est pas précise sur ce qui est recherché et si l'on ne connait pas la finalité d'un projet.

Bonjour à tous

Merci de vos messages

Alors ainsi je dois tout dire (tout dévoiler ?) il Paraît que je ne suis pas claire c'est vrai que le matin je picole pas mal

1) J'aurai du en effet préciser que les 2 procedures ne sont pas sur la mm feuille Sorry

2) Par contre pour la procédure qui suit il y avait un fichier, et il me semblait que mon texte était assez clair pour dire que l'objectif de la procédure était de réaliser une en tête de 5 ans (visible sur le fichier) que la procédure ne se declenchait pas, qu'elle était valide pas à pas, que la mise à zero du compteur (i) ne s'effectuait pas en fin de procédure.

Pour la mise à zéro du compteur en fin de procédure elle peut se comprendre dès lors que le compteur reste à 4 alors que s'il est à 0 cela signifie pour d'autres procedures que la présente procedure à (bien été ou déja effectuée)

je joints à nouveau le fichier avec retouches

Bisous les experts de new...? -->Excel_Pratique

Promis je vais réduire ma consom de thé le matin

Private Sub Worksheets_Calculate()

If Range("G1") = 1 Then

For i = 0 To 4

Cells(1, i + 1).Value = 2006 + i

Range("A3").Formula = i

Next i

If Range("A3") = 4 Then i = 0

End If

End Sub

Cordialement

Muriel

Ah par contre Muriel, ta remise à 0 de ton i en fin de procédure n'a pas d'impact car tu es dans une procédure Private, donc la valeur de i n'impact pas dans les autres procédures, il faut le déclarer en variable publique à ce moment la, sinon à chaque fin de procédure sa valeur est perdue.

Bon sinon maintenant la 2eme procédure s'effectue bie nsur le calculate, donc cela c'est réglé.

Pour la première procédure, je testerais ce soir si j'ai le temps mais je ne vois toujours pas trop ce que tu veux en faire, et donc quoi y apporter. Au pire si tu peux faire un topo plus détaillé ici ou en message privé stp.

Re,

alors même fichier que le premier posté. Donc mêmes erreurs

Chat, je n'ai pas l'impression que tu lis ce que l'on te donne comme réponses.

Des corrections avaient été données par Banzai sur ce fil et par moi même sur le fil précédent.

Zirak, le calculate ne fonctionnera jamais comme c'est écrit là et tu ne fais qu'écrire ce que j'ai déjà dit avant. Et un message en privé ne sert pas l'intérêt du forum.

On reste toujours sans comprendre et pour ma part je laisse tomber.

A bientôt

Re les "bos"

Hi hi hi m'en suis sortie toute seule pouet pouet

Enfin beaucoup grace à vous bisous mon préféré....

Banzai => qu'elle étourdie je suis pour le s de worksheet c'est nul bisous

Dan je te fais un tit poéme => bisous

Voici le chef d'oeuvre, je trouve qu'il y a beaucoup de end if : M'enfin on fait ça qu'on peut

Encore une paire de Cinquante ans et les "bos" je vous donne assistance à vos problèmes ptdr

Private Sub Worksheet_Calculate()

If Range("G1") = 1 Then

For i = 0 To 4

Cells(1, i + 1).Value = 2006 + i

Range("A3").Formula = i

Next i

If Range("A3") = 4 Then

Range("A3").Value = 0

End If

End If

If Range("A3") = 0 Then

Dim j As Integer

For j = 1 To 5

Range("G2").Formula = j

If j = 4 Then

Range("G4").Value = 1 'G4=1 informe une autre procèdure

End If

Next

End If

End Sub

Merci à tous

bisous bisous

cordialement

Muriel

-- 01 Juin 2011, 19:39 --

Re Dan

Dsl pour avoir envoyé le mm fichier par erreur ( tu as pu remarquer combien je suis étourdie !)

Le dernier devrait te satisfaire ???

Sincérement tu ne peux pas dire que je ne lis pas ce qu'on m'écris ici, si je progresse c'est bien à la lecture des messages du site et tu serais sans doute étonné du temps que j'y passe depuis un mois.

Par contre je te trouve bien injuste envers Z.... qui est un aidant absolument serviable/sympa comme beaucoup ici et qui preuve à l'appui sur le site défend remarquablement bien les intérêts du site.

Enfin pour rire un peu voici mon horible poéme

---Mod tu sais Mod---

T'as de beaux yeux Mod

Même si t'es pas tj commode

Tu sais, Je m'en accomode

Mais stp reste à la mode

bisous

et stp ne me laisse pas tomber suis si fragile

cordialement

Muriel

Rechercher des sujets similaires à "vba petits soucis compteurs"