begin process at 2008 08 22 02:23:28
1 229 747 membres
19 nouveaux aujourd'hui
14 267 membres club

Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum.
Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

DATE/HEURE DEBUT ET FIN DE TRAITEMENT D'UNE FEUILLE DE CALCUL


Information sur le tutorial

Catégorie :Date & Heure Date de création : 06/09/2006 14:32:40 Vu : 8 795 fois

Note :
3 / 10 - par 2 personnes
3,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10

Commentaire sur cette source (3)
Ajouter un commentaire et/ou une note

Description

Le code détermine la date/heure du début du traitement et la date/heure de la fin du traitement de la feuille de calcul  EXCEL.
Effectuez d'abord un traitement partiel de votre document. Supposons un documents où les données sont traitées colonne par colonne et que le traitement est identique pour toutes les données du tableau, faire un traitement sur la première colonne en y insérant les lignes de codes notées "TEST".

Tutorial

Le code associé à une formule cellule détermine la date/heure du début du traitement et la date/heure de la fin du traitement de la feuille de calcul  EXCEL.
Effectuez d'abord un traitement partiel de votre document. Supposons un documents où les données sont traitées colonne par colonne et que le traitement est identique pour toutes les données du tableau, faire un traitement sur la première colonne en y insérant les lignes de codes notées "TEST".

TEST


Mettre cette ligne de code au début de votre boucle de traitement :

DébutChrono = Now    ' Affecte la variable "DébutChrono" de la Date/Heure système

    Lignes de code pour le traitement

Mettre ces lignes de code en fin de boucle de traitement de la première colonne :

FinChrono = Now - DébutChrono
Worksheets("Sortie_Non Sortie").Cells(Lignex1 , 6).Value = FinChrono

Pour l'exemple ci-dessous, FinChrono = 00:00:30

Un petit produit en croix et nous pouvons en déduire que :

4422 / 30 = 147,4

Vous avez maintenant votre référence pour la formule
de la cellule (Voir ci-dessous).

Fin de TEST
-----------------------------------------------------------
Cellule contenant la variable déterminé par des lignes de codes :
    4422

Ex:  ='Global rangé'!R2          'Nombre lignes référence

Ligne de code à insérer dans votre module de l'éditeur VBA:

 ' inscrit la date courante dans la cellule voulue
 ' "DEBUT TRAITEMENT"

Worksheets("Sortie_Non Sortie").Cells(Lignex1, 6).Value = _
CDate(FormatDateTime(Now, vbLongTime))


Dans la feuille de calcul, mettre cette formule dans une cellule ou une autre feuille de calcul qui correspondra à "FIN TRAITEMENT":

=F4437+((1 / 1440 / 60) * ((E4435 * 49) / 147,4))

- F4437 fait référence à l'heure "DEBUT TRAITEMENT".
- E4435fait référence à la variable 4422.
- 49
correspond au nombre de colonne contenant les données.
- 147,4 correspond au nombre de ligne traitées en 1 seconde.

Résultat :

DEBUT TRAITEMENT
  13:34:48
  13:59:12
  FIN  TRAITEMENT


Bien entendu, tout ceci n'est qu'approximatif, mais celà vous
donne une plage horaire pour vous permettre d'aller
boire un café !

J'espère avoir été assez clair; désolé pour la mise en forme,
mais je débute dans le " métier "...

06 septembre 2006 14:45:26 :
Mauvaise mise en page, désolé mais je débute sur ce site.
  • signaler à un administrateur
    Commentaire de econs le 07/09/2006 00:28:28 administrateur CS

    D'où sortent les nombres LigneX, 6, 4422, 1440, 49 ?
    Sorti de son contexte, ce tutoriel ne sert à rien.
    Peux-tu préciser à quoi çà sert STP ?

  • signaler à un administrateur
    Commentaire de econs le 07/09/2006 00:29:07 administrateur CS

    De plus, un tutoriel se veut générique. Trop de chiffres le rendront spécifique.

  • signaler à un administrateur
    Commentaire de mortalino le 13/11/2006 03:30:27

    Heu j'ai pas trop compris ton tuto : a quoi sert-il ?
    C'est pour prévoir une fin de traitement d'une procédure ??

    Si oui, tout est faux, pour la simple et bonne raisson que c'est imprévisible.
    Surtout, si pendant l'exécution de la dite boucle, je ne vais pas boire un café, mais ouvrir 3 ou 4 applications simultanément.
    Ton code sera fortement ralenti.

    Pour un traitement long, il est encore préférable, de faire afficher un ProgressBar.

    Et je rejoins aussi Manu pour ces remarques, surtout celle où il dit "D'où sortent les nombres LigneX, 6, 4422, 1440, 49 ?"
    Tu aurais du faire, comme une dissertation :
    * déjà une bonne intro : pour dire ce que fait ton tuto (car là c'est très vague)
    * Ensuite une explication sans chiffre
    * et seulement à partir de là, un exemple.
    * Enfin, une bonne conclusion.

    Je suis suffisamment utilisateur de vba excel pour dire qu'aujourd'hui, une procédure va durer par exemple 30 minutes, et demain 25 (ou 35, ou autres).
    Comme je le disais, tout dépend de l'utilisation du pc pendant le traitement de la procédure.
    Et encore, là c'est 30 minutes que j'ai mis comme exemple, mais si la tâches dure plusieurs heures, c'est plus 5 minutes de différences que tu auras, mais bien plus.

    Ah et pour finir, tu as mis :
    >Mettre cette ligne de code au début de votre boucle de traitement :

    >DébutChrono = Now

    commence déjà par déclarer tes variables. (et hop, 1 seconde de gagner)

Ajouter un commentaire

Pub



Appels d'offres

CalendriCode

Août 2008
LMMJVSD
    123
45678910
11121314151617
18192021222324
25262728293031

VS Express FR Gratuit !

VS Express en français et 100% gratuit !

Boutique

Boutique de goodies CodeS-SourceS