Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

comment reproduire le logo animé de copie de fichier en VBA

7 réponses
Avatar
Thierry
Bonjour,

peut on récupérer le logo animé de copie de fichier du system pour le lancer
pendant l'exécution de FileCopy sous VBA.

Merci de votre aide.

A+

7 réponses

Avatar
Michel Pierron
Bonjour Thierry;
Il faut bien sur que le nombre de fichiers à copier soit conséquent pour que
l'animation soit affichée:

Sub AnimateCopy()
On Error GoTo 1
Const Source As String = "c:temp*.*"
Const Target As String = "C:Nouveau dossier"
If Dir(Target, vbDirectory) = "" Then MkDir Target
CreateObject("Shell.Application").Namespace(Target).CopyHere (Source)
Exit Sub
1: MsgBox Err.Number & Err.Description, 64
End Sub

MP

"Thierry" a écrit dans le message de
news:
Bonjour,

peut on récupérer le logo animé de copie de fichier du system pour le
lancer

pendant l'exécution de FileCopy sous VBA.

Merci de votre aide.

A+




Avatar
Thierry
Merci Michel pour ta réponse.

Je viens d'essayer et cela marche.
Mais comment gérer l'erreure provoqué lorsque je répond NON
dans la fenètre "Remplacement du fichier" lorsque Target existe déjà.

Thierry






"Michel Pierron" a écrit dans le message de news:
uxG$
Bonjour Thierry;
Il faut bien sur que le nombre de fichiers à copier soit conséquent pour
que

l'animation soit affichée:

Sub AnimateCopy()
On Error GoTo 1
Const Source As String = "c:temp*.*"
Const Target As String = "C:Nouveau dossier"
If Dir(Target, vbDirectory) = "" Then MkDir Target
CreateObject("Shell.Application").Namespace(Target).CopyHere (Source)
Exit Sub
1: MsgBox Err.Number & Err.Description, 64
End Sub

MP

"Thierry" a écrit dans le message de
news:
Bonjour,

peut on récupérer le logo animé de copie de fichier du system pour le
lancer

pendant l'exécution de FileCopy sous VBA.

Merci de votre aide.

A+







Avatar
Michel Pierron
Re Thierry;
Détaille ta demande, parceque à priori, il n'y a pas d'erreur si tu réponds
non, ça passe au fichier suivant et ainsi de suite.
Sinon, indique nous le numéro d'erreur.

MP

"Thierry" a écrit dans le message de
news:
Merci Michel pour ta réponse.

Je viens d'essayer et cela marche.
Mais comment gérer l'erreure provoqué lorsque je répond NON
dans la fenètre "Remplacement du fichier" lorsque Target existe déjà.

Thierry






"Michel Pierron" a écrit dans le message de news:
uxG$
Bonjour Thierry;
Il faut bien sur que le nombre de fichiers à copier soit conséquent pour
que

l'animation soit affichée:

Sub AnimateCopy()
On Error GoTo 1
Const Source As String = "c:temp*.*"
Const Target As String = "C:Nouveau dossier"
If Dir(Target, vbDirectory) = "" Then MkDir Target
CreateObject("Shell.Application").Namespace(Target).CopyHere (Source)
Exit Sub
1: MsgBox Err.Number & Err.Description, 64
End Sub

MP

"Thierry" a écrit dans le message de
news:
Bonjour,

peut on récupérer le logo animé de copie de fichier du system pour le
lancer

pendant l'exécution de FileCopy sous VBA.

Merci de votre aide.

A+











Avatar
Thierry
Bonsoir Michel

ci-dessous le code que tu ma donné avec les modifs que j'ai apporté et une
idée de solution.

dit moi ce que tu en pense...


Sub AnimateCopy()
On Error GoTo 1
Const Source As String = "f::asciivpst.txt"
' ***********
Const Target As String = "f:asciivpstock.txt"
' *************
If Dir(Target, vbDirectory) = "" Then MkDir Target
CreateObject("Shell.Application").Namespace(Target).CopyHere (Source)
Exit Sub
1: MsgBox Err.Number & Err.Description, 64
End Sub

si je répond OUI à confirmer le remplacement du fichier tout est ok.
si je répond NON j'obtiens :
-2147024889
la méthode 'CopyHere' de l'objet 'Folder2' à échoué.

Merci de me dire si la solution que j'ai apporté est correcte,
en tout cas celà m'évite le message d'erreure.

1: Select Case Err.Number
Case -2147024889
exit sub
Case Else
MsgBox Err.Number & Err.Description, 64
End Sub



"Michel Pierron" a écrit dans le message de news:

Re Thierry;
Détaille ta demande, parceque à priori, il n'y a pas d'erreur si tu
réponds

non, ça passe au fichier suivant et ainsi de suite.
Sinon, indique nous le numéro d'erreur.

MP

"Thierry" a écrit dans le message de
news:
Merci Michel pour ta réponse.

Je viens d'essayer et cela marche.
Mais comment gérer l'erreure provoqué lorsque je répond NON
dans la fenètre "Remplacement du fichier" lorsque Target existe déjà.

Thierry




Avatar
Thierry
Bonsoir Michel

ci-dessous le code que tu ma donné avec les modifs que j'ai apporté et une
idée de solution.

dit moi ce que tu en pense...


Sub AnimateCopy()
On Error GoTo 1
Const Source As String = "f::vinexevpst.txt"
' ========== Const Target As String = "f:asciivpstock.txt"
' *************
If Dir(Target, vbDirectory) = "" Then MkDir Target
CreateObject("Shell.Application").Namespace(Target).CopyHere (Source)
Exit Sub
1: MsgBox Err.Number & Err.Description, 64
End Sub

si je répond OUI à confirmer le remplacement du fichier tout est ok.
si je répond NON j'obtiens :
-2147024889
la méthode 'CopyHere' de l'objet 'Folder2' à échoué.

Merci de me dire si la solution que j'ai apporté est correcte,
en tout cas celà m'évite le message d'erreure.

1: Select Case Err.Number
Case -2147024889
exit sub
Case Else
MsgBox Err.Number & Err.Description, 64
End Sub

Le code ci-dessus me cré un sous-dossier vpstock.txt à ascii et lui copie
vpst.txt.

Maintenant je voudrai copier le fichier vpst.txt du dossier vinexe
dans le dossier ascii en lui donnant le nom suivant : vpstock.txt.
Quelle modif apporter au code ci-dessus ?

Merci.

A+




"Michel Pierron" a écrit dans le message de news:

Re Thierry;
Détaille ta demande, parceque à priori, il n'y a pas d'erreur si tu
réponds

non, ça passe au fichier suivant et ainsi de suite.
Sinon, indique nous le numéro d'erreur.

MP

"Thierry" a écrit dans le message de
news:
Merci Michel pour ta réponse.

Je viens d'essayer et cela marche.
Mais comment gérer l'erreure provoqué lorsque je répond NON
dans la fenètre "Remplacement du fichier" lorsque Target existe déjà.

Thierry








Avatar
Gaenonius
Petit exemple d'une autre solution possible, avec une fonction de l'API Windows
(les fichiers source et destination sont à adapter mais la source doit être un
fichier ou, comme dans l'exemple, un dossier volumineux si tu veux avoir le
temps de voir l'animation !) :

''''''''''''''''''''''''''''
'(dans un module ordinaire)

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 ' only used if FOF_SIMPLEPROGRESS
End Type

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

Sub CopieAvecAnimation()
Dim ShFileOp As SHFILEOPSTRUCT
Dim Src As String, Dest As String

Src = "C:Program FilesMicrosoft OfficeOffice101036"
Dest = "C:Documents and SettingsAll UsersBureau"

With ShFileOp
.wFunc = 2
.pFrom = Src
.pTo = Dest
End With
SHFileOperation ShFileOp

End Sub
''''''''''''''''''''''''''''

--
Gaenonius

Bonjour,

peut on récupérer le logo animé de copie de fichier du system pour le lancer
pendant l'exécution de FileCopy sous VBA.

Merci de votre aide.

A+




Avatar
Thierry
Bonjour,

je viens d'essayé le code de "Gaenonius" et tout est Ok.

Merci encore pour votre aide, à tous.

Thierry R.



"Gaenonius" a écrit dans le message de news:

Petit exemple d'une autre solution possible, avec une fonction de l'API
Windows

(les fichiers source et destination sont à adapter mais la source doit
être un

fichier ou, comme dans l'exemple, un dossier volumineux si tu veux avoir
le

temps de voir l'animation !) :

''''''''''''''''''''''''''''
'(dans un module ordinaire)

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 ' only used if FOF_SIMPLEPROGRESS
End Type

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

Sub CopieAvecAnimation()
Dim ShFileOp As SHFILEOPSTRUCT
Dim Src As String, Dest As String

Src = "C:Program FilesMicrosoft OfficeOffice101036"
Dest = "C:Documents and SettingsAll UsersBureau"

With ShFileOp
.wFunc = 2
.pFrom = Src
.pTo = Dest
End With
SHFileOperation ShFileOp

End Sub
''''''''''''''''''''''''''''

--
Gaenonius

Bonjour,

peut on récupérer le logo animé de copie de fichier du system pour le
lancer


pendant l'exécution de FileCopy sous VBA.

Merci de votre aide.

A+