Modifier l'extraction d'un fichier par VBA

Résolu
loic20h28 Messages postés 207 Date d'inscription mardi 19 juin 2007 Statut Membre Dernière intervention 22 février 2016 - 20 juin 2007 à 09:33
loic20h28 Messages postés 207 Date d'inscription mardi 19 juin 2007 Statut Membre Dernière intervention 22 février 2016 - 21 juin 2007 à 08:30
bonjour @ tous,

voila j'ai un formulaire sous access avec un bouton dont j'aimerais
qu'il exécute le changement d'extraction de fichier c'est à dire que je
souhaiterait qu'en appuyant sur mon bouton l'extraction d'un fichier
change,par exemple :

toto.Lso devienne toto.txt

donc tout d'abord es-ce possible??

si oui, quel commande permet-il de faire cela??


merci d'avance pour votre aide!!

33 réponses

Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 71
20 juin 2007 à 09:40
ben tu peux le renommer après coup...

Name "...\toto.lso" As "...\toto.txt"

Renfield
Admin CodeS-SourceS- MVP Visual Basic
3
loic20h28 Messages postés 207 Date d'inscription mardi 19 juin 2007 Statut Membre Dernière intervention 22 février 2016 2
20 juin 2007 à 09:42
comment ca aprés coup??

merci pour ton aide!!
3
mortalino Messages postés 6786 Date d'inscription vendredi 16 décembre 2005 Statut Membre Dernière intervention 21 décembre 2011 17
20 juin 2007 à 09:42
Et pas extraction mais extension !

@++

(
3
loic20h28 Messages postés 207 Date d'inscription mardi 19 juin 2007 Statut Membre Dernière intervention 22 février 2016 2
20 juin 2007 à 09:51
oui, je sait, on vient de me le dire
3

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
loic20h28 Messages postés 207 Date d'inscription mardi 19 juin 2007 Statut Membre Dernière intervention 22 février 2016 2
20 juin 2007 à 10:17
    If Dir("X:\Comptes Utilisateurs\stagebeluc\Loïc\ipms_icxs_pves_epms_iens_fab_naz.ls0") = "ipms_icxs_pves_epms_iens_fab_naz.ls0" Then
        FileCopy "X:\Comptes Utilisateurs\stagebeluc\Loïc\ipms_icxs_pves_epms_iens_fab_naz.ls0", "X:\Comptes     Utilisateurs\stagebeluc\Loïc\ipms_icxs_pves_epms_iens_fab_naz.txt"
     End If

voila j'ai réussi à l'effectuer mais je voudrais pouvoir le faire pour plusieurs fichiers, es-ce possible ou suis-je à chaque fois obligé de mettre le IF??
3
jrivet Messages postés 7393 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
20 juin 2007 à 10:23
Salut,
Si tout les fichiers à renommer sont au même endroit, fait une boucle sur tout les fichiers du répertoire.

@+: Ju£i?n
Pensez: Réponse acceptée
3
loic20h28 Messages postés 207 Date d'inscription mardi 19 juin 2007 Statut Membre Dernière intervention 22 février 2016 2
20 juin 2007 à 10:25
donc jrivet, tu dit que je devrais faire :
Tant qu'il y a des fichies .ls0 dans dossier alors copier puis modifier le noms sinon rien faire.
C ca??
3
jrivet Messages postés 7393 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
20 juin 2007 à 10:31
Salut,
BAh si c'est que tu souhaites faire oui, alors c'est ce que je dis.

@+: Ju£i?n
Pensez: Réponse acceptée
3
loic20h28 Messages postés 207 Date d'inscription mardi 19 juin 2007 Statut Membre Dernière intervention 22 février 2016 2
20 juin 2007 à 10:33
ben oué mais non, jvien de réfléchir et je me dis que je peux pas car la boucle n'arrétera pas de tourner vu que je n'efface pas les fichiers d'extension  .ls0
T pas d'accord?? donc je vois pas comment faire!!
3
cs_MPi Messages postés 3877 Date d'inscription mardi 19 mars 2002 Statut Membre Dernière intervention 17 août 2018 22
20 juin 2007 à 10:35
N'oublie pas que FileCopy fait simplement une copie du fichier sous un autre nom.
Name,comme te suggère Renfield, renomme le fichier, dons le ls0 n'existe plus.

À toi donc de définir si tu veux conserver les fichiers ls0 ou non ...

MPi
3
jrivet Messages postés 7393 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
20 juin 2007 à 10:36
Re,
mais as tu réellement besoin de garder les .ls0
Si tu n'as pas besoin de les garder, fais une boucle comme je te le propose et utilises Name Source As Destination comme te le propose [auteurdetail.aspx?ID=2359 Renfield]

@+: Ju£i?n
Pensez: Réponse acceptée
3
loic20h28 Messages postés 207 Date d'inscription mardi 19 juin 2007 Statut Membre Dernière intervention 22 février 2016 2
20 juin 2007 à 10:37
ben MPI merci de ton information, mais je crois que mon maitre de stage préfére garder les fichier .ls0!!
3
jrivet Messages postés 7393 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
20 juin 2007 à 10:37
Re,
Ah désolé post croisé avec
[auteurdetail.aspx?ID=6078 MPi]
@+: Ju£i?n
Pensez: Réponse acceptée
3
loic20h28 Messages postés 207 Date d'inscription mardi 19 juin 2007 Statut Membre Dernière intervention 22 février 2016 2
20 juin 2007 à 10:38
ben jrivet, ca serait pour moi, je les effacerait mais bon c'est pour mon maitre de stage donc jpréfére lui les laisser car je vois que les anciens fichiers comme cela il les a gardé!!
3
jrivet Messages postés 7393 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
20 juin 2007 à 10:46
Salut,
Essaie ceci
'Exemple d'appel
'=> ATTENTION LE CHEMIN DOIT SE TERMINE PAR "\"
Call CopyAllLs0("C:\Test\")

Private Sub CopyAllLs0(ByVal Rep As String)
'Ajoute comme référence Microsoft Scripting Runtime
Dim Fso As New FileSystemObject
Dim Fi As File
Dim NomFile As String
   
   For Each Fi In Fso.GetFolder(Rep).Files
       If UCase(Fso.GetExtensionName(Fi.Name)) = "LS0" Then
           NomFile = Mid(Fi.Name, 1, InStrRev(Fi.Name, "."))
           'Copie le fichier True = Ecrase si exsite
           Call Fi.Copy(Rep & NomFile & "txt", True)
       End If
   Next
   Set Fso = Nothing
   Set Fi = Nothing
   

End Sub<hr />, ----
[code.aspx?ID=41455 By Renfield]

@+: Ju£i?n
Pensez: Réponse acceptée
3
loic20h28 Messages postés 207 Date d'inscription mardi 19 juin 2007 Statut Membre Dernière intervention 22 février 2016 2
20 juin 2007 à 10:50
merci pour ton code jrivet, mais il fait quoi exactement??
3
jrivet Messages postés 7393 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
20 juin 2007 à 10:58
Salut,
Ah ben a ton avis?

POur chaque fichier contenu dans Rep, il regarde si l'extension du fichier est ls0 si c'est ls0 il extrait le nom du fichier et copie le fichier en mettant .txt au lieu de ls0

@+: Ju£i?n
Pensez: Réponse acceptée
3
loic20h28 Messages postés 207 Date d'inscription mardi 19 juin 2007 Statut Membre Dernière intervention 22 février 2016 2
20 juin 2007 à 11:01
mais il laisse les fichier ls0??
mais le truc C ke si on garde les fichier ls0 ola boucle continuera,nn??
3
jrivet Messages postés 7393 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
20 juin 2007 à 11:05
Salut,
Oui il garde les fichiers ls0 et NON la boucle ne continuera pas.

Mais tu sais le mieux reste encore de le tester tu ne penses pas?

@+: Ju£i?n
Pensez: Réponse acceptée
3
loic20h28 Messages postés 207 Date d'inscription mardi 19 juin 2007 Statut Membre Dernière intervention 22 février 2016 2
20 juin 2007 à 11:07
C vré mais je voulais déja le comprendre avant de le tester, C mieu, tu pense po??!!LOL.
3
Rejoignez-nous