Problème pour diviser avec VBA

  • Initiateur de la discussion Machiavel
  • Date de début
M

Machiavel

Guest
Bonjour le forum,

Je dois donner un grade (A,B,C,D et E) pour chaque étudiant.

Pour cela, j'indique en A1 dans un ordre décroissant la cotes de chaque étudiants (jusque A...) ... correspond au nombre d'étudiant.

Je met à coté de chaque cote un chiffre qui est 1 pour le premier, 2 pour le second...

Ensuite je veux diviser B1 (1) par B48 (si il y'a 48 étudiants), ensuite B2 par B48, ensutie B3 par B48.... jusque B48 par B48 qui me donne 1.

J'ai voulu automatiser tout cela mais quand j'arrive à la division, ça se plante.

Il me dit 'Erreur de syntaxe'

Voici mon code avec son explication :

Sub Grade()

Dim nbreetudiant As Integer

'je sélectionne B1
Range('b1').Select
'va Jusque la première cellule vide
Do Until ActiveCell.Value = ''
ActiveCell.Offset(1, 0).Select
Loop
'je remonte de 1 pour avoir la dernière cellule non vide
ActiveCell.Offset(-1, 0).Select
'je donne la valeur de la cellule active à la variable nbreetudiant
nbreetudiant = ActiveCell.Value
'je séléction C1
Range('c1').Select
'ensuite j'essaie de diviser B1 par B48 mlais là ça se plante !
Range('b1').Value * nbreetudiant
End Sub

Quelqu'un à t'il une idée ?

Si vous avez des suggestions pour améliorer mon code n'hésiter pas.

Merci beaucoup.

Machiavel
 

Creepy

XLDnaute Accro
Hello,

Plusieurs choses :

1 - Deja tu as mis * = multiplication, diviser c'est /

2 - Il faut mettre :
Range('b1').Value = Range('b1').Value / nbreetudiant, en bon francais ca donne la valeur de la cellule B1 est egale à sa valeur divisée par la valeur contenue dans la variable 'nbreetudiant'

3 - Sans vouloir jouer les rabats joies, ton code me parrait super lourd !

Peux tu mettre un petit exemple en PJ, que je puisse te montrer un macro plus 'propre'.

Par exemple pour trouver ta première cellule NON vide tu peux faire :
range('a1').end(xldown).row.

voila

++

Creepy
 

ChTi160

XLDnaute Barbatruc
Bonjour 'Machiavel
bonjour le Fil
Bonjour le Forum
j'avais fait un petit fichier qui corresponds a ce que vous avez dit
code un peu lourd pour peu de choses
division et non pas Multiplication etc
en esperant avoir compris la question je vois que Robert travaille sur la colonne A moi sur la B enfin il devrait y arriver lol
bon je le post quand même
Amicalement
Jean Marie [file name=OperationV1.zip size=7934]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/OperationV1.zip[/file]
 
Dernière édition:

Discussions similaires

  • Question
Microsoft 365 Code VBA
Réponses
2
Affichages
341

Statistiques des forums

Discussions
312 488
Messages
2 088 840
Membres
103 972
dernier inscrit
steeter