OVH Cloud OVH Cloud

Autodestruction du fichier

10 réponses
Avatar
ManBas
Bonsoir à tous,
La base de données est vierge de tout parametres.
Lors de la première utilisation il est demandé des parametres qui vont
l'identifier les fois suivantes sans possibilité de modification.
Mon idée était d'enregistrer la base sous le nom des paramètres entrés, de
prévenir l'utilsateur de la nécessité de ré-ouvrir la base renommée, puis
d'autodétruire la base vierge initiale.
J'échoue dans ce dernier paragraphe.

With ActiveWorkbook
.SaveAs ThisWorkbook.Path & "\" & "BASE-" & Nom1 & "-" & Nom2 & "-Salle
" &Nom3 & ".xls"
.Close SaveChanges:=False
End With

(A ce stade j'ai une 2eme base renommée comme prévue et placée dans le
répertoire)
Aprés ça ne marche pas.

Dim chemin, nom
chemin = ActiveWorkbook.Path
nom = ActiveWorkbook.Name
ActiveWorkbook.Close False
Kill Chemin & "\" & nom 'suicide du fichier actuel
End If
Application.Quit

A votre avis ?
Merci de vos suggestions.

10 réponses

Avatar
lSteph
Bonsoir,
exemple:

Sub copkill()
Dim txtf$

With ThisWorkbook
txtf = .FullName
.SaveAs "v2" & .Name
Kill txtf
.Close False
End With

End Sub

'lSteph

ManBas a pensé très fort :
Bonsoir à tous,
La base de données est vierge de tout parametres.
Lors de la première utilisation il est demandé des parametres qui vont
l'identifier les fois suivantes sans possibilité de modification.
Mon idée était d'enregistrer la base sous le nom des paramètres entrés, de
prévenir l'utilsateur de la nécessité de ré-ouvrir la base renommée, puis
d'autodétruire la base vierge initiale.
J'échoue dans ce dernier paragraphe.

With ActiveWorkbook
.SaveAs ThisWorkbook.Path & "" & "BASE-" & Nom1 & "-" & Nom2 & "-Salle "
&Nom3 & ".xls"
.Close SaveChanges:úlse
End With

(A ce stade j'ai une 2eme base renommée comme prévue et placée dans le
répertoire)
Aprés ça ne marche pas.

Dim chemin, nom
chemin = ActiveWorkbook.Path
nom = ActiveWorkbook.Name
ActiveWorkbook.Close False
Kill Chemin & "" & nom 'suicide du fichier actuel
End If
Application.Quit

A votre avis ?
Merci de vos suggestions.


--
- -

lSteph

Avatar
ManBas
Merci de ta réponse LSteph.

Le résultat n'est pas obtenu: le code détruit effectivement le fichier mais
sans enregistrer la "version2".
J'ai essayé de combiner ce code avec une partie du mien, et là il enregistre
bien la version2 mais ne s'autodétruit plus.
J'ai aussi vérifié que la version2 n'était pas enregistrée dans une autre
répertoire.

...

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

Bonsoir,
exemple:

Sub copkill()
Dim txtf$

With ThisWorkbook
txtf = .FullName
.SaveAs "v2" & .Name
Kill txtf
.Close False
End With

End Sub

'lSteph

ManBas a pensé très fort :
Bonsoir à tous,
La base de données est vierge de tout parametres.
Lors de la première utilisation il est demandé des parametres qui vont
l'identifier les fois suivantes sans possibilité de modification.
Mon idée était d'enregistrer la base sous le nom des paramètres entrés,
de prévenir l'utilsateur de la nécessité de ré-ouvrir la base renommée,
puis d'autodétruire la base vierge initiale.
J'échoue dans ce dernier paragraphe.

With ActiveWorkbook
.SaveAs ThisWorkbook.Path & "" & "BASE-" & Nom1 & "-" & Nom2 &
"-Salle " &Nom3 & ".xls"
.Close SaveChanges:úlse
End With

(A ce stade j'ai une 2eme base renommée comme prévue et placée dans le
répertoire)
Aprés ça ne marche pas.

Dim chemin, nom
chemin = ActiveWorkbook.Path
nom = ActiveWorkbook.Name
ActiveWorkbook.Close False
Kill Chemin & "" & nom 'suicide du fichier actuel
End If
Application.Quit

A votre avis ?
Merci de vos suggestions.


--
- -

lSteph






Avatar
lSteph
Bonjour,
? chez moi ça le fait!

Un peu plus sur l'adaptation..peut-être.

@+
lSteph



ManBas avait prétendu :
Merci de ta réponse LSteph.

Le résultat n'est pas obtenu: le code détruit effectivement le fichier mais
sans enregistrer la "version2".
J'ai essayé de combiner ce code avec une partie du mien, et là il enregistre
bien la version2 mais ne s'autodétruit plus.
J'ai aussi vérifié que la version2 n'était pas enregistrée dans une autre
répertoire.

...

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

Bonsoir,
exemple:

Sub copkill()
Dim txtf$

With ThisWorkbook
txtf = .FullName
.SaveAs "v2" & .Name
Kill txtf
.Close False
End With

End Sub

'lSteph

ManBas a pensé très fort :
Bonsoir à tous,
La base de données est vierge de tout parametres.
Lors de la première utilisation il est demandé des parametres qui vont
l'identifier les fois suivantes sans possibilité de modification.
Mon idée était d'enregistrer la base sous le nom des paramètres entrés, de
prévenir l'utilsateur de la nécessité de ré-ouvrir la base renommée, puis
d'autodétruire la base vierge initiale.
J'échoue dans ce dernier paragraphe.

With ActiveWorkbook
.SaveAs ThisWorkbook.Path & "" & "BASE-" & Nom1 & "-" & Nom2 &
"-Salle " &Nom3 & ".xls"
.Close SaveChanges:úlse
End With

(A ce stade j'ai une 2eme base renommée comme prévue et placée dans le
répertoire)
Aprés ça ne marche pas.

Dim chemin, nom
chemin = ActiveWorkbook.Path
nom = ActiveWorkbook.Name
ActiveWorkbook.Close False
Kill Chemin & "" & nom 'suicide du fichier actuel
End If
Application.Quit

A votre avis ?
Merci de vos suggestions.


-- - -

lSteph






--
- -

lSteph



Avatar
ManBas
Je cherche +++
Que veux-tu dire par "Un peu plus sur l'adaptation..peut-être."?


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

Bonjour,
? chez moi ça le fait!

Un peu plus sur l'adaptation..peut-être.

@+
lSteph



ManBas avait prétendu :
Merci de ta réponse LSteph.

Le résultat n'est pas obtenu: le code détruit effectivement le fichier
mais sans enregistrer la "version2".
J'ai essayé de combiner ce code avec une partie du mien, et là il
enregistre bien la version2 mais ne s'autodétruit plus.
J'ai aussi vérifié que la version2 n'était pas enregistrée dans une autre
répertoire.

...

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

Bonsoir,
exemple:

Sub copkill()
Dim txtf$

With ThisWorkbook
txtf = .FullName
.SaveAs "v2" & .Name
Kill txtf
.Close False
End With

End Sub

'lSteph

ManBas a pensé très fort :
Bonsoir à tous,
La base de données est vierge de tout parametres.
Lors de la première utilisation il est demandé des parametres qui vont
l'identifier les fois suivantes sans possibilité de modification.
Mon idée était d'enregistrer la base sous le nom des paramètres entrés,
de prévenir l'utilsateur de la nécessité de ré-ouvrir la base renommée,
puis d'autodétruire la base vierge initiale.
J'échoue dans ce dernier paragraphe.

With ActiveWorkbook
.SaveAs ThisWorkbook.Path & "" & "BASE-" & Nom1 & "-" & Nom2 &
"-Salle " &Nom3 & ".xls"
.Close SaveChanges:úlse
End With

(A ce stade j'ai une 2eme base renommée comme prévue et placée dans le
répertoire)
Aprés ça ne marche pas.

Dim chemin, nom
chemin = ActiveWorkbook.Path
nom = ActiveWorkbook.Name
ActiveWorkbook.Close False
Kill Chemin & "" & nom 'suicide du fichier actuel
End If
Application.Quit

A votre avis ?
Merci de vos suggestions.


-- - -

lSteph






--
- -

lSteph








Avatar
lSteph
qd tu utilises tel que l'exemple que je t'ai donné cela devrait
fonctionner aussi bien que chez moi:
J'avais mis ce code dans un fichier enregistré sous suicide.xls , une
fois cette macro lancée
j'obtiens v2suicide.xls et suicide.xls a bien été "killé"

Que veux-tu dire
..L'adaptation du code..


@+

lSteph

ManBas a couché sur son écran :
Je cherche +++
Que veux-tu dire par "Un peu plus sur l'adaptation..peut-être."?


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

Bonjour,
? chez moi ça le fait!

Un peu plus sur l'adaptation..peut-être.

@+
lSteph



ManBas avait prétendu :
Merci de ta réponse LSteph.

Le résultat n'est pas obtenu: le code détruit effectivement le fichier
mais sans enregistrer la "version2".
J'ai essayé de combiner ce code avec une partie du mien, et là il
enregistre bien la version2 mais ne s'autodétruit plus.
J'ai aussi vérifié que la version2 n'était pas enregistrée dans une autre
répertoire.

...

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

Bonsoir,
exemple:

Sub copkill()
Dim txtf$

With ThisWorkbook
txtf = .FullName
.SaveAs "v2" & .Name
Kill txtf
.Close False
End With

End Sub

'lSteph

ManBas a pensé très fort :
Bonsoir à tous,
La base de données est vierge de tout parametres.
Lors de la première utilisation il est demandé des parametres qui vont
l'identifier les fois suivantes sans possibilité de modification.
Mon idée était d'enregistrer la base sous le nom des paramètres entrés,
de prévenir l'utilsateur de la nécessité de ré-ouvrir la base renommée,
puis d'autodétruire la base vierge initiale.
J'échoue dans ce dernier paragraphe.

With ActiveWorkbook
.SaveAs ThisWorkbook.Path & "" & "BASE-" & Nom1 & "-" & Nom2 &
"-Salle " &Nom3 & ".xls"
.Close SaveChanges:úlse
End With

(A ce stade j'ai une 2eme base renommée comme prévue et placée dans le
répertoire)
Aprés ça ne marche pas.

Dim chemin, nom
chemin = ActiveWorkbook.Path
nom = ActiveWorkbook.Name
ActiveWorkbook.Close False
Kill Chemin & "" & nom 'suicide du fichier actuel
End If
Application.Quit

A votre avis ?
Merci de vos suggestions.


-- - -

lSteph






-- - -

lSteph






--
- -

lSteph





Avatar
ManBas
J'ai mis ton code dans un classeur d'essai (avec rien du tout autour) et ça
le fait pas non plus.
L'autodestruction oui, mais la v2 non.

Comprends pas...

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

Bonjour,
? chez moi ça le fait!

Un peu plus sur l'adaptation..peut-être.

@+
lSteph



ManBas avait prétendu :
Merci de ta réponse LSteph.

Le résultat n'est pas obtenu: le code détruit effectivement le fichier
mais sans enregistrer la "version2".
J'ai essayé de combiner ce code avec une partie du mien, et là il
enregistre bien la version2 mais ne s'autodétruit plus.
J'ai aussi vérifié que la version2 n'était pas enregistrée dans une autre
répertoire.

...

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

Bonsoir,
exemple:

Sub copkill()
Dim txtf$

With ThisWorkbook
txtf = .FullName
.SaveAs "v2" & .Name
Kill txtf
.Close False
End With

End Sub

'lSteph

ManBas a pensé très fort :
Bonsoir à tous,
La base de données est vierge de tout parametres.
Lors de la première utilisation il est demandé des parametres qui vont
l'identifier les fois suivantes sans possibilité de modification.
Mon idée était d'enregistrer la base sous le nom des paramètres entrés,
de prévenir l'utilsateur de la nécessité de ré-ouvrir la base renommée,
puis d'autodétruire la base vierge initiale.
J'échoue dans ce dernier paragraphe.

With ActiveWorkbook
.SaveAs ThisWorkbook.Path & "" & "BASE-" & Nom1 & "-" & Nom2 &
"-Salle " &Nom3 & ".xls"
.Close SaveChanges:úlse
End With

(A ce stade j'ai une 2eme base renommée comme prévue et placée dans le
répertoire)
Aprés ça ne marche pas.

Dim chemin, nom
chemin = ActiveWorkbook.Path
nom = ActiveWorkbook.Name
ActiveWorkbook.Close False
Kill Chemin & "" & nom 'suicide du fichier actuel
End If
Application.Quit

A votre avis ?
Merci de vos suggestions.


-- - -

lSteph






--
- -

lSteph








Avatar
ManBas
Si, dans ce classeur ça le fait mais la V2 est enregistré dans le répertoire
par défaut et pas dans le répertoire actuel.

"ManBas" a écrit dans le message de news:
%
J'ai mis ton code dans un classeur d'essai (avec rien du tout autour) et
ça le fait pas non plus.
L'autodestruction oui, mais la v2 non.

Comprends pas...

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

Bonjour,
? chez moi ça le fait!

Un peu plus sur l'adaptation..peut-être.

@+
lSteph



ManBas avait prétendu :
Merci de ta réponse LSteph.

Le résultat n'est pas obtenu: le code détruit effectivement le fichier
mais sans enregistrer la "version2".
J'ai essayé de combiner ce code avec une partie du mien, et là il
enregistre bien la version2 mais ne s'autodétruit plus.
J'ai aussi vérifié que la version2 n'était pas enregistrée dans une
autre répertoire.

...

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

Bonsoir,
exemple:

Sub copkill()
Dim txtf$

With ThisWorkbook
txtf = .FullName
.SaveAs "v2" & .Name
Kill txtf
.Close False
End With

End Sub

'lSteph

ManBas a pensé très fort :
Bonsoir à tous,
La base de données est vierge de tout parametres.
Lors de la première utilisation il est demandé des parametres qui vont
l'identifier les fois suivantes sans possibilité de modification.
Mon idée était d'enregistrer la base sous le nom des paramètres
entrés, de prévenir l'utilsateur de la nécessité de ré-ouvrir la base
renommée, puis d'autodétruire la base vierge initiale.
J'échoue dans ce dernier paragraphe.

With ActiveWorkbook
.SaveAs ThisWorkbook.Path & "" & "BASE-" & Nom1 & "-" & Nom2 &
"-Salle " &Nom3 & ".xls"
.Close SaveChanges:úlse
End With

(A ce stade j'ai une 2eme base renommée comme prévue et placée dans le
répertoire)
Aprés ça ne marche pas.

Dim chemin, nom
chemin = ActiveWorkbook.Path
nom = ActiveWorkbook.Name
ActiveWorkbook.Close False
Kill Chemin & "" & nom 'suicide du fichier actuel
End If
Application.Quit

A votre avis ?
Merci de vos suggestions.


-- - -

lSteph






--
- -

lSteph













Avatar
Youky
Avec un petit rajout pour indiquer le chemin
Youky
Sub copkill()
Dim txtf$
With ThisWorkbook
txtf = .FullName
.SaveAs ThisWorkbook.Path & "" & "v2" & .Name
Kill txtf
.Close False
End With
End Sub

"ManBas" a écrit dans le message de news:
%
Si, dans ce classeur ça le fait mais la V2 est enregistré dans le
répertoire par défaut et pas dans le répertoire actuel.

"ManBas" a écrit dans le message de news:
%
J'ai mis ton code dans un classeur d'essai (avec rien du tout autour) et
ça le fait pas non plus.
L'autodestruction oui, mais la v2 non.

Comprends pas...

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

Bonjour,
? chez moi ça le fait!

Un peu plus sur l'adaptation..peut-être.

@+
lSteph



ManBas avait prétendu :
Merci de ta réponse LSteph.

Le résultat n'est pas obtenu: le code détruit effectivement le fichier
mais sans enregistrer la "version2".
J'ai essayé de combiner ce code avec une partie du mien, et là il
enregistre bien la version2 mais ne s'autodétruit plus.
J'ai aussi vérifié que la version2 n'était pas enregistrée dans une
autre répertoire.

...

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

Bonsoir,
exemple:

Sub copkill()
Dim txtf$

With ThisWorkbook
txtf = .FullName
.SaveAs "v2" & .Name
Kill txtf
.Close False
End With

End Sub

'lSteph

ManBas a pensé très fort :
Bonsoir à tous,
La base de données est vierge de tout parametres.
Lors de la première utilisation il est demandé des parametres qui
vont l'identifier les fois suivantes sans possibilité de
modification.
Mon idée était d'enregistrer la base sous le nom des paramètres
entrés, de prévenir l'utilsateur de la nécessité de ré-ouvrir la base
renommée, puis d'autodétruire la base vierge initiale.
J'échoue dans ce dernier paragraphe.

With ActiveWorkbook
.SaveAs ThisWorkbook.Path & "" & "BASE-" & Nom1 & "-" & Nom2 &
"-Salle " &Nom3 & ".xls"
.Close SaveChanges:úlse
End With

(A ce stade j'ai une 2eme base renommée comme prévue et placée dans
le répertoire)
Aprés ça ne marche pas.

Dim chemin, nom
chemin = ActiveWorkbook.Path
nom = ActiveWorkbook.Name
ActiveWorkbook.Close False
Kill Chemin & "" & nom 'suicide du fichier actuel
End If
Application.Quit

A votre avis ?
Merci de vos suggestions.


-- - -

lSteph






--
- -

lSteph

















Avatar
lSteph
Re,

Sub copkill()
Dim txtf$
With ThisWorkbook
txtf = .FullName
.SaveAs .Path & "" & "v2" & .Name
Kill txtf
.Close False
End With
End Sub

'Cordialement.

'lSteph


Si, dans ce classeur ça le fait mais la V2 est enregistré dans le r épertoire
par défaut et pas dans le répertoire actuel.

"ManBas" a écrit dans le message de news:
%
J'ai mis ton code dans un classeur d'essai (avec rien du tout autour) et
ça le fait pas non plus.
L'autodestruction oui, mais la v2 non.

Comprends pas...

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

Bonjour,
? chez moi ça le fait!

Un peu plus sur l'adaptation..peut-être.

@+
lSteph



ManBas avait prétendu :
Merci de ta réponse LSteph.

Le résultat n'est pas obtenu: le code détruit effectivement le fi chier
mais sans enregistrer la "version2".
J'ai essayé de combiner ce code avec une partie du mien, et là il
enregistre bien la version2 mais ne s'autodétruit plus.
J'ai aussi vérifié que la version2 n'était pas enregistrée da ns une
autre répertoire.

...

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

Bonsoir,
exemple:

Sub copkill()
Dim txtf$

With ThisWorkbook
txtf = .FullName
.SaveAs "v2" & .Name
Kill txtf
.Close False
End With

End Sub

'lSteph

ManBas a pensé très fort :
Bonsoir à tous,
La base de données est vierge de tout parametres.
Lors de la première utilisation il est demandé des parametres q ui vont
l'identifier les fois suivantes sans possibilité de modification.
Mon idée était d'enregistrer la base sous le nom des paramètr es
entrés, de prévenir l'utilsateur de la nécessité de ré-ou vrir la base
renommée, puis d'autodétruire la base vierge initiale.
J'échoue dans ce dernier paragraphe.

With ActiveWorkbook
.SaveAs ThisWorkbook.Path & "" & "BASE-" & Nom1 & "-" & Nom2 &
"-Salle " &Nom3 & ".xls"
.Close SaveChanges:úlse
End With

(A ce stade j'ai une 2eme base renommée comme prévue et placé e dans le
répertoire)
Aprés ça ne marche pas.

Dim chemin, nom
chemin = ActiveWorkbook.Path
nom = ActiveWorkbook.Name
ActiveWorkbook.Close False
Kill Chemin & "" & nom 'suicide du fichier actuel
End If
Application.Quit

A votre avis ?
Merci de vos suggestions.


-- - -

lSteph






--
- -

lSteph















Avatar
lSteph
Re,

Sub copkill()
Dim txtf$
With ThisWorkbook
txtf = .FullName
.SaveAs .Path & "" & "v2" & .Name
Kill txtf
.Close False
End With
End Sub

'Cordialement.

'lSteph


Si, dans ce classeur ça le fait mais la V2 est enregistré dans le r épertoire
par défaut et pas dans le répertoire actuel.

"ManBas" a écrit dans le message de news:
%
J'ai mis ton code dans un classeur d'essai (avec rien du tout autour) et
ça le fait pas non plus.
L'autodestruction oui, mais la v2 non.

Comprends pas...

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

Bonjour,
? chez moi ça le fait!

Un peu plus sur l'adaptation..peut-être.

@+
lSteph



ManBas avait prétendu :
Merci de ta réponse LSteph.

Le résultat n'est pas obtenu: le code détruit effectivement le fi chier
mais sans enregistrer la "version2".
J'ai essayé de combiner ce code avec une partie du mien, et là il
enregistre bien la version2 mais ne s'autodétruit plus.
J'ai aussi vérifié que la version2 n'était pas enregistrée da ns une
autre répertoire.

...

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

Bonsoir,
exemple:

Sub copkill()
Dim txtf$

With ThisWorkbook
txtf = .FullName
.SaveAs "v2" & .Name
Kill txtf
.Close False
End With

End Sub

'lSteph

ManBas a pensé très fort :
Bonsoir à tous,
La base de données est vierge de tout parametres.
Lors de la première utilisation il est demandé des parametres q ui vont
l'identifier les fois suivantes sans possibilité de modification.
Mon idée était d'enregistrer la base sous le nom des paramètr es
entrés, de prévenir l'utilsateur de la nécessité de ré-ou vrir la base
renommée, puis d'autodétruire la base vierge initiale.
J'échoue dans ce dernier paragraphe.

With ActiveWorkbook
.SaveAs ThisWorkbook.Path & "" & "BASE-" & Nom1 & "-" & Nom2 &
"-Salle " &Nom3 & ".xls"
.Close SaveChanges:úlse
End With

(A ce stade j'ai une 2eme base renommée comme prévue et placé e dans le
répertoire)
Aprés ça ne marche pas.

Dim chemin, nom
chemin = ActiveWorkbook.Path
nom = ActiveWorkbook.Name
ActiveWorkbook.Close False
Kill Chemin & "" & nom 'suicide du fichier actuel
End If
Application.Quit

A votre avis ?
Merci de vos suggestions.


-- - -

lSteph






--
- -

lSteph