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

Création de code dans une feuille via VBA

2 réponses
Avatar
Ptit Louis
Bonjour,
Après avoir modifié un classeur créé à partir d'un fichier texte, je dois y
ajouter du code dans une feuille pour gérer les modifications qui viendront
inévitablement(Workbook_Change).
J'ai créé la procédure qui me donne entière satisfaction, cependant, si,
après avoir ajouté le code dans la feuille 1 la procédure en cours ferme le
classeur en l'enregistrant, à la prochaine ouverture Excel me dit que le
projet est perdu. Il n'y a même pas de trace du classeur dans l'explorateur
de projets dans VBA.
Si une fois le code ajouté, je laisse l'utilisateur fermer le classeur en
l'enregistrant (mise en commentaire de l'avant dernière ligne), tout se passe
bien:

Proc Générale()
Bla bla
Call AjouterCode
Workbooks("A").close true
End Sub

Sub AjouterCode
ici le code à ajouter dans la Feuil1
End sub

La procédure d'ajout de code est externe pour être reproduite dans plusieurs
fichiers avec le même code.
Pourquoi, docteur ?
Merci à toutes et tous...

2 réponses

Avatar
MichDenis
Bonjour Ptit Louis,

Sans rien voir, c'est un peu difficile...

Essaie ça :

Proc Générale()
Bla bla
Call AjouterCode
Test
End Sub
'----------------------------
Sub test()
Application.OnTime (Now + TimeValue("0:00:02")), "Fermeture_Du_Classeur"
End Sub
'----------------------------
Sub Fermeture_Du_Classeur()
Workbooks(A).close true
End Sub



"Ptit Louis" a écrit dans le message de groupe de
discussion :
Bonjour,
Après avoir modifié un classeur créé à partir d'un fichier texte, je dois y
ajouter du code dans une feuille pour gérer les modifications qui viendront
inévitablement(Workbook_Change).
J'ai créé la procédure qui me donne entière satisfaction, cependant, si,
après avoir ajouté le code dans la feuille 1 la procédure en cours ferme le
classeur en l'enregistrant, à la prochaine ouverture Excel me dit que le
projet est perdu. Il n'y a même pas de trace du classeur dans l'explorateur
de projets dans VBA.
Si une fois le code ajouté, je laisse l'utilisateur fermer le classeur en
l'enregistrant (mise en commentaire de l'avant dernière ligne), tout se passe
bien:

Proc Générale()
Bla bla
Call AjouterCode
Workbooks("A").close true
End Sub

Sub AjouterCode
ici le code à ajouter dans la Feuil1
End sub

La procédure d'ajout de code est externe pour être reproduite dans plusieurs
fichiers avec le même code.
Pourquoi, docteur ?
Merci à toutes et tous...
Avatar
Ptit Louis
Bonjour,
Cela ne fonctionne pas mieux, mais l'idée est excellente. Merci.
J'ai ajouté des instructions bidon pour passer du temps, j'ai déplacé en
amont le call...
J'ai été obligé de le placer dans les premières lignes à partir du moment ou
cela était possible et cela fonctionne...
Les miracles de l'informatique.

"MichDenis" a écrit :

Bonjour Ptit Louis,

Sans rien voir, c'est un peu difficile...

Essaie ça :

Proc Générale()
Bla bla
Call AjouterCode
Test
End Sub
'----------------------------
Sub test()
Application.OnTime (Now + TimeValue("0:00:02")), "Fermeture_Du_Classeur"
End Sub
'----------------------------
Sub Fermeture_Du_Classeur()
Workbooks(A).close true
End Sub



"Ptit Louis" a écrit dans le message de groupe de
discussion :
Bonjour,
Après avoir modifié un classeur créé à partir d'un fichier texte, je dois y
ajouter du code dans une feuille pour gérer les modifications qui viendront
inévitablement(Workbook_Change).
J'ai créé la procédure qui me donne entière satisfaction, cependant, si,
après avoir ajouté le code dans la feuille 1 la procédure en cours ferme le
classeur en l'enregistrant, à la prochaine ouverture Excel me dit que le
projet est perdu. Il n'y a même pas de trace du classeur dans l'explorateur
de projets dans VBA.
Si une fois le code ajouté, je laisse l'utilisateur fermer le classeur en
l'enregistrant (mise en commentaire de l'avant dernière ligne), tout se passe
bien:

Proc Générale()
Bla bla
Call AjouterCode
Workbooks("A").close true
End Sub

Sub AjouterCode
ici le code à ajouter dans la Feuil1
End sub

La procédure d'ajout de code est externe pour être reproduite dans plusieurs
fichiers avec le même code.
Pourquoi, docteur ?
Merci à toutes et tous...