IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Ouvrir automatiquement le dernier fichier créé dans un dossier


Sujet :

Macros et VBA Excel

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2011
    Messages
    76
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Mai 2011
    Messages : 76
    Points : 0
    Points
    0
    Par défaut Ouvrir automatiquement le dernier fichier créé dans un dossier
    Bonsoir à tous, j'ai un programme et dans celui-ci j'aimerai que quand je clique sur un bouton ou quand je double clique sur le fichier pour le lancer, celui-ci doit me lancer le dernier fichier qui a ete crée dans le repertoire :

    c:\sesame\resultats\

    Mais je ne sais pas comment faire.

    Voila deja ce que j'ai fait :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    Sub FichierMetrologue()
     
    Dim objSht As Worksheet
    Dim objFso
    Dim objTxt
    Dim i As Long
     
    Set objFso = CreateObject("Scripting.FileSystemObject")
    Set objSht = ThisWorkbook.Worksheets("Feuil1")
    Set objTxt = objFso.OpenTextFile("c:\sesame\resultats\""aller prendre le dernier fichier" & ".txt", 1)
     
    i = 0
    Do Until objTxt.AtEndOfStream And i <= 65536
      i = i + 1
      If i <= 5 Then
        objSht.Cells(i, 1) = objTxt.Readline
      Else
        objSht.Cells(i + 18, 1) = objTxt.Readline
      End If
    Loop
     
    Set objTxt = Nothing
    Set objSht = Nothing
    Set objFso = Nothing
    End Sub
    Merci beaucoup à celui qui réussira à m'aider

  2. #2
    Membre averti Avatar de arosec
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Mai 2009
    Messages
    167
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Chef de projet en SSII
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2009
    Messages : 167
    Points : 324
    Points
    324
    Par défaut
    rerereBonsoir,

    Voici une fonction qui retourne le fichier le plus récent d'un dossier...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
     
    Function LastFileNameOfDirectory(directory As String, extension As String) As String
    Dim objFso As Object
    Dim file As Object
      Set objFso = CreateObject("Scripting.FileSystemObject")
     
      For Each f In objFso.GetFolder(directory).Files
        If LCase(Right(f.Name, Len(extension) + 1)) = "." & extension Then
          If file Is Nothing Then
            Set file = f
          Else
            If f.DateCreated > file.DateCreated Then Set file = f
          End If
        End If
      Next
     
      If Not file Is Nothing Then
        LastFileNameOfDirectory = file.Path
      Else
        LastFileNameOfDirectory = ""
      End If
     
      Set objFso = Nothing
     
    End Function
    et voici comment l'utiliser dans ton code...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Set objTxt = objFso.OpenTextFile(LastFileNameOfDirectory("c:\sesame\resultats\", "txt"), 1)

  3. #3
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2011
    Messages
    76
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Mai 2011
    Messages : 76
    Points : 0
    Points
    0
    Par défaut
    bonsoir, j'ai vu le message tout à l'heure au travail et j'ai donc essayé, mais je n'y arrivais pas à coder.

    Je dois faire les copier coller dans quoi ? vu que c'est une fonction

    je copie la fonction ou ? et le code avec set"" ou ?

  4. #4
    Invité
    Invité(e)
    Par défaut
    Bonsoir
    Plutôt que de demander le code directement, il faudrait peut être mieux, avec un peu de recherche, en écrire un, l'essayer et éventuellement si ça ne marche pas, demander de l'aide en présentant ce qui ne marche pas.
    Ce serait plus dans l'esprit de Dvp.

  5. #5
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2011
    Messages
    76
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Mai 2011
    Messages : 76
    Points : 0
    Points
    0
    Par défaut
    Le problème, c'est que j'ai le code, je le mets en dessous :
    Mais je ne sais pas comment on fait marcher la fonction.
    Si vous pouvez m'aider ce serait gentille.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    Private Declare Function LastFileNameOfDirectory Lib(directory As String, extension As String) As String
    Private Function LastFileNameOfDirectory(directory As String, extension As String) As String
    Dim objFso As Object
    Dim file As Object
      Set objFso = CreateObject("Scripting.FileSystemObject")
     
      For Each f In objFso.GetFolder(directory).Files
        If LCase(Right(f.Name, Len(extension) + 1)) = "." & extension Then
          If file Is Nothing Then
            Set file = f
          Else
            If f.DateCreated > file.DateCreated Then Set file = f
          End If
        End If
      Next
     
      If Not file Is Nothing Then
        LastFileNameOfDirectory = file.Path
      Else
        LastFileNameOfDirectory = ""
      End If
     
      Set objFso = Nothing
     
    With ThisWorkbook.Worksheets("Feuil1")
        .Range("A:A").ClearContents
        Do While Not objtxt.AtEndOfStream And i <= .Rows.Count
            If i = 5 Then i = 23
            i = i + 1
            .Cells(i, 1) = objtxt.Readline
        Loop
    End With
     
    End Function

  6. #6
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 374
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 374
    Points : 12 068
    Points
    12 068
    Billets dans le blog
    8
    Par défaut heu!!!!
    bonjour maxime

    dans tout les cas ton code ne peut pas fonctioner

    ici: tu fait appel a un apis sans la nomer
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Private Declare Function LastFileNameOfDirectory Lib(directory As String, extension As String) As String
    ca devrais etre

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Private Declare Function LastFileNameOfDirectory Lib" nom de la dll"(directory As String, extension As String) As String
    d'autant plus que je ne l'ai jamais vu celle la

    et en plus arosec t' a donné la solution

    nickel!!! ta macro arosec courte precise sans fioriture parfait!!!
    je la garde
    parcontre le ",1" a la fin n'est pas necessaire puisque tu n'a que deux variables string a enoncé "directory et extention"
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    msgbox LastFileNameOfDirectory("c:\sesame\resultats\", "txt")
    au plaisir

  7. #7
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2011
    Messages
    76
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Mai 2011
    Messages : 76
    Points : 0
    Points
    0
    Par défaut
    d'accord merci, donc si je veux ouvrir automatiquement le dernier fichier txt de mon dossier, je dois ecrire quoi ? car j'ai fait plusieurs fois le test avec mon programme et j'y arrive pas

  8. #8
    Membre averti Avatar de arosec
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Mai 2009
    Messages
    167
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Chef de projet en SSII
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2009
    Messages : 167
    Points : 324
    Points
    324
    Par défaut
    Bonsoir Maxime082,
    La remarque de GAYOT ci dessus est interessante...
    Il est très important de maitriser le code que l'on met dans une application pour en assurer la maintenance... Il ne suffit pas d'avoir quelque chose qui fonctionne même si c'est le minimum!
    Cdt,

  9. #9
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2011
    Messages
    76
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Mai 2011
    Messages : 76
    Points : 0
    Points
    0
    Par défaut
    Je le conçois bien, vu que tu m'as montré le code avec la fonction, peux-tu me dire comment je fais pour l'insérer dans mon programme stp ?

    à quoi correspond le dll ?

    Quelqu'un pourrait insérer la fonction dans mon programme s'il vous plait ?
    J'en peux plus de chercher sans rien trouver.

    Je vous en serais particulièrement reconnaissant.

  10. #10
    Membre averti Avatar de arosec
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Mai 2009
    Messages
    167
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Chef de projet en SSII
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2009
    Messages : 167
    Points : 324
    Points
    324
    Par défaut
    Dur dur l'informatique
    Une dll, est pour faire très simple, un fichier qui contient des fonctions qui peuvent être appelées depuis un autre programme...
    Je n'ai jamais parlé de cela dans les précédents exemples.

    J'ai proposé une fonction VBA que j'ai appelée LastFileNameOfDirectory, mais que j'aurai très bien pu appeler "toto".

    Tu ajoutes un module vba dans ton fichier Excel et tu y colle le code de la fonction LastFileNameOfDirectory.
    Tu peux ensuite l'utiliser n'importe ou dans ton classeur de la manière suivante:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    msgbox LastFileNameOfDirectory("c:\sesame\resultats\", "txt")
    Pour tester cette fonction, tu peux faire un bête
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    sub test
    msgbox LastFileNameOfDirectory("c:\sesame\resultats\", "txt")
    end sub
    et tu verras immédiatement le résultat en mettant ton curseur dans la fonction test en en faisant F5...
    (remplace "c:\sesame\resultats\" par un dossier qui se trouve sur ton poste)


    (Merci patricktoulon pour avoir remarqué le "1" en trop dans mon exemple )

  11. #11
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2011
    Messages
    76
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Mai 2011
    Messages : 76
    Points : 0
    Points
    0
    Par défaut
    oui dur l'info comme tu dis, mais je trouve ça interessant ... y'a un début a tout, merci pour le code, je vais suivre tes astuces, j'espere ne pas m'enerver demain au boulot ^^

    Cordialement

  12. #12
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 374
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 374
    Points : 12 068
    Points
    12 068
    Billets dans le blog
    8
    Par défaut re
    il n'y a pas de quoi arosec

    je réitère mon compliment au sujet de ta macro(courte ,simple ,propre)
    ça ne se trouve pas dans la faq en tout cas un exemple aussi simple
    la déposer dans les contributions serait une bonne idée pour les autres


    oui en fait!! il m'a fait courir maxime

    j'ai cherché dans ma banque de donnée de dll si cette fonction existait

    il m'a fait courir le cochon

    je pense qu'il confond une fonction que l'on crée et la déclaration des fonction des apis

    allez bon courage a maxime

    tiens une question pour arosec

    et pour le fichier qui a été modifié le dernier qu'elle est la variable avec ton fso
    si tant est qu'il y en ai une
    oupps voila que je pose des questions sans regarder

    la réponse :
    pour trouver le dernier fichier qui a été modifié le plus récemment
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    If f.DateLastModified > file.DateLastModified Then Set file = f
    au plaisir

  13. #13
    Membre averti Avatar de arosec
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Mai 2009
    Messages
    167
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Chef de projet en SSII
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2009
    Messages : 167
    Points : 324
    Points
    324
    Par défaut
    Bonjour,

    déposer dans les contributions serait une bonne idée pour les autres
    Je ne suis pas certain que ce type de code très spécifique puisse trouver ça clientelle dans les contibutions du forum Excel...
    Mais bon, elle est là et ne m'appartient déjà plus! Si quelqu'un souhaite la mettre...

    et pour le fichier qui a été modifié le dernier qu'elle est la variable avec ton fso si tant est qu'il y en ai une
    Serais je mal reveillé? je n'ai pas compris ta question...

  14. #14
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 374
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 374
    Points : 12 068
    Points
    12 068
    Billets dans le blog
    8
    Par défaut re
    détrompe toi ce genre de macro simple et propres comme celle la sont bien utilles au forumeur moi le premier et bien que le forum soit la pour ca
    une question qui a une reponse economise beaucoup de post inutiles
    et force un peu les faineants a faire une recherche en fin c'est un peu utopique mais bon l'espoir fait vivre


    quand a ma question

    tu part d'un object fso pour instancier le dossier du fichier
    mais de toute facon j'avais repondu a la fin du message
    c'etait "datelastmodified"
    j'ai trouver ca ici:
    si tu veux je le met dans les contribs pour toi avec quelques variantes

    allez au plaisir


    au plaisir

  15. #15
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 374
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 374
    Points : 12 068
    Points
    12 068
    Billets dans le blog
    8
    Par défaut re
    apres avoir bien relu ton post de depart tu ne veux pas ouvrir mais lire le dernier fichier et retranscrire les ligne dans la colonne "a" du sheets
    le code complet:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
     
     
    Function LastFileNameOfDirectory(directory As String, extension As String) As String
    Dim objFso As Object
    Dim file As Object
      Set objFso = CreateObject("Scripting.FileSystemObject")
     
      For Each f In objFso.GetFolder(directory).Files
        If LCase(Right(f.Name, Len(extension) + 1)) = "." & extension Then
          If file Is Nothing Then
            Set file = f
          Else
            If f.Datecreated > file.Datecreated Then Set file = f
          End If
        End If
      Next
     
      If Not file Is Nothing Then
        LastFileNameOfDirectory = file.Path
      Else
        LastFileNameOfDirectory = ""
      End If
     
      Set objFso = Nothing
     
    End Function

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Sub recherche()
     nom = LastFileNameOfDirectory("D:\sauvagarde\Nouveau dossier\contribution dvp\", "xls")
    ouverture_et_transcription nom ' ici on appelle la macro pour retranscrire en transportant avec la variable nom
    End Sub
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
     
    sub ouverture_et_transcription(letritre as string)
     
     
    Dim intFic As Integer
    Dim strLigne As String
    intFic = FreeFile
    Open letitre For Input As intFic
    While Not EOF(End Of File)
       i=i+1
     Line Input #intFic, strLigne
        with sheets(1)
    .cells(i,1).value=strLigne
    end with
    Wend
    Close intFic 
    end sub

    voila au plaisir

  16. #16
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2011
    Messages
    76
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Mai 2011
    Messages : 76
    Points : 0
    Points
    0
    Par défaut
    sinon plutot que d'aller rechercher le dernier fichier créer, je me suis amusé à regarder pour plutot ouvrir la boite de dialogue ouvrir directement dans mon dossier ( j'y suis arrivé) comme ça le jour ou il y'a plusieurs créations de fichier et pour eviter les conflits, j'aurais juste à choisir mon fichier.

    Par contre je n'arrive pas à coller le contenu de celui-ci dans mon fichier excel ( je veux copier les 5 premières lignes du fichier que je vais chercher dans la plage A1:A5 et le restant à partir de la ligne A24

    Voici mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    Private Sub ButCharger_Click()
     
    'Je vais rechercher le fichier résultat qui sort de metrologue dans le dossier resultats
    'C:\sesame\resultats\
     
    Dim Chemin1 As String
    Dim Fichier1 As Variant
     
    Chemin1 = "C:\sesame\resultats\"
    ChDrive "C:"
    ChDir Chemin1
     
    Fichier1 = Application.GetOpenFilename("Text Files (*.txt), *.txt")
    If Fichier1 <> False Then
        MsgBox "Fichier séléctionné " & Fichier1
    End If
     
    'With ThisWorkbook.Worksheets("Feuil1")
        '.Range("A:A").ClearContents
        'Do While Not Fichier1.AtEndOfStream And i <= .Rows.Count
        'If i = 5 Then i = 23
           ' i = i + 1
            '.Cells(i, 1) = Fichier1.Readline
       ' Loop
    'End With
    end sub

  17. #17
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2011
    Messages
    76
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Mai 2011
    Messages : 76
    Points : 0
    Points
    0
    Par défaut
    voici dans un premier temps, le code avec la fonction lastfilenameofdirectory, que j'ai essayé et que je n'arrive tjrs pas à faire marcher, je suis nul
    Fichiers attachés Fichiers attachés

  18. #18
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 374
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 374
    Points : 12 068
    Points
    12 068
    Billets dans le blog
    8
    Par défaut re
    bonjour

    je pense avoir compris ton probleme

    ici ta macro :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    'With ThisWorkbook.Worksheets("Feuil1")
        '.Range("A:A").ClearContents
        'Do While Not Fichier1.AtEndOfStream And i <= .Rows.Count
        'If i = 5 Then i = 23'ici la condition est bonne mais 
           ' i = i + 1
            '.Cells(i, 1) = Fichier1.Readline ici les lignes ne sont pas sauter 
       ' Loop
    'End With
    car si j'ai bien compris tu veux lire et retranscrire le lignes de 1 a 5 et 24 jusqu'a la fin

    dis moi si c'est bien ca

    au quel cas sa serai un truc du genre

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
     
    dim donnees as string
    dim i as long
     
    With ThisWorkbook.Worksheets("Feuil1")
       i=0
     .Range("A:A").ClearContents
     Do While Not Fichier1.AtEndOfStream And i <= .Rows.Count
        données=donnees
     i = i + 1
     If i >0 and i<5   Then
     .Cells(i, 1) = Fichier1.Readline ici les lignes ne sont pas sauter 
     elsif i >23 and i< .rows.count 
     .Cells(i, 1) = donnees Loop
    End With
    maintenant il va y avoir un trou entre la ligne 5 et 24 du sheets
    si c'est prevu c'est bon sinon il faut incrémenter une autre variable pour les numero de lignes

    comme ceci:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
     
    dim donnees as string
    dim i as long,ligne as long
     
    With ThisWorkbook.Worksheets("Feuil1")
       i=0
     .Range("A:A").ClearContents
     Do While Not Fichier1.AtEndOfStream And i <= .Rows.Count
        données=Fichier1.Readline 
     i = i + 1
     If i >0 and i<5   Then
     ligne=ligne+1
     
    .Cells(ligne, 1) =donnees ici les lignes ne sont pas sauter 
     elsif i > 23 and i< .rows.count 
     ligne=ligne+1
     
    .Cells(ligne, 1) = donnees
     Loop
    End With
    voila c'est sensiblement la meme chose mais sans le trou

    au plaisir

  19. #19
    Modérateur
    Avatar de AlainTech
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Mai 2005
    Messages
    4 235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Finance

    Informations forums :
    Inscription : Mai 2005
    Messages : 4 235
    Points : 24 327
    Points
    24 327
    Par défaut
    Citation Envoyé par Maxime082 Voir le message
    je suis nul
    Et tu risques de le rester si tu ne prends pas les choses en mains.

    Voici plusieurs semaines que tu n'arrêtes pas de mendier des bouts de codes et, quand on t'en donne, tu (te) demandes ce que tu dois en faire.
    Je ne crois franchement pas que ceux qui essayent de t'aider en te fournissant des codes tout faits te rendent service.
    Et ce n'est pas en postant plusieurs fois la même question sous des formes différentes (ou sous des pseudos différents) que tu comprendras mieux les réponses.

    Ne crois-tu pas qu'il est plus que temps de te mettre à étudier les bases de la programmation?

    Ce site fourmille de tutos qui te permettraient de commencer à programmer.

    Le but du forum est d'aider sur des points précis. Tu remarqueras que la majorité des sujets résolus le sont en une ou deux réponses.

    Je te demanderai donc de ne plus poster que tes propres codes et pas ceux qu'on t'aurait fournis et que tu ne comprends pas.

  20. #20
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 374
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 374
    Points : 12 068
    Points
    12 068
    Billets dans le blog
    8
    Par défaut re
    bonsoir alaintech

    je suis parfaitement d'accord avec toi
    car j'ai répondu a plusieurs de ces questions car je les trouvais intéressantes

    mais effectivement j'ai remarqué que même les code fonctionnels il ne s'en sortait pas

    je pense en effet qu'il n'a aucune base en programmation

    mais que veux tu ce sont les étudiants d'aujourd'hui



    au plaisir

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. Ouvrir dernier fichier enregistré dans un dossier
    Par adragon dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 11/12/2014, 11h38
  2. Réponses: 2
    Dernier message: 05/03/2014, 11h03
  3. ouvrir mes dix derniers fichiers dans Vim
    Par tictactouc dans le forum Applications et environnements graphiques
    Réponses: 2
    Dernier message: 05/02/2009, 02h38
  4. Réponses: 0
    Dernier message: 02/12/2008, 18h07
  5. [VBA-Excel] Ouvrir un lot de fichier txt dans Excel
    Par Trollakuir dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 30/06/2006, 11h02

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo