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

  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Nommer un fichier aléatoirement

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Nommer un fichier aléatoirement

n°2304225
Snake38000
Posté le 07-08-2017 à 15:12:06  profilanswer
 

Bonjour,
 
Voilà je pense que ma requête est assez simple, mais je n'y parviens pas.
 
Dans Powerpoint (2007), j'ai une macro qui enregistre la slide actuelle, sur le bureau en PNG :
 

Code :
  1. Sub Commentez()
  2. ActivePresentation.Slides(1).Export _
  3. FileName:="C:\Users\Thibault\Desktop\1.png", FilterName:="PNG"
  4. End Sub


 
Ca fonctionne très bien, sauf que je ne veux pas que mon fichier final s'appelle 1. Je veux qu'il soit composé de 6 chiffres aléatoires.
Mon but est d'enregistrer des fichiers ayant des noms tels que 465973, 179442...
 
Pouvez-vous m'aider svp ?
 
Un grand merci !

mood
Publicité
Posté le 07-08-2017 à 15:12:06  profilanswer
 

n°2304254
Takama13
Posté le 08-08-2017 à 16:03:38  profilanswer
 

Bonjour,
 
En utilisant la fonction RND() ?
https://msdn.microsoft.com/fr-fr/li [...] s.90).aspx
 
Quel est le but ? car même avec autant de chiffres, tu as le risque de générer un nom qui existe déjà.

n°2304317
kiki29
Posté le 09-08-2017 à 15:12:01  profilanswer
 

Salut, pourquoi ne pas utiliser une fonction comme celle-ci, qui pour un fichier nommé par exemple "Fusion", s'il existe déjà, nommera le second "Fusion(001)" le 3eme "Fusion(002)" etc

 

Private Function RenommerFichier(sDossier As String, sNomfichier As String) As String
Dim sNouveauNom As String
Dim sPre As String, sExt As String
Dim i As Long
Dim FSO As Object

 

   Set FSO = CreateObject("Scripting.FileSystemObject" )
    If FSO.FileExists(sDossier & "\" & sNomfichier) Then
        sNouveauNom = sNomfichier
        sPre = FSO.GetBaseName(sNomfichier)
        sExt = FSO.GetExtensionName(sNomfichier)

 

       i = 0
        While FSO.FileExists(sDossier & "\" & sNouveauNom)
            i = i + 1
            sNouveauNom = sPre & Chr(40) & Format(i, "000" ) & Chr(41) & Chr(46) & sExt
        Wend
        sNomfichier = sNouveauNom
    End If
    Set FSO = Nothing

 

   RenommerFichier = sDossier & "\" & sNomfichier
End Function

 

Un exemple, qui n'a rien à voir avec ton fichier, mais permet de voir l'usage de cette fonction : https://excel.developpez.com/telech [...] eur-en-PDF


Message édité par kiki29 le 09-08-2017 à 15:31:50

---------------
Contributions : Excel/PDF avec Acrobat/PDFCreator/XPDF http://www.developpez.net/forums/d [...] ost8001071

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

  Nommer un fichier aléatoirement

 

Sujets relatifs
Afficher périodiquement et aléatoirement une valeur d'un arrayCréation d'un fichier avec signature MD5 définie
suppression de fichier impossibleInclusion complète d'un fichier
mise en forme automatique des titres d'un fichier word par un macro vurgent:parser fichier csv en sh
Aide fichier batch - Automatisatisation requettePropriété d'un fichier vidéo/audio en vb.net
Ouvrir un fichier sur java's Cool 4un fichier d'historique des ping .csv
Plus de sujets relatifs à : Nommer un fichier aléatoirement



Copyright © 1997-2016 Hardware.fr SARL (Signaler un contenu illicite) / Groupe LDLC / Shop HFR