Comment gérer des tâches Tasks à nom variables ?

Résolu
iBenny Messages postés 103 Statut Membre -  
 iBenny -
Bonjour à vous,

Comment peut-on faire pour utiliser l'instruction Tasks pour trouver une tâche dont le nom varie partiellement ?

Cela s'applique pour:
if tasks.exist("nomdelatâche") then
   Tasks("nomdelatâche").activate
endif


Mon "nomdelatâche" débute par une partie variable et se termine par le nom du programme :

nomdelatâche = "variable - programme"

Existe-t-il une façon de traiter ce cas ?

Merci d'avance pour votre aide
iBenny

Configuration: Windows / Firefox 68.9
A voir également:

3 réponses

yg_be Messages postés 24281 Statut Contributeur Ambassadeur 1 584
 
bonjour,
peux-tu donner un exemple?
comment la partie variable est-elle déterminée? ou bien est-elle inconnue?
peux-tu aussi montrer un code un peu plus complet, avec la déclaration de, et l'assignation à, la variable tasks?
0
iBenny Messages postés 103 Statut Membre 2
 
Bonjour

Sub Irfanview()

Dim nomdelatâche as string

if tasks.exist("nomdelatâche") then
   Tasks("nomdelatâche").activate
endif
end sub


La tâche est reliée au programme IrfanView.

La tâche corresponds au libellé de sa barre de titre qui finit généralement par "- Irfanview" mais précédé par le nom du fichier qui est variable.

Quand un zoom est appliqué, le paramètre du zoom est ajouté en fin de titre, donc au nom de la tâche.

On peut donc avoir :

1- "[chemin]/nom de fichier - IrfanView"
2- "[chemin] nom de fichier - IrfanView (Zoom: X x Y)"

J'ai essayé:

nomdelatâche = "*IrfanView" et "*IrfanView"" sans succès.

Merci de votre intérêt
iBenny
0
yg_be Messages postés 24281 Statut Contributeur 1 584
 
peux-tu montrer un code un peu plus complet, avec la déclaration de, et l'assignation à, la variable tasks?

veux-tu dire que la partie variable est inconnue, et que tu recherche n'importe quelle "task" ayant un nom se terminant par la partie variable?

c'est
tasks
ou
Tasks
?
0
iBenny Messages postés 103 Statut Membre 2
 
Inutile pour les fins de ma requête. TOUTES les infos pertinentes sont incluses.

Sub Irfanview()

if tasks.exist("nomdelatâche") then
   Tasks("nomdelatâche").activate
endif
end sub


Je veux remplacer "nomdelatâche" par un texte adéquat.

Je vais re-tester mon nomdelatâche = "*IrfanView" et "*IrfanView"" et revenir là-dessus.
C'est re-testé et... invalide.

Salutations
iBenny
0
yg_be Messages postés 24281 Statut Contributeur 1 584
 
quel logiciel utilises-tu?
quel langage?
0
iBenny Messages postés 103 Statut Membre 2 > yg_be Messages postés 24281 Statut Contributeur
 
Word 2003 - VBA
IrfanView
Windows 10
0
yg_be Messages postés 24281 Statut Contributeur 1 584 > yg_be Messages postés 24281 Statut Contributeur
 
si jamais tu fais du VBA dans Word,
tu pourrais faire ainsi:
Dim t As Task
For Each t In Tasks
    If t.Name Like "*IrfanView" Then
        t.activate
        exit for
    End If
Next t    
0
iBenny Messages postés 103 Statut Membre 2 > yg_be Messages postés 24281 Statut Contributeur
 
J'ai dû me résoudre à qqe chose de similaire. Mais je me demandais si des programmeurs plus chevronnés que moi avait la réponse à ma question sans utiliser cet artifice ; )
0
yg_be Messages postés 24281 Statut Contributeur 1 584 > iBenny Messages postés 103 Statut Membre
 
il aurait été préférable que tu expliques tout cela dès le départ.
0