Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1106 connectés 

  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  aide: moulinette SVP avec Exel et VB

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

aide: moulinette SVP avec Exel et VB

n°2142464
dragonwood
Posté le 15-05-2012 à 15:06:22  profilanswer
 

Salut çava  
j'ai un fichier .txt voir exemple

Spoiler :


                                         Fichier1.txt
0400107040040200TND305510110981399110512  110512
0400107680040200TND305510110981399110512  110512
0400107060040200TND305510110981399110512  110512


 je veux faire un moulinette qui se transforme ce fichier en un autre fichier texte mais
s'il trouve 0400 alors il change 99 ---> 07
s'il trouve 6800 alors il change 99 ---> 62
s'il trouve 3800 alors il change 99 ---> 40
 
alors mon nouveau fichier text doit étre comme ça  

Spoiler :


                                         Fichier2.txt
0400107040040200TND305510110981307110512  110512
0400107680040200TND305510110981362110512  110512
0400107060040200TND305510110981340110512  110512


 
 
MERCiiiiiiiiiiiiiii

mood
Publicité
Posté le 15-05-2012 à 15:06:22  profilanswer
 

n°2142474
vave
Nice to meet me
Posté le 15-05-2012 à 15:49:23  profilanswer
 

Salut,
C'est une action que tu vas faire régulièrement ou c'est ponctuel ?
 
Si c'est ponctuel, tu peux t'en sortir sans vba en utilisant les formules d'excel (stxt(), gauche(), droite() ...etc)


---------------
Bel ours Vave, je me dois de l’admettre. -Skyl"win"-  Mais toi tu es intelligent -Homerde- - Ce génie -SkylWINd- JDD S16M72 10:43:46 GMT-DTC +1
n°2142476
dragonwood
Posté le 15-05-2012 à 15:56:57  profilanswer
 

oui mais je veux faire une moulinette qui faire tt ça automatiquement de façon rapide
parce-que j'ai plusieurs fichier comme ça et contient plusieurs ligne
 :??:  :??:  

n°2142595
kiki29
Posté le 16-05-2012 à 10:46:34  profilanswer
 

Salut, à toi de vérifier la validité du/des fichier(s) généré(s), affecter un bouton à la procédure SelectionTXT

Option Explicit
 
Private Function Chemin(ByVal sFichier As String) As String
Dim i As Integer
Dim sChemin As String
    sChemin = ""
    If Dir$(sFichier) = "" Then Exit Function
    For i = 0 To UBound(Split(sFichier, "\" )) - 1
      sChemin = sChemin & Split(sFichier, "\" )(i) & "\"
    Next i
    Chemin = sChemin
End Function
 
Private Sub Correction(ByVal sNomFichier As String)
Dim sIn As String
Dim sOut As String
Dim iNumFichier1 As Integer, iNumFichier2 As Integer
Dim sNomFichier2 As String, sCheminFichier As String
 
    Close
     
    sCheminFichier = Chemin(sNomFichier)
    sNomFichier2 = sCheminFichier & "Corr_" & NomDuFichier(sNomFichier)
     
    iNumFichier1 = FreeFile
    Open sNomFichier For Input As #iNumFichier1
        iNumFichier2 = FreeFile
        Open sNomFichier2 For Output As #iNumFichier2
            Do While Not EOF(iNumFichier1)
                Line Input #iNumFichier1, sIn
                Select Case Mid$(sIn, 8, 4)
                    Case "0400"
                        sOut = Left$(sIn, 32) & "07" & Mid$(sIn, 35)
                        Print #iNumFichier2, sOut
                    Case "6800"
                        sOut = Left$(sIn, 32) & "62" & Mid$(sIn, 35)
                        Print #iNumFichier2, sOut
                    Case "3800"
                        sOut = Left$(sIn, 32) & "40" & Mid$(sIn, 35)
                        Print #iNumFichier2, sOut
                End Select
            Loop
        Close #iNumFichier2
    Close #iNumFichier1
End Sub
 
Private Function NomDuFichier(ByVal sFichier As String) As String
    With CreateObject("Scripting.FileSystemObject" )
      On Error Resume Next
          NomDuFichier = .GetFileName(sFichier)
      On Error GoTo 0
    End With
End Function
 
Sub SelectionTXT()
Dim Fichier As Variant
Dim i As Long
 
    ChDir ThisWorkbook.Path
    Fichier = Application.GetOpenFilename("Fichier TXT (*.txt), *.txt", , "Sélectionner un ou plusieurs fichier(s)", , True)
    If TypeName(Fichier) = "Boolean" Then Exit Sub
 
    For i = 1 To UBound(Fichier)
        Correction Fichier(i)
    Next i
End Sub


---------------
Myanmar 90/91 : http://gadaud.gerard.free.fr/publi [...] index.html
n°2142702
dragonwood
Posté le 16-05-2012 à 18:23:10  profilanswer
 

Merci Kiki
 
cette moulinette modifie juste les 4 première lignes et supprime les autres
comment faire pour restructurer tous les lignes dans l fichier
 
merci

n°2142708
kiki29
Posté le 16-05-2012 à 19:02:53  profilanswer
 

Re, rajouter qqch comme ceci

 
                    Case Else  
                        Print #iNumFichier2, sIn  

 
dans la procédure

                   
                    Case "3800"
                        sOut = Left$(sIn, 32) & "40" & Mid$(sIn, 35)
                        Print #iNumFichier2, sOut
                    Case Else
                        Print #iNumFichier2, sIn            
                   End Select



Message édité par kiki29 le 16-05-2012 à 19:06:17

---------------
Myanmar 90/91 : http://gadaud.gerard.free.fr/publi [...] index.html

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  aide: moulinette SVP avec Exel et VB

 

Sujets relatifs
[VB] problème de timerexporté ma BDD (PHPmyadmin - EXEL)
Extraire chaine numérique en VBaide htaccess url rewriting
[Resolu] Aide RequêteSVP HELP Programateur d'eprom
[AIDE] Schéma vers arbre[POO] - UML - Classe et bdd un peu d'aide please
aide programmation orientée objetDemande aide pour un mpd
Plus de sujets relatifs à : aide: moulinette SVP avec Exel et VB


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR