Effacer un fichier en vba

Le
Alri
Bonjour à tous le monde,

Je recheche le code vba qui me permettrait d'effacer un fichier qui se
situe
sur le bureau

Quelqu'un peut il m'aider ?

Merci par avance

Albert
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
FS
Le #20224721
Bonjour,

Une méthode parmi d'autres :

'============= Sub essai()
Dim WSh, Bureau, Fichier

Set WSh = CreateObject("WScript.Shell")
Bureau = WSh.SpecialFolders("Desktop")
Fichier = "new 1.txt" 'à adapter

Kill Bureau & "" & Fichier

End Sub
'=============
FS
--
Frédéric SIGONNEAU
Modules et modèles pour Excel :
http://frederic.sigonneau.free.fr/

Alri a écrit :
Bonjour à tous le monde,

Je recheche le code vba qui me permettrait d'effacer un fichier qui se
situe
sur le bureau

Quelqu'un peut il m'aider ?

Merci par avance

Albert


michdenis
Le #20224821
Bonjour Alri,

Pour envoyer le fichier vers la poubelle de Windows :

'--------------------------------------------
Declare Function SHFileOperation Lib "shell32.dll" Alias _
"SHFileOperationA" (lpFileOp As SHFILEOPSTRUCT) As Long

Type SHFILEOPSTRUCT
hwnd As Long
wFunc As Long
pFrom As String
pTo As String
fFlags As Integer
fAnyOperationsAborted As Boolean
hNameMappings As Long
lpszProgressTitle As String
End Type
'--------------------------------------------
Sub RecycleFile(sFile As String)
'Code de Chip Pearson
Const FO_DELETE = &H3
Const FOF_ALLOWUNDO = &H40
Dim FileOperation As SHFILEOPSTRUCT
Dim lReturn As Long
Dim sFileName As String

With FileOperation
.wFunc = FO_DELETE
.pFrom = sFile
.fFlags = FOF_ALLOWUNDO
End With
lReturn = SHFileOperation(FileOperation)
End Sub
'--------------------------------------------

Sub Test()
Dim Fichier As String
Fichier = Environ("HOMEPATH") & "Destop" & "MonFichier.xls"
RecycleFile Fichier
End Sub
'--------------------------------------------

Si tu veux supprimer totalement le fichier sans pouvoir le restituer si nécessaire :
Ceci est suffisant :
'-----------------------------------
Sub Test()
Dim Fichier As String
Fichier = Environ("HOMEPATH") & "Destop" & "MonFichier.xls"
Kill Fichier
End Sub
'-----------------------------------
Alri
Le #20225181
On 25 sep, 15:06, "michdenis"
Bonjour Alri,

Pour envoyer le fichier vers la poubelle de Windows :

'--------------------------------------------
Declare Function SHFileOperation Lib "shell32.dll" Alias _
  "SHFileOperationA" (lpFileOp As SHFILEOPSTRUCT) As Long

Type SHFILEOPSTRUCT
    hwnd As Long
    wFunc As Long
    pFrom As String
    pTo As String
    fFlags As Integer
    fAnyOperationsAborted As Boolean
    hNameMappings As Long
    lpszProgressTitle As String
End Type
'--------------------------------------------
Sub RecycleFile(sFile As String)
'Code de Chip Pearson
Const FO_DELETE = &H3
Const FOF_ALLOWUNDO = &H40
Dim FileOperation As SHFILEOPSTRUCT
Dim lReturn As Long
Dim sFileName As String

  With FileOperation
    .wFunc = FO_DELETE
    .pFrom = sFile
    .fFlags = FOF_ALLOWUNDO
  End With
  lReturn = SHFileOperation(FileOperation)
End Sub
'--------------------------------------------

Sub Test()
Dim Fichier As String
Fichier = Environ("HOMEPATH") & "Destop" & "MonFichier.xls"
RecycleFile  Fichier
End Sub
'--------------------------------------------

Si tu veux supprimer totalement le fichier sans pouvoir le restituer si n écessaire :
Ceci est suffisant :
'-----------------------------------
Sub Test()
Dim Fichier As String
Fichier = Environ("HOMEPATH") & "Destop" & "MonFichier.xls"
Kill  Fichier
End Sub
'-----------------------------------



Merci Michdenis,

juste la traduction de => Environ("HOMEPATH")

Albert
Alri
Le #20225171
On 25 sep, 14:46, FS
Bonjour,

Une méthode parmi d'autres :

'==============
Sub essai()
Dim WSh, Bureau, Fichier

   Set WSh = CreateObject("WScript.Shell")
   Bureau = WSh.SpecialFolders("Desktop")
   Fichier = "new 1.txt" 'à adapter

   Kill Bureau & "" & Fichier

End Sub
'==============

FS
--
Frédéric SIGONNEAU
Modules et modèles pour Excel :http://frederic.sigonneau.free.fr/

Alri a écrit :



> Bonjour à tous le monde,

> Je recheche le code vba qui me permettrait d'effacer un fichier qui se
> situe
> sur le bureau

> Quelqu'un peut il m'aider ?

> Merci par avance

> Albert- Masquer le texte des messages précédents -

- Afficher le texte des messages précédents -



Merci Frédéric,

Peux tu m'expliquer :
("WScript.Shell")
et .SpecialFolders("Desktop")

merci
michdenis
Le #20225531
| juste la traduction de => Environ("HOMEPATH")

Environ("HOMEPATH") = Chemin de la maison

;-)

"Environ" fait partie des méthodes de la bibliothèque VBA
La méthode Environ() contient plusieurs constantes que tu
peux afficher en utilisant la macro suivante.

HOMEPATH est si tu veux une constante qui est défini au
niveau du registre de Windows. La lecture de la valeur de la
"constante" que tu utilises avec "Environ()" est lue directement
à partir de la base de registre de Windows.

'-------------------------------
Sub test()
Dim A As Integer
For A = 1 To 75
Range("A" & A) = VBA.Environ(A)
Next
End Sub
'-------------------------------
FS
Le #20226291
> Peux tu m'expliquer :


> ("WScript.Shell")
> et .SpecialFolders("Desktop")

Il existe des explications "toutes faites" et +tôt bien faites sur ce
sujet :

sur l'objet WScript
http://www.commentcamarche.net/contents/vbscript/vbs-wscript.php3

sur l'accès aux dossiers spéciaux de Windows
http://www.commentcamarche.net/contents/vbscript/vbs-wshshell.php3

FS
--
Frédéric SIGONNEAU
Modules et modèles pour Excel :
http://frederic.sigonneau.free.fr/

Alri a écrit :
On 25 sep, 14:46, FS
Bonjour,

Une méthode parmi d'autres :

'============= >> Sub essai()
Dim WSh, Bureau, Fichier

Set WSh = CreateObject("WScript.Shell")
Bureau = WSh.SpecialFolders("Desktop")
Fichier = "new 1.txt" 'à adapter

Kill Bureau & "" & Fichier

End Sub
'============= >>
FS
--
Frédéric SIGONNEAU
Modules et modèles pour Excel :http://frederic.sigonneau.free.fr/

Alri a écrit :



Bonjour à tous le monde,
Je recheche le code vba qui me permettrait d'effacer un fichier qui se
situe
sur le bureau
Quelqu'un peut il m'aider ?
Merci par avance
Albert- Masquer le texte des messages précédents -


- Afficher le texte des messages précédents -



Merci Frédéric,

Peux tu m'expliquer :
("WScript.Shell")
et .SpecialFolders("Desktop")

merci


Publicité
Poster une réponse
Anonyme