[VB6] ProgressBar

Résolu
Bonjour,

j'ai un probléme avec ma progressbar qui, lorsqu'elle ce termine,bug avec comme erreur :
"
Erreur d'exécution '380':

Valeur de propriété non valide
"


Mon code :

'Affichage de la barre de progression
With ProgBarre
    .ShowBar saisie
    .Refresh
    .Label1.Caption = "Traitement en cours ..."
End With

'initialisation de la barre de progression
pourcentage = 100 / (nb)   ' nb =~ 10 000 
j = 0

Do Until f.AtEndOfStream


'des traitement ...


'on met a jour la barre de progression
    ProgBarre.ProgressBar1.Value = j * pourcentage
    j = j + 1
Loop

'on enleve la barre de progression
Unload ProgBarre


Une petite idée quelqu'un ?
Merci d'avance



--
Dans tout les tiek's ca chuchotte

2 réponses

  1. Après de multiples tentatives le probléme viendrai de mon :
    "
    pourcentage = 100 / nb
    "

    mon nb vaut 9870 exactement.
    Si je tape a la calculette 100/ 9870 j'obtiens 0.01013171...
    alors que dans mon programme celui ci met la valeur : 0.0102249 ... dans ma variable pourcentage !!
    Ce qui fait que " ProgBarre.ProgressBar1.Value " prend une valeur supérieur à 100 avant la fin du traitement, est plante...

    Si quelqu'un a une quelconque idée je suis preneur ...

    PS : pourcentage est un double
    0
    1. Contributeur
      Bonjour,
      Peut-être en testant avant ?
      Dim B as Single
      'on met a jour la barre de progression
          B = j * pourcentage : if B > 100 then B=100
          ProgBarre.ProgressBar1.Value = B
          j = j + 1

      Autre solution
      'on met a jour la barre de progression
          ProgBarre.ProgressBar1.Value = Int(j * pourcentage)
          j = j + 1

      A+
      0