13 messages in org.openoffice.fr.progRe: [prog] mise à jour de liens
FromSent OnAttachments
manu-vero.stephantAug 15, 2006 4:10 am 
Laurent CostyAug 16, 2006 4:53 am 
Laurent CostyAug 16, 2006 5:01 am 
Laurent CostyAug 23, 2006 2:53 am 
Bernard MarcellyAug 23, 2006 5:29 am 
Laurent CostyAug 23, 2006 6:02 am 
Bernard MarcellyAug 23, 2006 7:02 am 
Laurent CostyAug 23, 2006 7:58 am 
Laurent CostyAug 24, 2006 6:06 am 
Bernard MarcellyAug 24, 2006 7:58 am 
Laurent CostyAug 24, 2006 9:13 am 
Laurent CostyAug 25, 2006 6:21 am 
Bernard MarcellyAug 25, 2006 7:51 am 
Actions with this message:
Paste this link in email or IM:
Paste this link in email or IM:
Atom feed for this thread
Paste this URL into your reader:
Subject:Re: [prog] mise à jour de liensActions...
From:Laurent Costy (laur@planete-sciences.org)
Date:Aug 25, 2006 6:21:47 am
List:org.openoffice.fr.prog

Bonjour,

j'ai voulu rajouté une barre de statut car la mise à jour est relativement longue (40 secondes). J'ai fait tout comme c'est marqué dans le livre p598 (Livre OOo 1.5 mais je travaille sous la 2.0) mais, même si tout fonctionne, à aucun moment des carrés bleus apparaissent et s'ajoutent dans la barre de statut qui affiche bien le message...

Comment cela se fait-il ? Que dois-je faire pour voir apparaître et avancer les carrés ? (j'ai enlevé la boucle de l'exemple qui, selon le texte, est à remplacer par le programme.

Merci à vous.

Sub MettreAjourTousLiens 'Mise à jour de tous les liens (sans mettre à jour les tableaux de synthèse) dim monCalc as object dim avance as object monCalc = thisComponent monCalc.lockControllers avance = monCalc.Currentcontroller.StatusIndicator avance.start("Attendez svp, je cherche désespérément le turbo et j'effectue une mise à jour des" &_ " liens avec l'ensemble des exploitations...", 100) '100 est la valeur max pour afficher 'la barre de progression MajLiens(monCalc.DDELinks) MajLiens(monCalc.AreaLinks) MajLiens(monCalc.SheetLinks) avance.Text = "Mise à jour effectuée !" wait 2000 avance.end 'fait disparaître la barre de progression qui a été affichée 'MsgBox("Mise à jour effectuée") monCalc.unlockControllers End Sub

J'apprends tous les jours ;) Il y a différents types de liens: - lien DDE (par copier/coller DDE d'une cellule d'un autre classeur) - lien d'une zone de cellules d'un autre classeur - lien d'un feuille d'un autre classeur - lien hypertexte (mais c'est un autre sujet). Il faut donc mettre à jour chacun des 3 premiers types de liens.

Sub MettreAjourTousLiens dim monCalc as object monCalc = thisComponent MajLiens(monCalc.DDELinks) MajLiens(monCalc.AreaLinks) MajLiens(monCalc.SheetLinks) MsgBox("Mise à jour effectuée") End Sub

Sub MajLiens(conteneurLiens) dim unLien As Object, n as long for n = 0 to conteneurLiens.Count -1 unLien = conteneurLiens(n) unLien.refresh next End Sub

Cela marche que le document lié soit préalablement ouvert ou non. Bernard