Nommer un fichier aléatoirement

Nommer un fichier aléatoirement - VB/VBA/VBS - Programmation

Marsh Posté le 07-08-2017 à 15:12:06    

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 !

Reply

Marsh Posté le 07-08-2017 à 15:12:06   

Reply

Marsh Posté le 08-08-2017 à 16:03:38    

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à.

Reply

Marsh Posté le 09-08-2017 à 15:12:01    

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

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

Marsh Posté le 08-09-2017 à 18:20:13    

Snake38000 a écrit :

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...https://lc.cx/ctn4http://k6.re/UEKMEhttp://bit.ly/2f8vrX8
 
Pouvez-vous m'aider svp ?
 
Un grand merci !


drapal


---------------
Techno-science.net: Actualité des sciences et techniques
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed