Le 07/12/2015 12:50, Michel Rudelle a écrit :
Bonjour Claude
-----Message d'origine-----
De : claude [mailto:pref-open-office@haute-garonne.gouv.fr]
Envoyé : lundi 7 décembre 2015 10:51
À : libreoffice
Objet : [fr-users] Macro: debug
Bonjour,
J'ai un problème avec une macro qui fonctionne bien en version 4.1.6
mais qui en 4.3.4 modifie les coordonnées de certaines plages nommées.
Désolée, je ne peux publier le fichier ce serait trop compliqué de le
rendre anonyme. Et bien sur, je n'ai aucune possibilité de changer les
versions des postes de travail.
j'ai ajouté une variable qui contient l'adresse d'une plage incriminée
mais c'est extrêmement long de débugger en pas à pas.  Par contre,
existe-il un moyen de paramétrer le debug de façon à ce que l’exécution
s'arrête lorsque la variable est modifiée ?
Je ne connais pas de fonctionnalité faisant ça tout seul (mais je ne connais
pas tout).
J'imagine une solution un peu plus rapide que le pas à pas. Puisque tu
connais l'adresse initiale qui normalement ne devrait pas changer en cours
de programme:
1/ Mémoriser cette donnée initiale dans une autre variable
2/ créer une procédure de test qui lira l'adresse de la zone et la comparera
à la donnée initiale.
3/ dans cette procédure, faire le test de façon à ne passer sur une ligne
quelconque qu'en cas de modification - ligne sur laquelle tu mettras un
point d'arrêt.
4/ parsemer ton programme d'appels récurrents à cette procédure. Par
dichotomie tu devrais pourvoir isoler la partie du programme incriminée.
Cordialement,
Michel
Bonjour,
Il me semble qu'on peut réaliser ça avec les points d'arrêts.
En mettant le curseur au début de la ligne de code à examiner, on place 
un point d'arrêt
soit par le bouton (Dés)Activer au-dessus de l'éditeur, soit par 
double-clic devant la ligne.
Un point marquera la ligne.
En lançant l'exécution, le code sera exécuté jusqu'à ce point d'arrêt.
On peut ensuite arrêter l'exécution du  code, ou poursuivre, voire se 
mettre en pas à pas à partir de ce point.
Il y a les boutons nécessaires à ça.
On enlève le ou les points d'arrêt aussi facilement qu'on les a mis, 
soit par le bouton adéquat, soit par double-clic.
Si on a mis de quoi examiner les variables avant le point d'arrêt, on a 
un moyen pratique
de connaître à tout moment l'état du code à cet endroit.
Cordialement,
Jacques
---
L'absence de virus dans ce courrier électronique a été vérifiée par le logiciel antivirus Avast.
https://www.avast.com/antivirus
--
Envoyez un mail à users+unsubscribe@fr.libreoffice.org pour savoir comment vous désinscrire
Les archives de la liste sont disponibles à http://listarchives.libreoffice.org/fr/users/
Tous les messages envoyés sur cette liste seront archivés publiquement et ne pourront pas être 
supprimés
Context
   
 
  Privacy Policy |
  
Impressum (Legal Info) |
  
Copyright information: Unless otherwise specified, all text and images
  on this website are licensed under the
  
Creative Commons Attribution-Share Alike 3.0 License.
  This does not include the source code of LibreOffice, which is
  licensed under the Mozilla Public License (
MPLv2).
  "LibreOffice" and "The Document Foundation" are
  registered trademarks of their corresponding registered owners or are
  in actual use as trademarks in one or more countries. Their respective
  logos and icons are also subject to international copyright laws. Use
  thereof is explained in our 
trademark policy.