Merci Jean-Marc de m'avoir répondu.
Afin d'y voir plus clair j'ai joint la macro complète de sauvegarde.
Précision je suis sous xp familiale, excel 2000, le disque C: est sous
win98se, le disque D: a 2 partitions, la partition D: est pour les fichiers,
et le partion E: XP avec les logiciels.
Pour la sauvegarde le fichier sur A: n'est pas écrasé lors du 1er passage,
au 2ème pas de problème
J'ai enlevé Kill A: et c'est pareil.
Je sais qu'il faut éviter les Goto mais je n'ai pas su faire autrement.
Sous win98se les macros sont en français et c'est depuis mon passage sous XP
que le problème sauvegarde se pose.
Malgré diverses modifications depuis plusieurs mois je ne trouve pas.
Ce type de sauvegarde est utilisé par d'autres fichiers, avec les mêmes
problèmes.
Je ne suis pas expert en vba aussi j'ai besoin de l'assistance de personnes
plus compétentes.
Merci.
-------------------------------------------------------------------------------------------------------------------------------------
Sub CopieClasseurXP()
' enregistre le classeur
ActiveWorkbook.Save
LigneDébut:
MsgBox "Veuillez mettre une disquette", vbOKOnly + vbExclamation,
"Sauvegarde"
On Error Resume Next
ChDir "A:\"
If Err.Number <> 0 Then
MsgBox "Pas de disquette dans le lecteur", vbOKOnly + vbInformation,
"Lecteur disquette"
GoTo LigneDébut
ElseIf Err.Number = 0 Then
MonFichier = Dir("a:\*.*")
End If
' regarde si la disquette est DépMalAs\DépAnAct.xls
If MonFichier = "DépAnAct.xls" Then
MsgBox "Dernière Sauvegarde le " & FileDateTime("a:\DépAnAct.xls")
GoTo LigneTaille
ElseIf MonFichier = "BACKUP.001" Then
GoTo LigneTaille
End If
' regarde si la disquette est vide
If MonFichier = "" Then
GoTo LigneTaille
End If
' regarde si la disquette est <> DépMalAs\DépAnAct.xls
If MonFichier <> "DépAnAct.xls" Then
MonFichier = Dir("a:\*.*")
msg = "Ce n'est pas la bonne disquette. Veuillez la changer"
Style = vkOkOnly + vbExclamation
Titre = MonFichier
Réponse = MsgBox(msg, Style, Titre)
GoTo LigneDébut
End If
' donne la taille du fichier intermédiaire sur C
MatailleE = FileLen("e:\DépAnAct.xls")
' donne la taile du fichier disquette
MatailleA = FileLen("a:\DépAnAct.xls")
' compare les fichiers
' si fichiers identiques la copie est bonne
If MatailleE = MatailleA Then
Application.StatusBar = Space(15) & "SAUVEGARDE DEPENSES TERMINEE"
msg = "Fichier Dépenses_Recettes taille " & MatailleE & Chr(13) &
Chr(10) & Chr(10)
msg1 = "Sauvegarde terminée avec succès"
Style = vkOkOnly
Réponse = MsgBox(msg + msg1, Style)
GoTo LigneQuitter
' si fichiers différents erreur sauvegarde
ElseIf MatailleE <> MatailleA Then
msg1 = "Taille fichier disque " & MatailleE & vbLf
'retour ligne
msg2 = "Taille fichier disquette " & MatailleA & vbLf &
vbNewLine 'retour ligne + saut de ligne
msg3 = "Veuillez vérifier votre disquette par un formatage "
Style = vbOKOnly + vbExclamation
Title = "Erreur sauvegarde"
Réponse = MsgBox(msg1 + msg2 + msg3, Style, Title)
End If
LigneQuitter:
' pour la prochaine sauvegarde, supprime du disque e le fichier créé
Kill "e:\DépAnAct.xls"
Call Auto_Close
LigneFin:
' retourne à l'affichage du bureau
Application.Quit
End Sub
Sub sauvdisquetteXP()
RetVal = Shell("e:\sXPdépe.bat", 1)
End Sub
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
jean-marc
"André" wrote in message news:dfgp40$dt$
Merci Jean-Marc de m'avoir répondu. Afin d'y voir plus clair j'ai joint la macro complète de sauvegarde. Précision je suis sous xp familiale, excel 2000, le disque C: est sous win98se, le disque D: a 2 partitions, la partition D: est pour les
fichiers,
et le partion E: XP avec les logiciels. Pour la sauvegarde le fichier sur A: n'est pas écrasé lors du 1er passage, au 2ème pas de problème J'ai enlevé Kill A: et c'est pareil. Je sais qu'il faut éviter les Goto mais je n'ai pas su faire autrement. Sous win98se les macros sont en français et c'est depuis mon passage sous
XP
que le problème sauvegarde se pose. Malgré diverses modifications depuis plusieurs mois je ne trouve pas. Ce type de sauvegarde est utilisé par d'autres fichiers, avec les mêmes problèmes.
Hello,
j'ai lu ton code; Il y a plusieurs choses que je ne comprend pas. J'aimerais comprendre avant d'essayer de debugger.
Il y a des commentaires qui semblent contredire le code qui va en dessous, par exemple: ' donne la taille du fichier intermédiaire sur C MatailleE = FileLen("e:DépAnAct.xls")
On est sur C ou sur E ?
A un autre endroit, on vérifie quelque chose sur D: LigneTaille: ChDir "D:DépMalAs" MatailleD = FileLen("DépAnAct.xls")
Que vient il faire la ?
D'autre part, tu écris:
ChDir "D:DépMalAs"
Ne veux tu pas plutot dire:
ChDir "D:DépMalAs"
Finalement, comme les commentaires ne correspondent pas au code, et comme il semnble y avoir une gestion des lecteurs un peu compliquéé,le plus simple n'est il pas d'expliquer ici EXACTEMENT ce que dois faire le programme ?
Par exactement, je veux dire donner les spécifications exactes du problème.
-- Jean-marc
"André" <andre.charrier@tiscali.fr> wrote in message
news:dfgp40$dt$1@news.tiscali.fr...
Merci Jean-Marc de m'avoir répondu.
Afin d'y voir plus clair j'ai joint la macro complète de sauvegarde.
Précision je suis sous xp familiale, excel 2000, le disque C: est sous
win98se, le disque D: a 2 partitions, la partition D: est pour les
fichiers,
et le partion E: XP avec les logiciels.
Pour la sauvegarde le fichier sur A: n'est pas écrasé lors du 1er passage,
au 2ème pas de problème
J'ai enlevé Kill A: et c'est pareil.
Je sais qu'il faut éviter les Goto mais je n'ai pas su faire autrement.
Sous win98se les macros sont en français et c'est depuis mon passage sous
XP
que le problème sauvegarde se pose.
Malgré diverses modifications depuis plusieurs mois je ne trouve pas.
Ce type de sauvegarde est utilisé par d'autres fichiers, avec les mêmes
problèmes.
Hello,
j'ai lu ton code; Il y a plusieurs choses que je ne comprend pas.
J'aimerais comprendre avant d'essayer de debugger.
Il y a des commentaires qui semblent contredire le code qui
va en dessous, par exemple:
' donne la taille du fichier intermédiaire sur C
MatailleE = FileLen("e:DépAnAct.xls")
On est sur C ou sur E ?
A un autre endroit, on vérifie quelque chose sur D:
LigneTaille:
ChDir "D:DépMalAs"
MatailleD = FileLen("DépAnAct.xls")
Que vient il faire la ?
D'autre part, tu écris:
ChDir "D:DépMalAs"
Ne veux tu pas plutot dire:
ChDir "D:DépMalAs"
Finalement, comme les commentaires ne correspondent pas au code,
et comme il semnble y avoir une gestion des lecteurs un peu
compliquéé,le plus simple n'est il pas d'expliquer ici
EXACTEMENT ce que dois faire le programme ?
Par exactement, je veux dire donner les spécifications exactes du
problème.
Merci Jean-Marc de m'avoir répondu. Afin d'y voir plus clair j'ai joint la macro complète de sauvegarde. Précision je suis sous xp familiale, excel 2000, le disque C: est sous win98se, le disque D: a 2 partitions, la partition D: est pour les
fichiers,
et le partion E: XP avec les logiciels. Pour la sauvegarde le fichier sur A: n'est pas écrasé lors du 1er passage, au 2ème pas de problème J'ai enlevé Kill A: et c'est pareil. Je sais qu'il faut éviter les Goto mais je n'ai pas su faire autrement. Sous win98se les macros sont en français et c'est depuis mon passage sous
XP
que le problème sauvegarde se pose. Malgré diverses modifications depuis plusieurs mois je ne trouve pas. Ce type de sauvegarde est utilisé par d'autres fichiers, avec les mêmes problèmes.
Hello,
j'ai lu ton code; Il y a plusieurs choses que je ne comprend pas. J'aimerais comprendre avant d'essayer de debugger.
Il y a des commentaires qui semblent contredire le code qui va en dessous, par exemple: ' donne la taille du fichier intermédiaire sur C MatailleE = FileLen("e:DépAnAct.xls")
On est sur C ou sur E ?
A un autre endroit, on vérifie quelque chose sur D: LigneTaille: ChDir "D:DépMalAs" MatailleD = FileLen("DépAnAct.xls")
Que vient il faire la ?
D'autre part, tu écris:
ChDir "D:DépMalAs"
Ne veux tu pas plutot dire:
ChDir "D:DépMalAs"
Finalement, comme les commentaires ne correspondent pas au code, et comme il semnble y avoir une gestion des lecteurs un peu compliquéé,le plus simple n'est il pas d'expliquer ici EXACTEMENT ce que dois faire le programme ?
Par exactement, je veux dire donner les spécifications exactes du problème.
-- Jean-marc
André
Jean-Marc,
Je te donne les réponses sous les questions. Merci.
"jean-marc" a écrit dans le message de news: 431c243c$0$21810$
"André" wrote in message news:dfgp40$dt$
Merci Jean-Marc de m'avoir répondu. Afin d'y voir plus clair j'ai joint la macro complète de sauvegarde. Précision je suis sous xp familiale, excel 2000, le disque C: est sous win98se, le disque D: a 2 partitions, la partition D: est pour les
fichiers,
et le partion E: XP avec les logiciels. Pour la sauvegarde le fichier sur A: n'est pas écrasé lors du 1er passage, au 2ème pas de problème J'ai enlevé Kill A: et c'est pareil. Je sais qu'il faut éviter les Goto mais je n'ai pas su faire autrement. Sous win98se les macros sont en français et c'est depuis mon passage sous
XP
que le problème sauvegarde se pose. Malgré diverses modifications depuis plusieurs mois je ne trouve pas. Ce type de sauvegarde est utilisé par d'autres fichiers, avec les mêmes problèmes.
Hello,
j'ai lu ton code; Il y a plusieurs choses que je ne comprend pas. J'aimerais comprendre avant d'essayer de debugger.
Il y a des commentaires qui semblent contredire le code qui va en dessous, par exemple: ' donne la taille du fichier intermédiaire sur C MatailleE = FileLen("e:DépAnAct.xls")
On est sur C ou sur E ?
......Il s'agit bien de E. Commentaire non corrigé lors du passage sous ......Office 2000, oubli de ma part ---------------------------------------------------------------------------------------------------------
A un autre endroit, on vérifie quelque chose sur D: LigneTaille: ChDir "D:DépMalAs" MatailleD = FileLen("DépAnAct.xls")
Que vient il faire la ?
....Le disque D contient les dossiers et fichiers que je crée. Sur D "DépMalAs" est le dossier contenant le fichier"DépAnAct.xls", en clair DépensesAnnéeActuelle. J'ai entre autre un dossier Photos... ....E: reçoit les programmes comme Office2000... ------------------------------------------------------------------------------------------------------------
D'autre part, tu écris:
ChDir "D:DépMalAs"
Ne veux tu pas plutot dire:
ChDir "D:DépMalAs"
.......Tu as raison -------------------------------------------------------------------------------------------------------------
Finalement, comme les commentaires ne correspondent pas au code, et comme il semnble y avoir une gestion des lecteurs un peu compliquéé,le plus simple n'est il pas d'expliquer ici EXACTEMENT ce que dois faire le programme ?
.....Après avoir rentré les nouvelles données dans DépAnAct.xls, je sauvegarde tout le fichier sur la disquette A: .....Avant je vérifie qu'il y a une disquette, que cette disquette est bien DépAnAct( sauvegarde précédente ), si oui .....j'indique la date de la dernière sauvegarde et par Goto je vais sur LigneTaille. .....A ce niveau vérification que le fichier tient sur une disquette, sinon sauvegarde par Backup, et je sauvegarde le .....nouveau fichier.
.....Si la disquette est une nouvelle disquette formatée pas de problème .....Si la disquette contient déjà un fichier DépAnAct, le nouveau fichier devrait écraser l'ancien, ce qui n'est pas le cas .....au lancement de la 1ère sauvegarde .....en relancant la sauvegarde le nouveau fichier est bien enregistré .....comparaison entre la taille sur D: et sur la disquette A: pour vérifier que la sauvegarde est bonne
.....Ne réussissant pas à écraser la disquette la 1ère fois, j'ai essayé d'effacer la disquette A: par Kill "A:DépAnAct" ce qui ne s'accomplit pas, j'ai essayé Kill "*.*", même problème. J'ai donc effacé cette ligne.
....Je précise avec Office 97 sous win98se aucun problème, c'est depuis Office 2000 avec XP que le problème se pose. ....Je pense qu'à la place de Kill je devrais utiliser une instruction de formatage de disquette, hélas sous 2000 je ne connais ....pas le nom de cette instruction si elle existe. ....Voilà où je patauge. -------------------------------------------------------------------------------------------------------------------------------
Par exactement, je veux dire donner les spécifications exactes du problème.
-- Jean-marc
Jean-Marc,
Je te donne les réponses sous les questions.
Merci.
"jean-marc" <aa@BB.com> a écrit dans le message de news:
431c243c$0$21810$ba620e4c@news.skynet.be...
"André" <andre.charrier@tiscali.fr> wrote in message
news:dfgp40$dt$1@news.tiscali.fr...
Merci Jean-Marc de m'avoir répondu.
Afin d'y voir plus clair j'ai joint la macro complète de sauvegarde.
Précision je suis sous xp familiale, excel 2000, le disque C: est sous
win98se, le disque D: a 2 partitions, la partition D: est pour les
fichiers,
et le partion E: XP avec les logiciels.
Pour la sauvegarde le fichier sur A: n'est pas écrasé lors du 1er
passage,
au 2ème pas de problème
J'ai enlevé Kill A: et c'est pareil.
Je sais qu'il faut éviter les Goto mais je n'ai pas su faire autrement.
Sous win98se les macros sont en français et c'est depuis mon passage sous
XP
que le problème sauvegarde se pose.
Malgré diverses modifications depuis plusieurs mois je ne trouve pas.
Ce type de sauvegarde est utilisé par d'autres fichiers, avec les mêmes
problèmes.
Hello,
j'ai lu ton code; Il y a plusieurs choses que je ne comprend pas.
J'aimerais comprendre avant d'essayer de debugger.
Il y a des commentaires qui semblent contredire le code qui
va en dessous, par exemple:
' donne la taille du fichier intermédiaire sur C
MatailleE = FileLen("e:DépAnAct.xls")
On est sur C ou sur E ?
......Il s'agit bien de E. Commentaire non corrigé lors du passage sous
......Office 2000, oubli de ma part
---------------------------------------------------------------------------------------------------------
A un autre endroit, on vérifie quelque chose sur D:
LigneTaille:
ChDir "D:DépMalAs"
MatailleD = FileLen("DépAnAct.xls")
Que vient il faire la ?
....Le disque D contient les dossiers et fichiers que je crée.
Sur D "DépMalAs" est le dossier contenant le fichier"DépAnAct.xls", en
clair DépensesAnnéeActuelle.
J'ai entre autre un dossier Photos...
....E: reçoit les programmes comme Office2000...
------------------------------------------------------------------------------------------------------------
D'autre part, tu écris:
ChDir "D:DépMalAs"
Ne veux tu pas plutot dire:
ChDir "D:DépMalAs"
.......Tu as raison
-------------------------------------------------------------------------------------------------------------
Finalement, comme les commentaires ne correspondent pas au code,
et comme il semnble y avoir une gestion des lecteurs un peu
compliquéé,le plus simple n'est il pas d'expliquer ici
EXACTEMENT ce que dois faire le programme ?
.....Après avoir rentré les nouvelles données dans DépAnAct.xls, je
sauvegarde tout le fichier sur la disquette A:
.....Avant je vérifie qu'il y a une disquette, que cette disquette est bien
DépAnAct( sauvegarde précédente ), si oui
.....j'indique la date de la dernière sauvegarde et par Goto je vais sur
LigneTaille.
.....A ce niveau vérification que le fichier tient sur une disquette, sinon
sauvegarde par Backup, et je sauvegarde le
.....nouveau fichier.
.....Si la disquette est une nouvelle disquette formatée pas de problème
.....Si la disquette contient déjà un fichier DépAnAct, le nouveau fichier
devrait écraser l'ancien, ce qui n'est pas le cas
.....au lancement de la 1ère sauvegarde
.....en relancant la sauvegarde le nouveau fichier est bien enregistré
.....comparaison entre la taille sur D: et sur la disquette A: pour vérifier
que la sauvegarde est bonne
.....Ne réussissant pas à écraser la disquette la 1ère fois, j'ai essayé
d'effacer la disquette A: par Kill "A:DépAnAct" ce qui ne s'accomplit pas,
j'ai essayé Kill "*.*", même problème. J'ai donc effacé cette ligne.
....Je précise avec Office 97 sous win98se aucun problème, c'est depuis
Office 2000 avec XP que le problème se pose.
....Je pense qu'à la place de Kill je devrais utiliser une instruction de
formatage de disquette, hélas sous 2000 je ne connais
....pas le nom de cette instruction si elle existe.
....Voilà où je patauge.
-------------------------------------------------------------------------------------------------------------------------------
Par exactement, je veux dire donner les spécifications exactes du
problème.
Je te donne les réponses sous les questions. Merci.
"jean-marc" a écrit dans le message de news: 431c243c$0$21810$
"André" wrote in message news:dfgp40$dt$
Merci Jean-Marc de m'avoir répondu. Afin d'y voir plus clair j'ai joint la macro complète de sauvegarde. Précision je suis sous xp familiale, excel 2000, le disque C: est sous win98se, le disque D: a 2 partitions, la partition D: est pour les
fichiers,
et le partion E: XP avec les logiciels. Pour la sauvegarde le fichier sur A: n'est pas écrasé lors du 1er passage, au 2ème pas de problème J'ai enlevé Kill A: et c'est pareil. Je sais qu'il faut éviter les Goto mais je n'ai pas su faire autrement. Sous win98se les macros sont en français et c'est depuis mon passage sous
XP
que le problème sauvegarde se pose. Malgré diverses modifications depuis plusieurs mois je ne trouve pas. Ce type de sauvegarde est utilisé par d'autres fichiers, avec les mêmes problèmes.
Hello,
j'ai lu ton code; Il y a plusieurs choses que je ne comprend pas. J'aimerais comprendre avant d'essayer de debugger.
Il y a des commentaires qui semblent contredire le code qui va en dessous, par exemple: ' donne la taille du fichier intermédiaire sur C MatailleE = FileLen("e:DépAnAct.xls")
On est sur C ou sur E ?
......Il s'agit bien de E. Commentaire non corrigé lors du passage sous ......Office 2000, oubli de ma part ---------------------------------------------------------------------------------------------------------
A un autre endroit, on vérifie quelque chose sur D: LigneTaille: ChDir "D:DépMalAs" MatailleD = FileLen("DépAnAct.xls")
Que vient il faire la ?
....Le disque D contient les dossiers et fichiers que je crée. Sur D "DépMalAs" est le dossier contenant le fichier"DépAnAct.xls", en clair DépensesAnnéeActuelle. J'ai entre autre un dossier Photos... ....E: reçoit les programmes comme Office2000... ------------------------------------------------------------------------------------------------------------
D'autre part, tu écris:
ChDir "D:DépMalAs"
Ne veux tu pas plutot dire:
ChDir "D:DépMalAs"
.......Tu as raison -------------------------------------------------------------------------------------------------------------
Finalement, comme les commentaires ne correspondent pas au code, et comme il semnble y avoir une gestion des lecteurs un peu compliquéé,le plus simple n'est il pas d'expliquer ici EXACTEMENT ce que dois faire le programme ?
.....Après avoir rentré les nouvelles données dans DépAnAct.xls, je sauvegarde tout le fichier sur la disquette A: .....Avant je vérifie qu'il y a une disquette, que cette disquette est bien DépAnAct( sauvegarde précédente ), si oui .....j'indique la date de la dernière sauvegarde et par Goto je vais sur LigneTaille. .....A ce niveau vérification que le fichier tient sur une disquette, sinon sauvegarde par Backup, et je sauvegarde le .....nouveau fichier.
.....Si la disquette est une nouvelle disquette formatée pas de problème .....Si la disquette contient déjà un fichier DépAnAct, le nouveau fichier devrait écraser l'ancien, ce qui n'est pas le cas .....au lancement de la 1ère sauvegarde .....en relancant la sauvegarde le nouveau fichier est bien enregistré .....comparaison entre la taille sur D: et sur la disquette A: pour vérifier que la sauvegarde est bonne
.....Ne réussissant pas à écraser la disquette la 1ère fois, j'ai essayé d'effacer la disquette A: par Kill "A:DépAnAct" ce qui ne s'accomplit pas, j'ai essayé Kill "*.*", même problème. J'ai donc effacé cette ligne.
....Je précise avec Office 97 sous win98se aucun problème, c'est depuis Office 2000 avec XP que le problème se pose. ....Je pense qu'à la place de Kill je devrais utiliser une instruction de formatage de disquette, hélas sous 2000 je ne connais ....pas le nom de cette instruction si elle existe. ....Voilà où je patauge. -------------------------------------------------------------------------------------------------------------------------------
Par exactement, je veux dire donner les spécifications exactes du problème.