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

Erreur et malfonctionnement

4 réponses
Avatar
Jacques \(BE\)
Bonjour,

Depuis plusieurs semaines, je suis devant un problème que je n'arrive pas à
résoudre.
J'ai un fichier xls avec du code VBA. Tout fonctionne corrctement jusqu'à ce
que Excel décide
de ne plus vouloir fonctionner. Pourquoi , comment je n'en sais rien !
À chaque fois que j'entre dans le code VBA même si c'est pour ajouter un
petit commentaire, lorsque je réouvre le fichier après la modification, j'ai
une fenêtre "Microsoft Office Excel a rencontré une erreur ..."
Je récupère le fichier j'essaie de l'ouvrir et cela fonctionne.
Là où c'est le plus pénible c'est lorsque deux lignes de code décident de ne
plus fonctionner !!
C'est deux lignes ont été écrites durant le mois de décembre et ont
fonctionnés jusqu'à il y a deux semaines.

J'ai effacé les deux lignes, ai sauvegardeé le fichier , remis les deux
lignes ... pas mieux ! J'ai complètement effacer le module, récrit le code,
... pas mieux ! Toiut cela en passant par le menu "Debogage" -> compiler
Il n'y a pas d'erreur.
Le plus frustrant c'est que ces deux lignes fonctionnent jusqu'a ce que je
fasse une modification , même ajouter 'bonjour Toto est suffissant pour
faire planter le code.

Les deux lignes de codes sont simples :
On copie la feuille "Donnees" et on la renomme "Saisie"

Sheets("Donnees").Copy after:=Sheets(Sheets.Count)
Sheets(Sheets.Count).Name = "Saisie"

Quoi de plus simple !! :-)

Je ne sais plus trop quoi faire si quelqu'un a une idée.


Merci de vos réponses


Jacques

4 réponses

Avatar
Jacquouille
Sheets("toto").Select
Sheets("toto").Copy After:=Sheets(2)
Sheets("toto (2)").Select
Sheets("toto (2)").Name = "totobis"
--------------------------
Sheets("Donnees").Copy after:=Sheets(Sheets.Count)
Sheets(Sheets.Count).Name = "Saisie"
---------------------------

Je compare le résultat de mon enregistreur et ta macro.....
Es-tu certain que "Sheets.Count" n'est pas une instruction, au lieu d'un nom
de feuille?
Ensuite, quand la macro a fonctionné une fois, elle ne peut réattribuer le
même nom à une deuxième feuille.
Enfin, pour ce que j'en dis......
Bonne chance.
--
Bien amicalmement,
Vivement conseillés:
http://www.excelabo.net
http://jacxl.free.fr/mpfe/trombino.html
http://dj.joss.free.fr/netiquet.htm
http://frederic.sigonneau.free.fr/

Jacquouille.

"Jacques (BE)" a écrit dans le message de news:

Bonjour,

Depuis plusieurs semaines, je suis devant un problème que je n'arrive pas
à
résoudre.
J'ai un fichier xls avec du code VBA. Tout fonctionne corrctement jusqu'à
ce
que Excel décide
de ne plus vouloir fonctionner. Pourquoi , comment je n'en sais rien !
À chaque fois que j'entre dans le code VBA même si c'est pour ajouter un
petit commentaire, lorsque je réouvre le fichier après la modification,
j'ai
une fenêtre "Microsoft Office Excel a rencontré une erreur ..."
Je récupère le fichier j'essaie de l'ouvrir et cela fonctionne.
Là où c'est le plus pénible c'est lorsque deux lignes de code décident de
ne
plus fonctionner !!
C'est deux lignes ont été écrites durant le mois de décembre et ont
fonctionnés jusqu'à il y a deux semaines.

J'ai effacé les deux lignes, ai sauvegardeé le fichier , remis les deux
lignes ... pas mieux ! J'ai complètement effacer le module, récrit le
code,
... pas mieux ! Toiut cela en passant par le menu "Debogage" -> compiler
Il n'y a pas d'erreur.
Le plus frustrant c'est que ces deux lignes fonctionnent jusqu'a ce que je
fasse une modification , même ajouter 'bonjour Toto est suffissant pour
faire planter le code.

Les deux lignes de codes sont simples :
On copie la feuille "Donnees" et on la renomme "Saisie"

Sheets("Donnees").Copy after:=Sheets(Sheets.Count)
Sheets(Sheets.Count).Name = "Saisie"

Quoi de plus simple !! :-)

Je ne sais plus trop quoi faire si quelqu'un a une idée.


Merci de vos réponses


Jacques




Avatar
Jacques \(BE\)
Bonjour,

Sheets(Sheets.Count) donne le nombre de feuille. Donc quand il arrive sur la
première instruction, cela lui copie la feuille
après le nombre X de feuille. Donc il place la feuille en dernier.
Lorsqu'il arrive sur la deuxième instruction Sheets.count a augmenter de un
et donc renomme la dernière feuille.

Ce code fonctionne très bien ...pendant 6 semaines puis se met à planter
sans que l'on y touche !!
Nébuleux comme affaire !! :-)
Je vais essayer de faire comme toi pour voir.

Merci


"Jacquouille" a écrit dans le message de
news:
Sheets("toto").Select
Sheets("toto").Copy After:=Sheets(2)
Sheets("toto (2)").Select
Sheets("toto (2)").Name = "totobis"
--------------------------
Sheets("Donnees").Copy after:=Sheets(Sheets.Count)
Sheets(Sheets.Count).Name = "Saisie"
---------------------------

Je compare le résultat de mon enregistreur et ta macro.....
Es-tu certain que "Sheets.Count" n'est pas une instruction, au lieu d'un
nom

de feuille?
Ensuite, quand la macro a fonctionné une fois, elle ne peut réattribuer le
même nom à une deuxième feuille.
Enfin, pour ce que j'en dis......
Bonne chance.
--
Bien amicalmement,
Vivement conseillés:
http://www.excelabo.net
http://jacxl.free.fr/mpfe/trombino.html
http://dj.joss.free.fr/netiquet.htm
http://frederic.sigonneau.free.fr/

Jacquouille.

"Jacques (BE)" a écrit dans le message de news:

Bonjour,

Depuis plusieurs semaines, je suis devant un problème que je n'arrive
pas


à
résoudre.
J'ai un fichier xls avec du code VBA. Tout fonctionne corrctement
jusqu'à


ce
que Excel décide
de ne plus vouloir fonctionner. Pourquoi , comment je n'en sais rien !
À chaque fois que j'entre dans le code VBA même si c'est pour ajouter un
petit commentaire, lorsque je réouvre le fichier après la modification,
j'ai
une fenêtre "Microsoft Office Excel a rencontré une erreur ..."
Je récupère le fichier j'essaie de l'ouvrir et cela fonctionne.
Là où c'est le plus pénible c'est lorsque deux lignes de code décident
de


ne
plus fonctionner !!
C'est deux lignes ont été écrites durant le mois de décembre et ont
fonctionnés jusqu'à il y a deux semaines.

J'ai effacé les deux lignes, ai sauvegardeé le fichier , remis les deux
lignes ... pas mieux ! J'ai complètement effacer le module, récrit le
code,
... pas mieux ! Toiut cela en passant par le menu "Debogage" -> compiler
Il n'y a pas d'erreur.
Le plus frustrant c'est que ces deux lignes fonctionnent jusqu'a ce que
je


fasse une modification , même ajouter 'bonjour Toto est suffissant pour
faire planter le code.

Les deux lignes de codes sont simples :
On copie la feuille "Donnees" et on la renomme "Saisie"

Sheets("Donnees").Copy after:=Sheets(Sheets.Count)
Sheets(Sheets.Count).Name = "Saisie"

Quoi de plus simple !! :-)

Je ne sais plus trop quoi faire si quelqu'un a une idée.


Merci de vos réponses


Jacques








Avatar
Jacquouille
Re
Il renomme la dernière feuille. OK
Mais, il continue à en créer une ?
N'y aurait-il pas un prob de mémoire pour un Nb trop élevé de feuilles?
Après, je donne ma langue au chat.
Bonne chance.

--
Bien amicalmement,
Vivement conseillés:
http://www.excelabo.net
http://jacxl.free.fr/mpfe/trombino.html
http://dj.joss.free.fr/netiquet.htm
http://frederic.sigonneau.free.fr/

Jacquouille.

"Jacques (BE)" a écrit dans le message de news:

Bonjour,

Sheets(Sheets.Count) donne le nombre de feuille. Donc quand il arrive sur
la
première instruction, cela lui copie la feuille
après le nombre X de feuille. Donc il place la feuille en dernier.
Lorsqu'il arrive sur la deuxième instruction Sheets.count a augmenter de
un
et donc renomme la dernière feuille.

Ce code fonctionne très bien ...pendant 6 semaines puis se met à planter
sans que l'on y touche !!
Nébuleux comme affaire !! :-)
Je vais essayer de faire comme toi pour voir.

Merci


"Jacquouille" a écrit dans le message de
news:
Sheets("toto").Select
Sheets("toto").Copy After:=Sheets(2)
Sheets("toto (2)").Select
Sheets("toto (2)").Name = "totobis"
--------------------------
Sheets("Donnees").Copy after:=Sheets(Sheets.Count)
Sheets(Sheets.Count).Name = "Saisie"
---------------------------

Je compare le résultat de mon enregistreur et ta macro.....
Es-tu certain que "Sheets.Count" n'est pas une instruction, au lieu d'un
nom

de feuille?
Ensuite, quand la macro a fonctionné une fois, elle ne peut réattribuer
le
même nom à une deuxième feuille.
Enfin, pour ce que j'en dis......
Bonne chance.
--
Bien amicalmement,
Vivement conseillés:
http://www.excelabo.net
http://jacxl.free.fr/mpfe/trombino.html
http://dj.joss.free.fr/netiquet.htm
http://frederic.sigonneau.free.fr/

Jacquouille.

"Jacques (BE)" a écrit dans le message de news:

Bonjour,

Depuis plusieurs semaines, je suis devant un problème que je n'arrive
pas


à
résoudre.
J'ai un fichier xls avec du code VBA. Tout fonctionne corrctement
jusqu'à


ce
que Excel décide
de ne plus vouloir fonctionner. Pourquoi , comment je n'en sais rien !
À chaque fois que j'entre dans le code VBA même si c'est pour ajouter
un
petit commentaire, lorsque je réouvre le fichier après la modification,
j'ai
une fenêtre "Microsoft Office Excel a rencontré une erreur ..."
Je récupère le fichier j'essaie de l'ouvrir et cela fonctionne.
Là où c'est le plus pénible c'est lorsque deux lignes de code décident
de


ne
plus fonctionner !!
C'est deux lignes ont été écrites durant le mois de décembre et ont
fonctionnés jusqu'à il y a deux semaines.

J'ai effacé les deux lignes, ai sauvegardeé le fichier , remis les deux
lignes ... pas mieux ! J'ai complètement effacer le module, récrit le
code,
... pas mieux ! Toiut cela en passant par le menu "Debogage" ->
compiler
Il n'y a pas d'erreur.
Le plus frustrant c'est que ces deux lignes fonctionnent jusqu'a ce que
je


fasse une modification , même ajouter 'bonjour Toto est suffissant pour
faire planter le code.

Les deux lignes de codes sont simples :
On copie la feuille "Donnees" et on la renomme "Saisie"

Sheets("Donnees").Copy after:=Sheets(Sheets.Count)
Sheets(Sheets.Count).Name = "Saisie"

Quoi de plus simple !! :-)

Je ne sais plus trop quoi faire si quelqu'un a une idée.


Merci de vos réponses


Jacques












Avatar
MichDenis
Par curiosité, si tu le désires, tu peux m'envoyer directement dans ma BAL
ton fichier. Prend le temps d'effacer les "informations sensibles"


"Jacques (BE)" a écrit dans le message de news:

Bonjour,

Depuis plusieurs semaines, je suis devant un problème que je n'arrive pas à
résoudre.
J'ai un fichier xls avec du code VBA. Tout fonctionne corrctement jusqu'à ce
que Excel décide
de ne plus vouloir fonctionner. Pourquoi , comment je n'en sais rien !
À chaque fois que j'entre dans le code VBA même si c'est pour ajouter un
petit commentaire, lorsque je réouvre le fichier après la modification, j'ai
une fenêtre "Microsoft Office Excel a rencontré une erreur ..."
Je récupère le fichier j'essaie de l'ouvrir et cela fonctionne.
Là où c'est le plus pénible c'est lorsque deux lignes de code décident de ne
plus fonctionner !!
C'est deux lignes ont été écrites durant le mois de décembre et ont
fonctionnés jusqu'à il y a deux semaines.

J'ai effacé les deux lignes, ai sauvegardeé le fichier , remis les deux
lignes ... pas mieux ! J'ai complètement effacer le module, récrit le code,
... pas mieux ! Toiut cela en passant par le menu "Debogage" -> compiler
Il n'y a pas d'erreur.
Le plus frustrant c'est que ces deux lignes fonctionnent jusqu'a ce que je
fasse une modification , même ajouter 'bonjour Toto est suffissant pour
faire planter le code.

Les deux lignes de codes sont simples :
On copie la feuille "Donnees" et on la renomme "Saisie"

Sheets("Donnees").Copy after:=Sheets(Sheets.Count)
Sheets(Sheets.Count).Name = "Saisie"

Quoi de plus simple !! :-)

Je ne sais plus trop quoi faire si quelqu'un a une idée.


Merci de vos réponses


Jacques