Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : URGENT: pb avec un timer [ Archives Visual Basic / J'AI BESOIN D'AIDE !!!! :) ] (cissou06)

mardi 29 juillet 2003 à 14:05:01 | URGENT: pb avec un timer

cissou06

Membre Club
Salut!

Mon interface VB cree des fichiers et je dois detecter l'apparition de chacun d'eux.
Au debut j'ai fait pour un seul en utilisant un timer avec le code suivant (intervalle=100):

Private Sub Timer1_Timer(Index As Integer)
Dim bIsExistFile As Boolean

bIsExistFile = (Dir(path_file& name_file) = "")
'Si bIsExistFile est TRUE, le fichier n'existe pas.

'Désactiver le Timer si le fichier apparait:
If Not bIsExistFile Then
Me.Timer1.Interval = 0
MsgBox " Apparition du fichier!!!"
End If

End Sub
Ce code marchait tres bien mais le pb c'est que je vais avoir plusieurs fichiers dont le nbre est variable: comment faire? plusieurs timers?
Si qq'un peut m'aider c'est cool, merci d'avance!


mardi 29 juillet 2003 à 14:49:15 | Re : URGENT: pb avec un timer

Ickik


bonjour,
j'aurais une petite idee: tu ajoutes un index a tes fichiers en gardant le meme nom (exemple : fichier1, fichier2 ,etc..).
Tu creer un tableau 1 dimension pour donner l'etat du fichier.
tab_etat (1 to X) contenant que des 1 (ou des 0).

dans le timer

for i = 1 to X

if tab_etat(i)=0 and (Dir(path_file& name_file & i) = "") = false then

'si l'etat de la case i du tableau = 0 et que le fichier existe
'alors l'etat de la case i du tableau est a 1 pour indiquer qu'il existe deja
'ça evite qu'il affiche toujours la message box

tab_etat(i)=1
MsgBox " Apparition du fichier!!!"
endif

end for

c'est une solution
a savoir si elle te plait!!!

A+



-------------------------------
Réponse au message :
-------------------------------

> Salut!
>
> Mon interface VB cree des fichiers et je dois detecter l'apparition de chacun d'eux.
> Au debut j'ai fait pour un seul en utilisant un timer avec le code suivant (intervalle=100):
>
> Private Sub Timer1_Timer(Index As Integer)
> Dim bIsExistFile As Boolean
>
> bIsExistFile = (Dir(path_file& name_file) = "")
> 'Si bIsExistFile est TRUE, le fichier n'existe pas.
>
> 'Désactiver le Timer si le fichier apparait:
> If Not bIsExistFile Then
> Me.Timer1.Interval = 0
> MsgBox " Apparition du fichier!!!"
> End If
>
> End Sub
> Ce code marchait tres bien mais le pb c'est que je vais avoir plusieurs fichiers dont le nbre est variable: comment faire? plusieurs timers?
> Si qq'un peut m'aider c'est cool, merci d'avance!
>
>

mardi 29 juillet 2003 à 17:46:29 | Re : URGENT: pb avec un timer

cissou06

Membre Club

Ca a l'air de correspondre a ce que je veux faire, mais peut-on passer des parametres d'entree ( path_file et name_file) au timer (si g bien compris le code que tu m'as propose doit etre mis dans "Private Sub Timer1_Timer()" or il me semble qu'on ne peut pas mettre de parametres d'entree a un truc pareil)?
Merci bcp en tout cas!!!!!!!

-------------------------------
Réponse au message :
-------------------------------

>
> bonjour,
> j'aurais une petite idee: tu ajoutes un index a tes fichiers en gardant le meme nom (exemple : fichier1, fichier2 ,etc..).
> Tu creer un tableau 1 dimension pour donner l'etat du fichier.
> tab_etat (1 to X) contenant que des 1 (ou des 0).
>
> dans le timer
>
> for i = 1 to X
>
> if tab_etat(i)=0 and (Dir(path_file& name_file & i) = "") = false then
>
> 'si l'etat de la case i du tableau = 0 et que le fichier existe
> 'alors l'etat de la case i du tableau est a 1 pour indiquer qu'il existe deja
> 'ça evite qu'il affiche toujours la message box
>
> tab_etat(i)=1
> MsgBox " Apparition du fichier!!!"
> endif
>
> end for
>
> c'est une solution
> a savoir si elle te plait!!!
>
> A+
>
>
>
> -------------------------------
> Réponse au message :
> -------------------------------
>
> > Salut!
> >
> > Mon interface VB cree des fichiers et je dois detecter l'apparition de chacun d'eux.
> > Au debut j'ai fait pour un seul en utilisant un timer avec le code suivant (intervalle=100):
> >
> > Private Sub Timer1_Timer(Index As Integer)
> > Dim bIsExistFile As Boolean
> >
> > bIsExistFile = (Dir(path_file& name_file) = "")
> > 'Si bIsExistFile est TRUE, le fichier n'existe pas.
> >
> > 'Désactiver le Timer si le fichier apparait:
> > If Not bIsExistFile Then
> > Me.Timer1.Interval = 0
> > MsgBox " Apparition du fichier!!!"
> > End If
> >
> > End Sub
> > Ce code marchait tres bien mais le pb c'est que je vais avoir plusieurs fichiers dont le nbre est variable: comment faire? plusieurs timers?
> > Si qq'un peut m'aider c'est cool, merci d'avance!
> >
> >
>

mercredi 30 juillet 2003 à 09:10:20 | Re : URGENT: pb avec un timer

Ickik


bonjour,
alors declare le parametre en variable globale comme le tableau par exemple. Il est claire que le declarer dans la procedure le reinitialiserai toujours.
Les variables globales ne sont pas obligees d'etre declarees en parametre d'une procedure.

Dim tableau (1 to X) as integer

private sub timer1_timer ()
code....
end sub

le tableau sera utilisable dans la procedure ET dans la feuille de ton projet

A+

-------------------------------
Réponse au message :
-------------------------------

>
> Ca a l'air de correspondre a ce que je veux faire, mais peut-on passer des parametres d'entree ( path_file et name_file) au timer (si g bien compris le code que tu m'as propose doit etre mis dans "Private Sub Timer1_Timer()" or il me semble qu'on ne peut pas mettre de parametres d'entree a un truc pareil)?
> Merci bcp en tout cas!!!!!!!
>
> -------------------------------
> Réponse au message :
> -------------------------------
>
> >
> > bonjour,
> > j'aurais une petite idee: tu ajoutes un index a tes fichiers en gardant le meme nom (exemple : fichier1, fichier2 ,etc..).
> > Tu creer un tableau 1 dimension pour donner l'etat du fichier.
> > tab_etat (1 to X) contenant que des 1 (ou des 0).
> >
> > dans le timer
> >
> > for i = 1 to X
> >
> > if tab_etat(i)=0 and (Dir(path_file& name_file & i) = "") = false then
> >
> > 'si l'etat de la case i du tableau = 0 et que le fichier existe
> > 'alors l'etat de la case i du tableau est a 1 pour indiquer qu'il existe deja
> > 'ça evite qu'il affiche toujours la message box
> >
> > tab_etat(i)=1
> > MsgBox " Apparition du fichier!!!"
> > endif
> >
> > end for
> >
> > c'est une solution
> > a savoir si elle te plait!!!
> >
> > A+
> >
> >
> >
> > -------------------------------
> > Réponse au message :
> > -------------------------------
> >
> > > Salut!
> > >
> > > Mon interface VB cree des fichiers et je dois detecter l'apparition de chacun d'eux.
> > > Au debut j'ai fait pour un seul en utilisant un timer avec le code suivant (intervalle=100):
> > >
> > > Private Sub Timer1_Timer(Index As Integer)
> > > Dim bIsExistFile As Boolean
> > >
> > > bIsExistFile = (Dir(path_file& name_file) = "")
> > > 'Si bIsExistFile est TRUE, le fichier n'existe pas.
> > >
> > > 'Désactiver le Timer si le fichier apparait:
> > > If Not bIsExistFile Then
> > > Me.Timer1.Interval = 0
> > > MsgBox " Apparition du fichier!!!"
> > > End If
> > >
> > > End Sub
> > > Ce code marchait tres bien mais le pb c'est que je vais avoir plusieurs fichiers dont le nbre est variable: comment faire? plusieurs timers?
> > > Si qq'un peut m'aider c'est cool, merci d'avance!
> > >
> > >
> >
>

mercredi 30 juillet 2003 à 09:48:30 | Re : URGENT: pb avec un timer

cissou06

Membre Club

Et comment est-ce que je pourrais passer a la fonction du timer les variables path_file et name_file?


-------------------------------
Réponse au message :
-------------------------------

>
> bonjour,
> alors declare le parametre en variable globale comme le tableau par exemple. Il est claire que le declarer dans la procedure le reinitialiserai toujours.
> Les variables globales ne sont pas obligees d'etre declarees en parametre d'une procedure.
>
> Dim tableau (1 to X) as integer
>
> private sub timer1_timer ()
> code....
> end sub
>
> le tableau sera utilisable dans la procedure ET dans la feuille de ton projet
>
> A+
>
> -------------------------------
> Réponse au message :
> -------------------------------
>
> >
> > Ca a l'air de correspondre a ce que je veux faire, mais peut-on passer des parametres d'entree ( path_file et name_file) au timer (si g bien compris le code que tu m'as propose doit etre mis dans "Private Sub Timer1_Timer()" or il me semble qu'on ne peut pas mettre de parametres d'entree a un truc pareil)?
> > Merci bcp en tout cas!!!!!!!
> >
> > -------------------------------
> > Réponse au message :
> > -------------------------------
> >
> > >
> > > bonjour,
> > > j'aurais une petite idee: tu ajoutes un index a tes fichiers en gardant le meme nom (exemple : fichier1, fichier2 ,etc..).
> > > Tu creer un tableau 1 dimension pour donner l'etat du fichier.
> > > tab_etat (1 to X) contenant que des 1 (ou des 0).
> > >
> > > dans le timer
> > >
> > > for i = 1 to X
> > >
> > > if tab_etat(i)=0 and (Dir(path_file& name_file & i) = "") = false then
> > >
> > > 'si l'etat de la case i du tableau = 0 et que le fichier existe
> > > 'alors l'etat de la case i du tableau est a 1 pour indiquer qu'il existe deja
> > > 'ça evite qu'il affiche toujours la message box
> > >
> > > tab_etat(i)=1
> > > MsgBox " Apparition du fichier!!!"
> > > endif
> > >
> > > end for
> > >
> > > c'est une solution
> > > a savoir si elle te plait!!!
> > >
> > > A+
> > >
> > >
> > >
> > > -------------------------------
> > > Réponse au message :
> > > -------------------------------
> > >
> > > > Salut!
> > > >
> > > > Mon interface VB cree des fichiers et je dois detecter l'apparition de chacun d'eux.
> > > > Au debut j'ai fait pour un seul en utilisant un timer avec le code suivant (intervalle=100):
> > > >
> > > > Private Sub Timer1_Timer(Index As Integer)
> > > > Dim bIsExistFile As Boolean
> > > >
> > > > bIsExistFile = (Dir(path_file& name_file) = "")
> > > > 'Si bIsExistFile est TRUE, le fichier n'existe pas.
> > > >
> > > > 'Désactiver le Timer si le fichier apparait:
> > > > If Not bIsExistFile Then
> > > > Me.Timer1.Interval = 0
> > > > MsgBox " Apparition du fichier!!!"
> > > > End If
> > > >
> > > > End Sub
> > > > Ce code marchait tres bien mais le pb c'est que je vais avoir plusieurs fichiers dont le nbre est variable: comment faire? plusieurs timers?
> > > > Si qq'un peut m'aider c'est cool, merci d'avance!
> > > >
> > > >
> > >
> >
>

mercredi 30 juillet 2003 à 10:24:10 | Re : URGENT: pb avec un timer

Ickik


En les declarant variable globale comme pour le tableau
dim path_name, file_name as string

ou si tu connais deja le repertoire, que les fichiers viennent tous du meme repertoire et que les nom de fichiers sont identiques mis a part l'index
tu les ecris directement a la place de path_name et file_name
exemple:
(Dir("C:\mes_fichier" & "\fichier" & i)

A+

-------------------------------
Réponse au message :
-------------------------------

>
> Et comment est-ce que je pourrais passer a la fonction du timer les variables path_file et name_file?
>
>
> -------------------------------
> Réponse au message :
> -------------------------------
>
> >
> > bonjour,
> > alors declare le parametre en variable globale comme le tableau par exemple. Il est claire que le declarer dans la procedure le reinitialiserai toujours.
> > Les variables globales ne sont pas obligees d'etre declarees en parametre d'une procedure.
> >
> > Dim tableau (1 to X) as integer
> >
> > private sub timer1_timer ()
> > code....
> > end sub
> >
> > le tableau sera utilisable dans la procedure ET dans la feuille de ton projet
> >
> > A+
> >
> > -------------------------------
> > Réponse au message :
> > -------------------------------
> >
> > >
> > > Ca a l'air de correspondre a ce que je veux faire, mais peut-on passer des parametres d'entree ( path_file et name_file) au timer (si g bien compris le code que tu m'as propose doit etre mis dans "Private Sub Timer1_Timer()" or il me semble qu'on ne peut pas mettre de parametres d'entree a un truc pareil)?
> > > Merci bcp en tout cas!!!!!!!
> > >
> > > -------------------------------
> > > Réponse au message :
> > > -------------------------------
> > >
> > > >
> > > > bonjour,
> > > > j'aurais une petite idee: tu ajoutes un index a tes fichiers en gardant le meme nom (exemple : fichier1, fichier2 ,etc..).
> > > > Tu creer un tableau 1 dimension pour donner l'etat du fichier.
> > > > tab_etat (1 to X) contenant que des 1 (ou des 0).
> > > >
> > > > dans le timer
> > > >
> > > > for i = 1 to X
> > > >
> > > > if tab_etat(i)=0 and (Dir(path_file& name_file & i) = "") = false then
> > > >
> > > > 'si l'etat de la case i du tableau = 0 et que le fichier existe
> > > > 'alors l'etat de la case i du tableau est a 1 pour indiquer qu'il existe deja
> > > > 'ça evite qu'il affiche toujours la message box
> > > >
> > > > tab_etat(i)=1
> > > > MsgBox " Apparition du fichier!!!"
> > > > endif
> > > >
> > > > end for
> > > >
> > > > c'est une solution
> > > > a savoir si elle te plait!!!
> > > >
> > > > A+
> > > >
> > > >
> > > >
> > > > -------------------------------
> > > > Réponse au message :
> > > > -------------------------------
> > > >
> > > > > Salut!
> > > > >
> > > > > Mon interface VB cree des fichiers et je dois detecter l'apparition de chacun d'eux.
> > > > > Au debut j'ai fait pour un seul en utilisant un timer avec le code suivant (intervalle=100):
> > > > >
> > > > > Private Sub Timer1_Timer(Index As Integer)
> > > > > Dim bIsExistFile As Boolean
> > > > >
> > > > > bIsExistFile = (Dir(path_file& name_file) = "")
> > > > > 'Si bIsExistFile est TRUE, le fichier n'existe pas.
> > > > >
> > > > > 'Désactiver le Timer si le fichier apparait:
> > > > > If Not bIsExistFile Then
> > > > > Me.Timer1.Interval = 0
> > > > > MsgBox " Apparition du fichier!!!"
> > > > > End If
> > > > >
> > > > > End Sub
> > > > > Ce code marchait tres bien mais le pb c'est que je vais avoir plusieurs fichiers dont le nbre est variable: comment faire? plusieurs timers?
> > > > > Si qq'un peut m'aider c'est cool, merci d'avance!
> > > > >
> > > > >
> > > >
> > >
> >
>

mercredi 30 juillet 2003 à 16:04:19 | Re : URGENT: pb avec un timer

cissou06

Membre Club

Je ne m'en sors pas comme ca car il faudrait que j'ai un timer pour chaque fichier...Je continue a reflechir....
Merci de ton aide en tout cas!


-------------------------------
Réponse au message :
-------------------------------

>
> En les declarant variable globale comme pour le tableau
> dim path_name, file_name as string
>
> ou si tu connais deja le repertoire, que les fichiers viennent tous du meme repertoire et que les nom de fichiers sont identiques mis a part l'index
> tu les ecris directement a la place de path_name et file_name
> exemple:
> (Dir("C:\mes_fichier" & "\fichier" & i)
>
> A+
>
> -------------------------------
> Réponse au message :
> -------------------------------
>
> >
> > Et comment est-ce que je pourrais passer a la fonction du timer les variables path_file et name_file?
> >
> >
> > -------------------------------
> > Réponse au message :
> > -------------------------------
> >
> > >
> > > bonjour,
> > > alors declare le parametre en variable globale comme le tableau par exemple. Il est claire que le declarer dans la procedure le reinitialiserai toujours.
> > > Les variables globales ne sont pas obligees d'etre declarees en parametre d'une procedure.
> > >
> > > Dim tableau (1 to X) as integer
> > >
> > > private sub timer1_timer ()
> > > code....
> > > end sub
> > >
> > > le tableau sera utilisable dans la procedure ET dans la feuille de ton projet
> > >
> > > A+
> > >
> > > -------------------------------
> > > Réponse au message :
> > > -------------------------------
> > >
> > > >
> > > > Ca a l'air de correspondre a ce que je veux faire, mais peut-on passer des parametres d'entree ( path_file et name_file) au timer (si g bien compris le code que tu m'as propose doit etre mis dans "Private Sub Timer1_Timer()" or il me semble qu'on ne peut pas mettre de parametres d'entree a un truc pareil)?
> > > > Merci bcp en tout cas!!!!!!!
> > > >
> > > > -------------------------------
> > > > Réponse au message :
> > > > -------------------------------
> > > >
> > > > >
> > > > > bonjour,
> > > > > j'aurais une petite idee: tu ajoutes un index a tes fichiers en gardant le meme nom (exemple : fichier1, fichier2 ,etc..).
> > > > > Tu creer un tableau 1 dimension pour donner l'etat du fichier.
> > > > > tab_etat (1 to X) contenant que des 1 (ou des 0).
> > > > >
> > > > > dans le timer
> > > > >
> > > > > for i = 1 to X
> > > > >
> > > > > if tab_etat(i)=0 and (Dir(path_file& name_file & i) = "") = false then
> > > > >
> > > > > 'si l'etat de la case i du tableau = 0 et que le fichier existe
> > > > > 'alors l'etat de la case i du tableau est a 1 pour indiquer qu'il existe deja
> > > > > 'ça evite qu'il affiche toujours la message box
> > > > >
> > > > > tab_etat(i)=1
> > > > > MsgBox " Apparition du fichier!!!"
> > > > > endif
> > > > >
> > > > > end for
> > > > >
> > > > > c'est une solution
> > > > > a savoir si elle te plait!!!
> > > > >
> > > > > A+
> > > > >
> > > > >
> > > > >
> > > > > -------------------------------
> > > > > Réponse au message :
> > > > > -------------------------------
> > > > >
> > > > > > Salut!
> > > > > >
> > > > > > Mon interface VB cree des fichiers et je dois detecter l'apparition de chacun d'eux.
> > > > > > Au debut j'ai fait pour un seul en utilisant un timer avec le code suivant (intervalle=100):
> > > > > >
> > > > > > Private Sub Timer1_Timer(Index As Integer)
> > > > > > Dim bIsExistFile As Boolean
> > > > > >
> > > > > > bIsExistFile = (Dir(path_file& name_file) = "")
> > > > > > 'Si bIsExistFile est TRUE, le fichier n'existe pas.
> > > > > >
> > > > > > 'Désactiver le Timer si le fichier apparait:
> > > > > > If Not bIsExistFile Then
> > > > > > Me.Timer1.Interval = 0
> > > > > > MsgBox " Apparition du fichier!!!"
> > > > > > End If
> > > > > >
> > > > > > End Sub
> > > > > > Ce code marchait tres bien mais le pb c'est que je vais avoir plusieurs fichiers dont le nbre est variable: comment faire? plusieurs timers?
> > > > > > Si qq'un peut m'aider c'est cool, merci d'avance!
> > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
>



Cette discussion est classé dans : fichier, pb, timer, urgent, bisexistfile


Répondre à ce message

Sujets en rapport avec ce message

urgent!! pb de fichier en vb [ par elisabeth_nov ] bonjour,je voudrais savoir si il est possible de lire un fichier en vb6 et lorsque j'arrive sur une  ligne correspondant a ma recherche quelle soit in urgent pb entre VB et AS400 [ par tremollet ] un developpeur en galèreVoila mon pb! Sous AS400 j'ai créer un Query qui me crée un fichier avec mes champs et les infos a avoir !Ensuite je le recupe pb avec un tableau!!! tres tres urgent [ par nicolas_mendoza ] salutj'ai un ptit pb avec la gestion d'un tableau.je vuex creer un tableua qui contient les lettres suivantes: b,c,ç,d,f,g,h,j,k,l,m,p,q,s,t,v,w,x,zj' tres URGENT??? pb api fction shell [ par nikostaf ] salut, j'ai un pb je veux juste ouvrir un fichier excel pour le visualiser donc le plus simple est d'utiliser un shell. code:Logiciel = "c:\program fi PB VB-EXCEL URGENT [ par samy56 ] salut a tousj'ai un gros pb avec vb excel,en resume je doit aller chercher des information dans des fichier excel via vb et a chaque ouverture de fich trés urgent exécution automatique d'un fichier vbscript [ par abari ] bonjour tout le monde,comment créer un fichier vbscript(.vbs) qui permet d'envoyer autoamtomatiquement un autre fichier doc au début de cahque moissur Pb d'open fichier dans Macro Excel [ par ggsab62 ] Bonsoir,G un pb de macro :Il me semble que l'instruction Open ne fonctionne pas ....ex :Open "c:\test.txt" For Output As #1         Incroyable !!!!!!m pb dev vba [ par mada11 ] Salut à tous, Nous devons réaliser une macro (vba)permettant de découper un fichier mére (Excel ) en plusieurs fichiers filles .le découpage se fait s Urgent Timer et intervalle [ par moi4975 ] salut tous le monde,Voila j'ai mis un intervalle de 226000 millisecondes et mon timer revoit une erreur !!! Comment faut-il faire pour pouvoir decompt Grr Pb ouverture de fichier en VBS [ par 0shii ] Bonjour,j'ai un pb avec l'ouverture de fichier, voici le source de la partie qui m'interresse:srcfile= "C:\eleves"srcfile = Freefileopenfile srcfile f


Nos sponsors

Sondage...

CalendriCode

Octobre 2008
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,42 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.