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

Résolu
iBenny Messages postés 96 Date d'inscription   Statut Membre Dernière intervention   -  
 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

3 réponses

yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   Ambassadeur 1 583
 
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 96 Date d'inscription   Statut Membre Dernière intervention   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 23541 Date d'inscription   Statut Contributeur Dernière intervention   1 583
 
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 96 Date d'inscription   Statut Membre Dernière intervention   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 23541 Date d'inscription   Statut Contributeur Dernière intervention   1 583
 
quel logiciel utilises-tu?
quel langage?
0
iBenny Messages postés 96 Date d'inscription   Statut Membre Dernière intervention   2 > yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention  
 
Word 2003 - VBA
IrfanView
Windows 10
0
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   1 583 > yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention  
 
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 96 Date d'inscription   Statut Membre Dernière intervention   2 > yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention  
 
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 23541 Date d'inscription   Statut Contributeur Dernière intervention   1 583 > iBenny Messages postés 96 Date d'inscription   Statut Membre Dernière intervention  
 
il aurait été préférable que tu expliques tout cela dès le départ.
0