Michel Grentzinger | 17 Sep 21:26

Déboguage d'un fichier calc

Bonjour,

Dans un fichier Calc contenant des macros, je rencontre des soucis de latence 
de l'ordre de 3 secondes lorsque je modifie la valeur d'une cellule, soit via 
une macro, soit directement.

J'ai déjà posté à ce sujet ici :
http://fr.openoffice.org/servlets/BrowseList?list=users&by=thread&from=2124261
Mon fichier est ici :
http://www.cijoint.fr/cjlink.php?file=cj200809/cijqUALaRM.ods

Ma question est : comment puis-je trouver l'origine de cette lenteur ? Faut-il 
remplir une issue ou existe-t-il un outil qui me permettra de déboguer mon 
fichier ?

Merci pour toute aide à ce sujet ! Avec ce fichier, je dois pouvoir gérer des 
cross avec 600 ou 1000 participants, l'enjeu est de taille pour OOo ;-)

PS : mon fichier gère un ou plusieurs chronomètres, la question de la latence 
est donc primordiale !
--

-- 
Michel Grentzinger
	OpenPGP key ID : B2BAFAFA
		Available on http://www.keyserver.net
Michel Grentzinger | 21 Sep 10:55

Re: Déboguage d'un fichier calc

Le mercredi 17 septembre 2008, Michel Grentzinger a écrit :
> Dans un fichier Calc contenant des macros, je rencontre des soucis de
> latence de l'ordre de 3 secondes lorsque je modifie la valeur d'une
> cellule, soit via une macro, soit directement.
>
> J'ai déjà posté à ce sujet ici :
> http://fr.openoffice.org/servlets/BrowseList?list=users&by=thread&from=2124
>261 Mon fichier est ici :
> http://www.cijoint.fr/cjlink.php?file=cj200809/cijqUALaRM.ods
>
> Ma question est : comment puis-je trouver l'origine de cette lenteur ?
> Faut-il remplir une issue ou existe-t-il un outil qui me permettra de
> déboguer mon fichier ?

Je me permets de ré-itérer ma question car je n'ai pas trouvé de procédures 
(bug, deboguage) à suivre dans de pareils cas.

Merci pour toute aide apportée !
--

-- 
Michel Grentzinger
	OpenPGP key ID : B2BAFAFA
		Available on http://www.keyserver.net
Manuel NAUDIN | 21 Sep 18:30

Re: Déboguage d'un fichier calc

Le 21 septembre 2008 10:55, Michel Grentzinger <mic.grentz <at> online.fr> a écrit :
> Le mercredi 17 septembre 2008, Michel Grentzinger a écrit :
>> Dans un fichier Calc contenant des macros, je rencontre des soucis de
>> latence de l'ordre de 3 secondes lorsque je modifie la valeur d'une
>> cellule, soit via une macro, soit directement.
>>
>> J'ai déjà posté à ce sujet ici :
>> http://fr.openoffice.org/servlets/BrowseList?list=users&by=thread&from=2124
>>261 Mon fichier est ici :
>> http://www.cijoint.fr/cjlink.php?file=cj200809/cijqUALaRM.ods
>>
>> Ma question est : comment puis-je trouver l'origine de cette lenteur ?
>> Faut-il remplir une issue ou existe-t-il un outil qui me permettra de
>> déboguer mon fichier ?

l'éditeur de macros comporte un débogueur intégré.
As tu essayé de l'utiliser ?

>
>
> Je me permets de ré-itérer ma question car je n'ai pas trouvé de procédures
> (bug, deboguage) à suivre dans de pareils cas.

l'aide intégrée propose dans
Macros et programmation > Guides > Débogage d'un programme Basic
une présentation de l'outil de déboguage

>
> Merci pour toute aide apportée !

(Continue reading)

Manuel NAUDIN | 21 Sep 18:52

Re: Déboguage d'un fichier calc

Le 21 septembre 2008 18:30, Manuel NAUDIN <audionuma <at> gmail.com> a écrit :
> Le 21 septembre 2008 10:55, Michel Grentzinger <mic.grentz <at> online.fr> a écrit :
>> Le mercredi 17 septembre 2008, Michel Grentzinger a écrit :
>>> Dans un fichier Calc contenant des macros, je rencontre des soucis de
>>> latence de l'ordre de 3 secondes lorsque je modifie la valeur d'une
>>> cellule, soit via une macro, soit directement.
>>>
>>> J'ai déjà posté à ce sujet ici :
>>> http://fr.openoffice.org/servlets/BrowseList?list=users&by=thread&from=2124
>>>261 Mon fichier est ici :
>>> http://www.cijoint.fr/cjlink.php?file=cj200809/cijqUALaRM.ods
>>>
>>> Ma question est : comment puis-je trouver l'origine de cette lenteur ?
>>> Faut-il remplir une issue ou existe-t-il un outil qui me permettra de
>>> déboguer mon fichier ?
>
> l'éditeur de macros comporte un débogueur intégré.
> As tu essayé de l'utiliser ?
>
>>
>>
>> Je me permets de ré-itérer ma question car je n'ai pas trouvé de procédures
>> (bug, deboguage) à suivre dans de pareils cas.
>
> l'aide intégrée propose dans
> Macros et programmation > Guides > Débogage d'un programme Basic
> une présentation de l'outil de déboguage
>
>>
>> Merci pour toute aide apportée !
(Continue reading)

Michel Grentzinger | 21 Sep 21:51

Re: Déboguage d'un fichier calc

Le dimanche 21 septembre 2008, Manuel NAUDIN a écrit :
> > Quand à trouver où ça coince ... c'est une autre paire de manche.
> > Chez moi, rien que l'ouverture du document est très longue ...
>
> par exemple, dans le module chrono, dans ArriveeCoureur
> oCellule.Value = dTempsCoureur
> et
> oCelluleHeure.Value = dHeureArrivee
> prennent chacune plusieurs secondes à être exécutées ...
> peut-être le rafraîchissement de l'affichage ...

Le problème est plus général que celui des macros : il se produit la même 
chose lorsqu'une cellule est modifiée !

Pour la petite histoire, j'ai développé ce fichier depuis plus d'un an et 
seule la toute première version ne pose pas problème. Pourtant, lors de mes 
tests lors du développement, je ne me souviens pas avoir eu ce problème !

Faut-il remplir une issue ?
--

-- 
Michel Grentzinger
	OpenPGP key ID : B2BAFAFA
		Available on http://www.keyserver.net
Gabriel Jourdain | 22 Sep 05:56
Favicon

Re: Déboguage d'un fichier calc

Le Sunday 21 September 2008 15:51:42 Michel Grentzinger, vous avez écrit :
> Le dimanche 21 septembre 2008, Manuel NAUDIN a écrit :
> > > Quand à trouver où ça coince ... c'est une autre paire de manche.
> > > Chez moi, rien que l'ouverture du document est très longue ...
> >
> > par exemple, dans le module chrono, dans ArriveeCoureur
> > oCellule.Value = dTempsCoureur
> > et
> > oCelluleHeure.Value = dHeureArrivee
> > prennent chacune plusieurs secondes à être exécutées ...
> > peut-être le rafraîchissement de l'affichage ...

J'ai copié la feuille nommée Modèle dans un nouveau classeur ainsi que les 
macro "Chrono" la réponse est instantanée. Deux clics successifs rapide 
affiche le même temps (impossible avec ton fichier).

J'ai tenté de copier une deuxième feuille (3M) la rapidité est identique à 
la précédente. Lors du collage de cette feuille une alerte m'a informé 
que : Un nom de plage existant dans le document cible a dû être changé 
parce qu'il faisait double emploi ! 

J'ai exactement ce même message d'alerte pour toutes les feuilles de 3M à 
3S

je n'ai pas encore trouvé quel est ce nom de plage.

Lorsque je "connecte" la feuille "Liste" aux feuilles de résultat (3M,4M 
etc) j'obtiens directement un ralentissement de près de deux seconde pour 
afficher l'arrivée d'un coureur. On pourrait donc déjà déduire que le 
soucis peut éventuellement venir de là.  
(Continue reading)

Michel Grentzinger | 22 Sep 21:48

Re: Déboguage d'un fichier calc

Le lundi 22 septembre 2008, Gabriel Jourdain a écrit :
> J'ai copié la feuille nommée Modèle dans un nouveau classeur ainsi que les
> macro "Chrono" la réponse est instantanée. Deux clics successifs rapide
> affiche le même temps (impossible avec ton fichier).
>
> J'ai tenté de copier une deuxième feuille (3M) la rapidité est identique à
> la précédente. Lors du collage de cette feuille une alerte m'a informé
> que : Un nom de plage existant dans le document cible a dû être changé
> parce qu'il faisait double emploi !
>
> J'ai exactement ce même message d'alerte pour toutes les feuilles de 3M à
> 3S
>
> je n'ai pas encore trouvé quel est ce nom de plage.

Effectivement, le soucis vient sans doute de ça. En supprimant les zones 
nommées manuellement, j'arrive à avoir le comportement "normal" de la feuille 
çad une latente quasi nulle malgré les milliers de formules !

> Je pense qu'il faudrait séparer différente tâches ; il est tout à fait
> possible de travailler avec un classeur qui ne gère que l'enregistrements
> des arrivées, puis une fois la course terminée actualiser un classeur lié
> à celui-ci pour obtnir les 10 meilleurs classements, les notes, les
> points et toute l'artillerie lourde. Cela permettrait de pouvoir
> enregistrer les arrivées avec précision et ne changerait rien au contenu
> du document final. Et pour finir, je me demande aussi si ce ne serait pas
> possible d' alléger certaines formules, quitte à modifier la structure du
> document?

C'est vrai que ces formules lourdes ne simplifient pas l'évolution du document 
(Continue reading)

Gabriel Jourdain | 23 Sep 04:25
Favicon

Re: Déboguage d'un fichier calc

Le Monday 22 September 2008 15:48:26 Michel Grentzinger, vous avez écrit :
> Le lundi 22 septembre 2008, Gabriel Jourdain a écrit :
> > J'ai copié la feuille nommée Modèle dans un nouveau classeur ainsi
> > que les macro "Chrono" la réponse est instantanée. Deux clics
> > successifs rapide affiche le même temps (impossible avec ton
> > fichier).
> >
> > J'ai tenté de copier une deuxième feuille (3M) la rapidité est
> > identique à la précédente. Lors du collage de cette feuille une
> > alerte m'a informé que : Un nom de plage existant dans le document
> > cible a dû être changé parce qu'il faisait double emploi !
> >
> > J'ai exactement ce même message d'alerte pour toutes les feuilles de
> > 3M à 3S
> >
> > je n'ai pas encore trouvé quel est ce nom de plage.
>
> Effectivement, le soucis vient sans doute de ça. En supprimant les
> zones nommées manuellement, j'arrive à avoir le comportement "normal"
> de la feuille çad une latente quasi nulle malgré les milliers de
> formules !
>

je continue le creusement, et constate avec certitude que c'est la plage 
nommée "ListeDesEleves" qui est à l'origine du pb. 

Elle définit une plage $Liste.$A$7:$O$591

Les formules qui sont en interaction avec cette zone concernent plus 
précisement la zone : $Liste.$A$7:$F$591
(Continue reading)

Gabriel Jourdain | 23 Sep 05:16
Favicon

Re: [resolu et confirmé] Déboguage d'un fichier calc

Le Monday 22 September 2008 22:25:35 Gabriel Jourdain, vous avez écrit :
> Le Monday 22 September 2008 15:48:26 Michel Grentzinger, vous avez 
écrit :
> > Le lundi 22 septembre 2008, Gabriel Jourdain a écrit :
> > > J'ai copié la feuille nommée Modèle dans un nouveau classeur ainsi
> > > que les macro "Chrono" la réponse est instantanée. Deux clics
> > > successifs rapide affiche le même temps (impossible avec ton
> > > fichier).
> > >
> > > J'ai tenté de copier une deuxième feuille (3M) la rapidité est
> > > identique à la précédente. Lors du collage de cette feuille une
> > > alerte m'a informé que : Un nom de plage existant dans le document
> > > cible a dû être changé parce qu'il faisait double emploi !
> > >
> > > J'ai exactement ce même message d'alerte pour toutes les feuilles
> > > de 3M à 3S
> > >
> > > je n'ai pas encore trouvé quel est ce nom de plage.
> >
> > Effectivement, le soucis vient sans doute de ça. En supprimant les
> > zones nommées manuellement, j'arrive à avoir le comportement "normal"
> > de la feuille çad une latente quasi nulle malgré les milliers de
> > formules !
>
> je continue le creusement, et constate avec certitude que c'est la
> plage nommée "ListeDesEleves" qui est à l'origine du pb.
>
> Elle définit une plage $Liste.$A$7:$O$591
>
> Les formules qui sont en interaction avec cette zone concernent plus
(Continue reading)

Michel Grentzinger | 24 Sep 14:23

Re: [resolu et confirmé] Déboguage d'un fichier calc

Le mardi 23 septembre 2008, Gabriel Jourdain a écrit :
> Je viens de passer en revue toutes les feuilles et je confirme qu'il faut
> assigner la plage nommée "ListeDesEleves" à : $Liste.$A$7:$H$591
>
> Dans ma précédente réponse je faisais référence à la plage A7:F591 (avec
> les $ qui vont bien) mais en passant en revue toutes les feuille j'ai
> constaté que la feuille "Absents et inaptes" faisait référence à la
> colonne H de la feuille Liste. Il faut donc étendre la
> zone "ListeDesEleves" à : $Liste.$A$7:$H$591 et le soit disant bug
> disparait réellement.
>
> Pour preuve j'ai re-téléchargé le fichier à partir du lien :
>
> http://www.cijoint.fr/cjlink.php?file=cj200809/cijqUALaRM.ods
>
> ouvert et renommé. Menus/Insertion/Noms/Définir sélection dans la liste la
> zone nommée "ListeDesEleves" modification de la zone de dialogue "Assigné
> à" en :  $Liste.$A$7:$H$591
>
> Maintenant il faut se plonger dans les colonnes J,K,l,M,N,O de la
> feuille "Liste" pour y découvrir une cause.

Je n'ai qu'un mot : MERCi !
Je vais pouvoir ré-utiliser cette feuille de calcul et continuer à développer 
la chose !!

Je vais regarder ça de plus près et chercher l'origine dans les colonnes 
incriminées !

Merci encore pour le travail de déboguage !!
(Continue reading)


Gmane