Bonjour à tous,
J'ai une macro :
Private Sub Workbook_BeforeClose(Cancel As Boolean)
ActiveWorkbook.SaveAs _
Filename:="lag1publicDevis_Dentaires" _
& Sheets("DEVIS").[E2] & "_" & Format(Date, "yymmdd") & "_" &
Sheets("DEVIS").[A2] & ".xls"
ThisWorkbook.Saved = True
End Sub
qui me permet d'enregistrer directement le fichier avec un nom obligatoire.
Le problème se situe au moment ou on ouvre une seconde fois le fichier.
Qaund on le ferme l'erreur macro apparaît "Erreur d'exécution '1004'.
Comment puis éviter ce message avec ou sans enregistrement du même fichier.
Merci d'avance
Cordialement
TITUS
Bonjour à tous,
J'ai une macro :
Private Sub Workbook_BeforeClose(Cancel As Boolean)
ActiveWorkbook.SaveAs _
Filename:="\lag1publicDevis_Dentaires" _
& Sheets("DEVIS").[E2] & "_" & Format(Date, "yymmdd") & "_" &
Sheets("DEVIS").[A2] & ".xls"
ThisWorkbook.Saved = True
End Sub
qui me permet d'enregistrer directement le fichier avec un nom obligatoire.
Le problème se situe au moment ou on ouvre une seconde fois le fichier.
Qaund on le ferme l'erreur macro apparaît "Erreur d'exécution '1004'.
Comment puis éviter ce message avec ou sans enregistrement du même fichier.
Merci d'avance
Cordialement
TITUS
Bonjour à tous,
J'ai une macro :
Private Sub Workbook_BeforeClose(Cancel As Boolean)
ActiveWorkbook.SaveAs _
Filename:="lag1publicDevis_Dentaires" _
& Sheets("DEVIS").[E2] & "_" & Format(Date, "yymmdd") & "_" &
Sheets("DEVIS").[A2] & ".xls"
ThisWorkbook.Saved = True
End Sub
qui me permet d'enregistrer directement le fichier avec un nom obligatoire.
Le problème se situe au moment ou on ouvre une seconde fois le fichier.
Qaund on le ferme l'erreur macro apparaît "Erreur d'exécution '1004'.
Comment puis éviter ce message avec ou sans enregistrement du même fichier.
Merci d'avance
Cordialement
TITUS
Salut TITUS
Rajoute en début de code cette ligne :
Application.DisplayAlerts = False
Celà devrait faire
Dis moi !!!Bonjour à tous,
J'ai une macro :
Private Sub Workbook_BeforeClose(Cancel As Boolean)
ActiveWorkbook.SaveAs _
Filename:="lag1publicDevis_Dentaires" _
& Sheets("DEVIS").[E2] & "_" & Format(Date, "yymmdd") & "_" &
Sheets("DEVIS").[A2] & ".xls"
ThisWorkbook.Saved = True
End Sub
qui me permet d'enregistrer directement le fichier avec un nom obligatoire.
Le problème se situe au moment ou on ouvre une seconde fois le fichier.
Qaund on le ferme l'erreur macro apparaît "Erreur d'exécution '1004'.
Comment puis éviter ce message avec ou sans enregistrement du même fichier.
Merci d'avance
Cordialement
TITUS
Salut TITUS
Rajoute en début de code cette ligne :
Application.DisplayAlerts = False
Celà devrait faire
Dis moi !!!
Bonjour à tous,
J'ai une macro :
Private Sub Workbook_BeforeClose(Cancel As Boolean)
ActiveWorkbook.SaveAs _
Filename:="\lag1publicDevis_Dentaires" _
& Sheets("DEVIS").[E2] & "_" & Format(Date, "yymmdd") & "_" &
Sheets("DEVIS").[A2] & ".xls"
ThisWorkbook.Saved = True
End Sub
qui me permet d'enregistrer directement le fichier avec un nom obligatoire.
Le problème se situe au moment ou on ouvre une seconde fois le fichier.
Qaund on le ferme l'erreur macro apparaît "Erreur d'exécution '1004'.
Comment puis éviter ce message avec ou sans enregistrement du même fichier.
Merci d'avance
Cordialement
TITUS
Salut TITUS
Rajoute en début de code cette ligne :
Application.DisplayAlerts = False
Celà devrait faire
Dis moi !!!Bonjour à tous,
J'ai une macro :
Private Sub Workbook_BeforeClose(Cancel As Boolean)
ActiveWorkbook.SaveAs _
Filename:="lag1publicDevis_Dentaires" _
& Sheets("DEVIS").[E2] & "_" & Format(Date, "yymmdd") & "_" &
Sheets("DEVIS").[A2] & ".xls"
ThisWorkbook.Saved = True
End Sub
qui me permet d'enregistrer directement le fichier avec un nom obligatoire.
Le problème se situe au moment ou on ouvre une seconde fois le fichier.
Qaund on le ferme l'erreur macro apparaît "Erreur d'exécution '1004'.
Comment puis éviter ce message avec ou sans enregistrement du même fichier.
Merci d'avance
Cordialement
TITUS
Désolée mais ca plante EXCEL.
J'ai positionner le texte après
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Me suis-je trompée !Salut TITUS
Rajoute en début de code cette ligne :
Application.DisplayAlerts = False
Celà devrait faire
Dis moi !!!Bonjour à tous,
J'ai une macro :
Private Sub Workbook_BeforeClose(Cancel As Boolean)
ActiveWorkbook.SaveAs _
Filename:="lag1publicDevis_Dentaires" _
& Sheets("DEVIS").[E2] & "_" & Format(Date, "yymmdd") & "_" &
Sheets("DEVIS").[A2] & ".xls"
ThisWorkbook.Saved = True
End Sub
qui me permet d'enregistrer directement le fichier avec un nom
obligatoire.
Le problème se situe au moment ou on ouvre une seconde fois le fichier.
Qaund on le ferme l'erreur macro apparaît "Erreur d'exécution '1004'.
Comment puis éviter ce message avec ou sans enregistrement du même
fichier.
Merci d'avance
Cordialement
TITUS
Désolée mais ca plante EXCEL.
J'ai positionner le texte après
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Me suis-je trompée !
Salut TITUS
Rajoute en début de code cette ligne :
Application.DisplayAlerts = False
Celà devrait faire
Dis moi !!!
Bonjour à tous,
J'ai une macro :
Private Sub Workbook_BeforeClose(Cancel As Boolean)
ActiveWorkbook.SaveAs _
Filename:="\lag1publicDevis_Dentaires" _
& Sheets("DEVIS").[E2] & "_" & Format(Date, "yymmdd") & "_" &
Sheets("DEVIS").[A2] & ".xls"
ThisWorkbook.Saved = True
End Sub
qui me permet d'enregistrer directement le fichier avec un nom
obligatoire.
Le problème se situe au moment ou on ouvre une seconde fois le fichier.
Qaund on le ferme l'erreur macro apparaît "Erreur d'exécution '1004'.
Comment puis éviter ce message avec ou sans enregistrement du même
fichier.
Merci d'avance
Cordialement
TITUS
Désolée mais ca plante EXCEL.
J'ai positionner le texte après
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Me suis-je trompée !Salut TITUS
Rajoute en début de code cette ligne :
Application.DisplayAlerts = False
Celà devrait faire
Dis moi !!!Bonjour à tous,
J'ai une macro :
Private Sub Workbook_BeforeClose(Cancel As Boolean)
ActiveWorkbook.SaveAs _
Filename:="lag1publicDevis_Dentaires" _
& Sheets("DEVIS").[E2] & "_" & Format(Date, "yymmdd") & "_" &
Sheets("DEVIS").[A2] & ".xls"
ThisWorkbook.Saved = True
End Sub
qui me permet d'enregistrer directement le fichier avec un nom
obligatoire.
Le problème se situe au moment ou on ouvre une seconde fois le fichier.
Qaund on le ferme l'erreur macro apparaît "Erreur d'exécution '1004'.
Comment puis éviter ce message avec ou sans enregistrement du même
fichier.
Merci d'avance
Cordialement
TITUS
bonjour titus
en ajoutant ce texte après la ligne Private Sub.....
On Error Resume Next
peut-être que cela ira mieux
jps
"TITUS" a écrit dans le message de news:Désolée mais ca plante EXCEL.
J'ai positionner le texte après
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Me suis-je trompée !Salut TITUS
Rajoute en début de code cette ligne :
Application.DisplayAlerts = False
Celà devrait faire
Dis moi !!!Bonjour à tous,
J'ai une macro :
Private Sub Workbook_BeforeClose(Cancel As Boolean)
ActiveWorkbook.SaveAs _
Filename:="lag1publicDevis_Dentaires" _
& Sheets("DEVIS").[E2] & "_" & Format(Date, "yymmdd") & "_" &
Sheets("DEVIS").[A2] & ".xls"
ThisWorkbook.Saved = True
End Sub
qui me permet d'enregistrer directement le fichier avec un nom
obligatoire.
Le problème se situe au moment ou on ouvre une seconde fois le fichier.
Qaund on le ferme l'erreur macro apparaît "Erreur d'exécution '1004'.
Comment puis éviter ce message avec ou sans enregistrement du même
fichier.
Merci d'avance
Cordialement
TITUS
bonjour titus
en ajoutant ce texte après la ligne Private Sub.....
On Error Resume Next
peut-être que cela ira mieux
jps
"TITUS" <TITUS@discussions.microsoft.com> a écrit dans le message de news:
FB9C2261-7D6B-42CB-BA20-F7A68BC15431@microsoft.com...
Désolée mais ca plante EXCEL.
J'ai positionner le texte après
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Me suis-je trompée !
Salut TITUS
Rajoute en début de code cette ligne :
Application.DisplayAlerts = False
Celà devrait faire
Dis moi !!!
Bonjour à tous,
J'ai une macro :
Private Sub Workbook_BeforeClose(Cancel As Boolean)
ActiveWorkbook.SaveAs _
Filename:="\lag1publicDevis_Dentaires" _
& Sheets("DEVIS").[E2] & "_" & Format(Date, "yymmdd") & "_" &
Sheets("DEVIS").[A2] & ".xls"
ThisWorkbook.Saved = True
End Sub
qui me permet d'enregistrer directement le fichier avec un nom
obligatoire.
Le problème se situe au moment ou on ouvre une seconde fois le fichier.
Qaund on le ferme l'erreur macro apparaît "Erreur d'exécution '1004'.
Comment puis éviter ce message avec ou sans enregistrement du même
fichier.
Merci d'avance
Cordialement
TITUS
bonjour titus
en ajoutant ce texte après la ligne Private Sub.....
On Error Resume Next
peut-être que cela ira mieux
jps
"TITUS" a écrit dans le message de news:Désolée mais ca plante EXCEL.
J'ai positionner le texte après
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Me suis-je trompée !Salut TITUS
Rajoute en début de code cette ligne :
Application.DisplayAlerts = False
Celà devrait faire
Dis moi !!!Bonjour à tous,
J'ai une macro :
Private Sub Workbook_BeforeClose(Cancel As Boolean)
ActiveWorkbook.SaveAs _
Filename:="lag1publicDevis_Dentaires" _
& Sheets("DEVIS").[E2] & "_" & Format(Date, "yymmdd") & "_" &
Sheets("DEVIS").[A2] & ".xls"
ThisWorkbook.Saved = True
End Sub
qui me permet d'enregistrer directement le fichier avec un nom
obligatoire.
Le problème se situe au moment ou on ouvre une seconde fois le fichier.
Qaund on le ferme l'erreur macro apparaît "Erreur d'exécution '1004'.
Comment puis éviter ce message avec ou sans enregistrement du même
fichier.
Merci d'avance
Cordialement
TITUS
| On Error Resume Next
Si je peux me permettre JPS, cette ligne de code doit être
utilisé seulement et seulement si on a identifié le type d'erreur
susceptible de se produire par le code que l'on a écrit et
que l'on s'est assuré que l'erreur produite n'aurait pas d'incidence
sur l'exécution du reste du code de la procédure !!!
Dans le cas de cette ficelle, tu ne pourras jamais faire enregistrer
à excel un fichier dont le nom contient au moins un caractère
défendu > < | / * ? même si tu utilises ta commande.
Voir autre réponse sur le fil pour plus d'informations.
| On Error Resume Next
Si je peux me permettre JPS, cette ligne de code doit être
utilisé seulement et seulement si on a identifié le type d'erreur
susceptible de se produire par le code que l'on a écrit et
que l'on s'est assuré que l'erreur produite n'aurait pas d'incidence
sur l'exécution du reste du code de la procédure !!!
Dans le cas de cette ficelle, tu ne pourras jamais faire enregistrer
à excel un fichier dont le nom contient au moins un caractère
défendu > < | / * ? même si tu utilises ta commande.
Voir autre réponse sur le fil pour plus d'informations.
| On Error Resume Next
Si je peux me permettre JPS, cette ligne de code doit être
utilisé seulement et seulement si on a identifié le type d'erreur
susceptible de se produire par le code que l'on a écrit et
que l'on s'est assuré que l'erreur produite n'aurait pas d'incidence
sur l'exécution du reste du code de la procédure !!!
Dans le cas de cette ficelle, tu ne pourras jamais faire enregistrer
à excel un fichier dont le nom contient au moins un caractère
défendu > < | / * ? même si tu utilises ta commande.
Voir autre réponse sur le fil pour plus d'informations.
Que Titus soit content tant mieux. ! , la façon d'écrire
son code est alambiquée pour demeurer poli.
Tu copies cette macro dans le THISWORKBOOK DU CLASSEUR
DE LA FENÊTRE VBA et tu Exécutes cette macro :
Sub Test()
Msgbox sheets(1).name
End sub
A ) Si tu as un classeur ouvert, elle te retourne le nom de l'onglet
de la première feuille du classeur où le code est écrit
B ) insère un autre classeur avec un nom différent de l'onglet
de la première feuille du classeur qui était ouvert. Assure-toi
que c'est le nouveau classeur qui est actif et exécutes à nouveau
la macro, il continue d'afficher le nom de la feuille du classeur où
la macro a été écrite.
Pourquoi ? Parce que tu es, comme la procédure à titus, dans le module
de classe ThisWorkbook (Ce module c'est l'objet représentant le classeur
lui-même)
dans un tel cas, les objets dont les références sont incomplètes sont
réputées
appartenir au classeur dans lequel le code est écrit contrairement au
module standard.
;-)))
C'est le même ostie de truc que les Range() qui sont écrits dans des
modules
feuillles. Pour signifier une plage de cellules qui appartient à un autre
feuille
il faut ajouter à la plage le nom de la feuille à laquelle appartient la
plage de cellules.
IL n'en demeure pas moins vrai que la ligne de code "On error resume next"
se doit d'être utilisé seulement et seulement si on SAIT le type d'erreur
que
la procédure est sensé rencontrer.
Que Titus soit content tant mieux. ! , la façon d'écrire
son code est alambiquée pour demeurer poli.
Tu copies cette macro dans le THISWORKBOOK DU CLASSEUR
DE LA FENÊTRE VBA et tu Exécutes cette macro :
Sub Test()
Msgbox sheets(1).name
End sub
A ) Si tu as un classeur ouvert, elle te retourne le nom de l'onglet
de la première feuille du classeur où le code est écrit
B ) insère un autre classeur avec un nom différent de l'onglet
de la première feuille du classeur qui était ouvert. Assure-toi
que c'est le nouveau classeur qui est actif et exécutes à nouveau
la macro, il continue d'afficher le nom de la feuille du classeur où
la macro a été écrite.
Pourquoi ? Parce que tu es, comme la procédure à titus, dans le module
de classe ThisWorkbook (Ce module c'est l'objet représentant le classeur
lui-même)
dans un tel cas, les objets dont les références sont incomplètes sont
réputées
appartenir au classeur dans lequel le code est écrit contrairement au
module standard.
;-)))
C'est le même ostie de truc que les Range() qui sont écrits dans des
modules
feuillles. Pour signifier une plage de cellules qui appartient à un autre
feuille
il faut ajouter à la plage le nom de la feuille à laquelle appartient la
plage de cellules.
IL n'en demeure pas moins vrai que la ligne de code "On error resume next"
se doit d'être utilisé seulement et seulement si on SAIT le type d'erreur
que
la procédure est sensé rencontrer.
Que Titus soit content tant mieux. ! , la façon d'écrire
son code est alambiquée pour demeurer poli.
Tu copies cette macro dans le THISWORKBOOK DU CLASSEUR
DE LA FENÊTRE VBA et tu Exécutes cette macro :
Sub Test()
Msgbox sheets(1).name
End sub
A ) Si tu as un classeur ouvert, elle te retourne le nom de l'onglet
de la première feuille du classeur où le code est écrit
B ) insère un autre classeur avec un nom différent de l'onglet
de la première feuille du classeur qui était ouvert. Assure-toi
que c'est le nouveau classeur qui est actif et exécutes à nouveau
la macro, il continue d'afficher le nom de la feuille du classeur où
la macro a été écrite.
Pourquoi ? Parce que tu es, comme la procédure à titus, dans le module
de classe ThisWorkbook (Ce module c'est l'objet représentant le classeur
lui-même)
dans un tel cas, les objets dont les références sont incomplètes sont
réputées
appartenir au classeur dans lequel le code est écrit contrairement au
module standard.
;-)))
C'est le même ostie de truc que les Range() qui sont écrits dans des
modules
feuillles. Pour signifier une plage de cellules qui appartient à un autre
feuille
il faut ajouter à la plage le nom de la feuille à laquelle appartient la
plage de cellules.
IL n'en demeure pas moins vrai que la ligne de code "On error resume next"
se doit d'être utilisé seulement et seulement si on SAIT le type d'erreur
que
la procédure est sensé rencontrer.