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

fonctionnements différents de Replace dans une macro

6 réponses
Avatar
Frédéric Steczycki
Bonjour,

Je me heurte au problème suivant :

Dans un boucle avec "texte" et "autre" variant,

Excel 2000, la fonction Range.Replace with:="texte" replacement:="autre"
loockAt:=xlWhole
fonctionne Ok

Excel XP la même fonction affiche une boîte de dialogue indiquant que la
recherche n'abouti pas, l'utilisateur doit cliquer le Ok

Excel 2003 la même fonction affiche une boîte de dialogue indiquant que la
recherche n'abouti pas puis Excel se fige au bout de x itérations... et le
PC doit être redémarré (winXP pour info)

La question : comment dire à Excel XP et 2003 de ne pas afficher cette
*$^ù*: d'injurebox (et éventuellement d'empêcher le plantage...) ou mieux,
d'avoir un fonctionnement compatible au 2000 ?

Merci de m'avoir lu,

Fred
PS: la macro est en fait un prg externe faisant de l'OLE mais le problème
reste entier.

6 réponses

Avatar
Frédéric Steczycki
hm... il semble que DisplayAlertsúlse devrait faire l'affaire ... j'envoie
en teste et vous tiens au courant.

Fred



Bonjour,

Je me heurte au problème suivant :

Dans un boucle avec "texte" et "autre" variant,

Excel 2000, la fonction Range.Replace with:="texte"
replacement:="autre" loockAt:=xlWhole
fonctionne Ok

Excel XP la même fonction affiche une boîte de dialogue indiquant que
la recherche n'abouti pas, l'utilisateur doit cliquer le Ok

Excel 2003 la même fonction affiche une boîte de dialogue indiquant
que la recherche n'abouti pas puis Excel se fige au bout de x
itérations... et le PC doit être redémarré (winXP pour info)

La question : comment dire à Excel XP et 2003 de ne pas afficher
cette *$^ù*: d'injurebox (et éventuellement d'empêcher le
plantage...) ou mieux, d'avoir un fonctionnement compatible au 2000 ?

Merci de m'avoir lu,

Fred
PS: la macro est en fait un prg externe faisant de l'OLE mais le
problème reste entier.


Avatar
Clément Marcotte
Bonjour,

Sans rien promettre.

La procédure d'AV, sur cette page, modifiée pour le point remplacé par
une virgule, a marché pour 4 cellules, dans Excel 2002. (C'est pour
cela que je ne promets rien, le test était un peu succinct.)

http://dj.joss.free.fr/killchr.htm

(Évidemment, si tu veux essayer l'autre macro sur la même page...)



"Frédéric Steczycki" a écrit dans le
message de news:
Bonjour,

Je me heurte au problème suivant :

Dans un boucle avec "texte" et "autre" variant,

Excel 2000, la fonction Range.Replace with:="texte"
replacement:="autre"

loockAt:=xlWhole
fonctionne Ok

Excel XP la même fonction affiche une boîte de dialogue indiquant
que la

recherche n'abouti pas, l'utilisateur doit cliquer le Ok

Excel 2003 la même fonction affiche une boîte de dialogue indiquant
que la

recherche n'abouti pas puis Excel se fige au bout de x itérations...
et le

PC doit être redémarré (winXP pour info)

La question : comment dire à Excel XP et 2003 de ne pas afficher
cette

*$^ù*: d'injurebox (et éventuellement d'empêcher le plantage...) ou
mieux,

d'avoir un fonctionnement compatible au 2000 ?

Merci de m'avoir lu,

Fred
PS: la macro est en fait un prg externe faisant de l'OLE mais le
problème

reste entier.



Avatar
Frédéric Steczycki
Merci Clément,


La function (version courte) est exactement celle que j'utilise. Mais Excel
2003, malgrès le DisplayAlertsúlse continue à insulter mon utilisateur...

Fred



Bonjour,

Sans rien promettre.

La procédure d'AV, sur cette page, modifiée pour le point remplacé par
une virgule, a marché pour 4 cellules, dans Excel 2002. (C'est pour
cela que je ne promets rien, le test était un peu succinct.)

http://dj.joss.free.fr/killchr.htm

(Évidemment, si tu veux essayer l'autre macro sur la même page...)





Avatar
ChrisV
Bonjour Frédéric,

Et avec un...
On Error Resume Next
avant l'appel de la fonction Replace...


ChrisV


"Frédéric Steczycki" a écrit dans le
message de news:
Merci Clément,


La function (version courte) est exactement celle que j'utilise. Mais
Excel

2003, malgrès le DisplayAlertsúlse continue à insulter mon
utilisateur...


Fred



Bonjour,

Sans rien promettre.

La procédure d'AV, sur cette page, modifiée pour le point remplacé par
une virgule, a marché pour 4 cellules, dans Excel 2002. (C'est pour
cela que je ne promets rien, le test était un peu succinct.)

http://dj.joss.free.fr/killchr.htm

(Évidemment, si tu veux essayer l'autre macro sur la même page...)








Avatar
Frédéric Steczycki
Conclusions pour info,

DisplayAlertsúlse ne résoud rien sur ce problème.
Il faut lui adjoindre
Interactiveúlse

testé sous xl 2000, XP et 2003

Voilà ;)

Fred
PS : N'oubliez pas de repositionner à true après traitement
PPS:Merci encore

hm... il semble que DisplayAlertsúlse devrait faire l'affaire ...
j'envoie en teste et vous tiens au courant.

Fred



Bonjour,

Je me heurte au problème suivant :

Dans un boucle avec "texte" et "autre" variant,

Excel 2000, la fonction Range.Replace with:="texte"
replacement:="autre" loockAt:=xlWhole
fonctionne Ok

Excel XP la même fonction affiche une boîte de dialogue indiquant que
la recherche n'abouti pas, l'utilisateur doit cliquer le Ok

Excel 2003 la même fonction affiche une boîte de dialogue indiquant
que la recherche n'abouti pas puis Excel se fige au bout de x
itérations... et le PC doit être redémarré (winXP pour info)

La question : comment dire à Excel XP et 2003 de ne pas afficher
cette *$^ù*: d'injurebox (et éventuellement d'empêcher le
plantage...) ou mieux, d'avoir un fonctionnement compatible au 2000 ?

Merci de m'avoir lu,

Fred
PS: la macro est en fait un prg externe faisant de l'OLE mais le
problème reste entier.




Avatar
Clément Marcotte
Bonjour,

Merci pour l'information.


"Frédéric Steczycki" a écrit dans le
message de news:%
Conclusions pour info,

DisplayAlertsúlse ne résoud rien sur ce problème.
Il faut lui adjoindre
Interactiveúlse

testé sous xl 2000, XP et 2003

Voilà ;)

Fred
PS : N'oubliez pas de repositionner à true après traitement
PPS:Merci encore

hm... il semble que DisplayAlertsúlse devrait faire l'affaire
...


j'envoie en teste et vous tiens au courant.

Fred



Bonjour,

Je me heurte au problème suivant :

Dans un boucle avec "texte" et "autre" variant,

Excel 2000, la fonction Range.Replace with:="texte"
replacement:="autre" loockAt:=xlWhole
fonctionne Ok

Excel XP la même fonction affiche une boîte de dialogue indiquant
que



la recherche n'abouti pas, l'utilisateur doit cliquer le Ok

Excel 2003 la même fonction affiche une boîte de dialogue
indiquant



que la recherche n'abouti pas puis Excel se fige au bout de x
itérations... et le PC doit être redémarré (winXP pour info)

La question : comment dire à Excel XP et 2003 de ne pas afficher
cette *$^ù*: d'injurebox (et éventuellement d'empêcher le
plantage...) ou mieux, d'avoir un fonctionnement compatible au
2000 ?




Merci de m'avoir lu,

Fred
PS: la macro est en fait un prg externe faisant de l'OLE mais le
problème reste entier.