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 :

Creer une version différente à chaque enregistrement vba.


Sujet :

Macros et VBA Excel

  1. #1
    Membre habitué
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Novembre 2013
    Messages
    226
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Consultant en Business Intelligence
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2013
    Messages : 226
    Points : 134
    Points
    134
    Par défaut Creer une version différente à chaque enregistrement vba.
    Bonjour,

    Je souhaite créer des versions différentes à chaque enregistrement de fichier.

    Pour le moment je teste si le fichier existe et si il existe pas alors je souhaite ajouter + 1 au fichier présent. Par exemple si nomfichier = test.xls est présent alors nomfichier = teste1.xls


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    'fonction de test si fichier
    Public Function FichierExiste(MonFichier As String)
    'par Excel-Malin.com ( http://excel-malin.com )
     
       If Len(Dir(MonFichier)) > 0 Then
          FichierExiste = True
       Else
          FichierExiste = False
       End If
    End Function
    code pour changer le nom du fichier.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
        MonFichier = "C:\Users\ho.rgrange\Documents\test vba\forum_test fait par moi\test_vrac\test.xlsx"
     
        If FichierExiste(MonFichier) = True Then
        Nomfichier + 1
        Else
        Nom fichier
        End If
    En vous remerciant par avance,

    Cordialement.

  2. #2
    Expert confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2013
    Messages
    3 617
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Alimentation

    Informations forums :
    Inscription : Mai 2013
    Messages : 3 617
    Points : 5 912
    Points
    5 912
    Par défaut
    Bonjour,

    Il te faudrait faire une boucle
    Je n'ai pas testé, mais ça devrait ressembler à ça
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Chemin = "C:\Users\ho.rgrange\Documents\test vba\forum_test fait par moi\test_vrac\"
    Fichier = "test"
    For i = 1 to 100  'à modifier au besoin
       if dir(chemin & fichier & i & ".xlsx") = "" then  'il n'existe pas
          MonFichier = Chemin & fichier & i & ".xlsx"
       end if
    Next
    MPi²

  3. #3
    Membre habitué
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Novembre 2013
    Messages
    226
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Consultant en Business Intelligence
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2013
    Messages : 226
    Points : 134
    Points
    134
    Par défaut
    Hello parmi,

    Oui techniquement cela fonctionne bien merci pour l'idée de la boucle.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    For i = 100 To 1 Step -1   'à modifier au besoin
       If Dir(Chemin & fichier & i & ".xlsx") = "" Then  'il n'existe pas
          MonFichier = Chemin & fichier & i & ".xlsx"
       End If
    Next
    Mais il vaut mieux écrire 100 à 1 la boucle sinon ça sauvegarde test100, test 99 etc...

    Super

    Merci et bonne journée

  4. #4
    Expert confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2013
    Messages
    3 617
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Alimentation

    Informations forums :
    Inscription : Mai 2013
    Messages : 3 617
    Points : 5 912
    Points
    5 912
    Par défaut
    En fait ça peut être dans l'autre sens de 1 à 100 mais en mettant un Exit For (que j'ai oublié...)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Chemin = "C:\Users\ho.rgrange\Documents\test vba\forum_test fait par moi\test_vrac\"
    Fichier = "test"
    For i = 1 to 100  'à modifier au besoin
       if dir(chemin & fichier & i & ".xlsx") = "" then  'il n'existe pas
          MonFichier = Chemin & fichier & i & ".xlsx"
          Exit for  'ou Exit Function si dans une Function
       end if
    Next
    MPi²

  5. #5
    Membre habitué
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Novembre 2013
    Messages
    226
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Consultant en Business Intelligence
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2013
    Messages : 226
    Points : 134
    Points
    134
    Par défaut
    Yes ça marche bien aussi comme ça .

    Merci de ton aide en tout cas.

    A bientot.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Avoir une signature différente chaque jour
    Par arnolem dans le forum Outlook
    Réponses: 0
    Dernier message: 05/03/2008, 17h49
  2. Réponses: 5
    Dernier message: 16/05/2007, 15h37
  3. Affiché une texte différent chaque jour
    Par gastoncs dans le forum VB.NET
    Réponses: 3
    Dernier message: 07/02/2007, 22h28
  4. Réponses: 11
    Dernier message: 01/03/2006, 10h32

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