En effet, j'ai parcouru pas mal de forums qui parlaient de mon problème:
Avec l'enregistreur de macro, je souhaitais importer 3 feuilles d'un fichier
modèle qui contient quelques 800 formules.
Pour pouvoir déplacer ces feuilles (et donc les formules) sans que mes
références
soient modifiées, j'ai remplacé le "=" par "z=" dans mon modèle. Et par une
macro,
j'importe les feuilles et je demande le remplacement de "z=" par "=" dans
tout le classeur.
Le hic : en manuel, pas de problème, mais lorsque je lance ma macro, RIEN !!
J'ai vu pas mal de gars qui rencontraient ce souci surtout quand il
s'agissait de traiter
des CSV avec le fameux problème décimal ("." au lieu de ","). L'emtêtant
c'est que moi,
je ne suis pas concerné par un problème de ce genre (donc, je ne peux pas
contourner
la chose en modifiant le "format nombre" , par ex.).
Franchement, j'ai TOUT essayé et j'atteinds le seuil limite de craquage.
J'accepte volontiers un ptit coup de main.
Par avance, merci.
Hey les gars, vous savez quoi ? J'ai pas pu m'empêcher de continuer !
C'est fantastique !!! Ca marche, fini matrix et vive star treck. C'est carrément de la téléportation instantannée de formule.
Merci, merci, et encore merci. J'étais complètement bloqué dans mon projet à cause de ce truc.
J'ai pensé à un truc : si vous voulez vous faire les dents sur le bug, je vais vous joindre les fichiers qui me servent dans l'élaboration de mon projet. Mais franchement ne vous prenez pas la tête outre mesure, car votre solution me convient à merveille.
Nb: autant de formules dans ma feuille de travail car vous aurez facilement déduit que le Csv est dynamique d'un client à un autre. L'xls est en fait un csv à la base et ne faites pas attention à la feuille Saturne, c'est un archi brouillon http://cjoint.com/?jjsFoWDYVO
Allez ! ++ et merci encore
"Mon Onc'" a écrit dans le message de news:
salut Philippe,
j'avais mis, puis retiré "Application.ScreenUpdating.." car sur IE, le rafraichissement ne se faisait pas. Attendons, en sirotant quelque rafraîchissement, si Axel a pu tirer quelque bénéfice de cette proposition...
Bonjour Mon Onc', Impec pour moi aussi ! Si on n'est pas attaché à l'effet "générique de Matrix" lors du déroulement, on peut gagner ne vitesse avec cette variante :
Sub addSpace() Application.ScreenUpdating = False Application.Calculation = xlCalculationManual For Each cCell In Range("B5:I31") cCell.FormulaLocal = " " & cCell.FormulaLocal Next Application.Calculation = xlCalculationAutomatic Application.ScreenUpdating = True End Sub
Sub removeSpace() Application.ScreenUpdating = False Application.Calculation = xlCalculationManual For Each cCell In Range("B5:I31") cCell.FormulaLocal = Trim(cCell.Text) Next Application.Calculation = xlCalculationAutomatic Application.ScreenUpdating = True End Sub
-- Avec plaisir Philippe.R "Mon Onc'" a écrit dans le message de news:
bonjour Axel, Philippe,
en dehors du climat, Axel, tu ne donnes pas de détail sur ce qui se produit quand tu exécutes la macro. Il y a quelques années, j'avais eu un problème similaire, et AV ou MichDenis (pardon pour l'oubli) m'avait conseillé d'utiliser "formulalocal" pour être certain que même des fonctions "exotiques" soient bien traitées lors de la manip. La boucle ralentit le traitement, mais au moins ça semble "blindé" Ca donnait :
Sub addSpace()
For Each cCell In Range("B5:I31") cCell.FormulaLocal = " " & cCell.FormulaLocal Next [A1].Select End Sub
Sub removeSpace()
For Each cCell In Range("B5:I31") cCell.FormulaLocal = Trim(cCell.Text) Next [A1].Select End Sub
En ce qui me concerne, j'ajoute un espace au lieu d'un "z" en tête de formule. Un exemple ici : http://beher.free.fr/ajoute_supprime_espace.php
cordialement
Philippe.R avait soumis l'idée :
Re, Curieux, car chez moi ça fonctionne bien ; un micro climat ? http://cjoint.com/?jjkpcY6cRT -- Avec plaisir Philippe.R "axel" a écrit dans le message de news:46e3a890$0$27669$
Salut Philippe et merci pour ta réponse.
J'avais malheureusement déjà testé ta solution. Sans succès, hélas.
C'est un truc incompréhensible car lorsque je fais la manip en manuel, ca marche bien.
C'est à n'y rien comprendre.
Axel.
+++++++++++++++++++++++++++++++++++++++++++
"Philippe.R" <AS_rauphil_chez_wanadoo.fr> a écrit dans le message de news:
Bonjour axel, Et si tu remplace
Cells.Replace "z=", "="
par
Selection.Cells.Replace "z=", "="
ça fait quoi chez toi ? -- Avec plaisir Philippe.R "axel" a écrit dans le message de news:46e380a0$0$18294$
JB tu m'abandonnes ?
Bonjour à tous,
ci dessous l'historique de mon problème. Si quelqu'un a un idée, elle est la bienvenue.
Bien à vous.
"axel" a écrit dans le message de news: 46dfb075$0$25744$
Merci pour ta rapidité JB.
Mais le résultat n'est pas celui escompté.
Mon bout de code:
' remplacement du "Z=" par "=" permettant le transfert des formules du modèle
En effet, j'ai parcouru pas mal de forums qui parlaient de mon problème:
Avec l'enregistreur de macro, je souhaitais importer 3 feuilles d'un fichier modèle qui contient quelques 800 formules.
Pour pouvoir déplacer ces feuilles (et donc les formules) sans que
mes références soient modifiées, j'ai remplacé le "=" par "z=" dans mon modèle. Et par une macro, j'importe les feuilles et je demande le remplacement de "z=" par "=" dans tout le classeur.
Le hic : en manuel, pas de problème, mais lorsque je lance ma macro, RIEN !!
J'ai vu pas mal de gars qui rencontraient ce souci surtout quand il s'agissait de traiter des CSV avec le fameux problème décimal ("." au lieu de ","). L'emtêtant c'est que moi, je ne suis pas concerné par un problème de ce genre (donc, je ne peux pas contourner la chose en modifiant le "format nombre" , par ex.).
Franchement, j'ai TOUT essayé et j'atteinds le seuil limite de craquage.
J'accepte volontiers un ptit coup de main. Par avance, merci.
Bien à vous. Axel
Hey les gars, vous savez quoi ?
J'ai pas pu m'empêcher de continuer !
C'est fantastique !!!
Ca marche, fini matrix et vive star treck.
C'est carrément de la téléportation instantannée de formule.
Merci, merci, et encore merci.
J'étais complètement bloqué dans mon projet à cause de ce truc.
J'ai pensé à un truc : si vous voulez vous faire les dents sur le bug,
je vais vous joindre les fichiers qui me servent dans l'élaboration de
mon projet. Mais franchement ne vous prenez pas la tête outre mesure,
car votre solution me convient à merveille.
Nb: autant de formules dans ma feuille de travail car vous aurez facilement
déduit que le Csv est dynamique d'un client à un autre.
L'xls est en fait un csv à la base et ne faites pas attention à la feuille
Saturne,
c'est un archi brouillon
http://cjoint.com/?jjsFoWDYVO
Allez ! ++ et merci encore
"Mon Onc'" <monmon@onc.fr> a écrit dans le message de news:
mn.4ac67d7912e61992.48270@onc.fr...
salut Philippe,
j'avais mis, puis retiré "Application.ScreenUpdating.." car sur IE, le
rafraichissement ne se faisait pas.
Attendons, en sirotant quelque rafraîchissement, si Axel a pu tirer
quelque bénéfice de cette proposition...
Bonjour Mon Onc',
Impec pour moi aussi !
Si on n'est pas attaché à l'effet "générique de Matrix" lors du
déroulement, on peut gagner ne vitesse avec cette variante :
Sub addSpace()
Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual
For Each cCell In Range("B5:I31")
cCell.FormulaLocal = " " & cCell.FormulaLocal
Next
Application.Calculation = xlCalculationAutomatic
Application.ScreenUpdating = True
End Sub
Sub removeSpace()
Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual
For Each cCell In Range("B5:I31")
cCell.FormulaLocal = Trim(cCell.Text)
Next
Application.Calculation = xlCalculationAutomatic
Application.ScreenUpdating = True
End Sub
--
Avec plaisir
Philippe.R
"Mon Onc'" <monmon@onc.fr> a écrit dans le message de
news:mn.4aa97d794df65832.48270@onc.fr...
bonjour Axel, Philippe,
en dehors du climat, Axel, tu ne donnes pas de détail sur ce qui se
produit quand tu exécutes la macro. Il y a quelques années, j'avais eu
un problème similaire, et AV ou MichDenis (pardon pour l'oubli) m'avait
conseillé d'utiliser "formulalocal" pour être certain que même des
fonctions "exotiques" soient bien traitées lors de la manip. La boucle
ralentit le traitement, mais au moins ça semble "blindé"
Ca donnait :
Sub addSpace()
For Each cCell In Range("B5:I31")
cCell.FormulaLocal = " " & cCell.FormulaLocal
Next
[A1].Select
End Sub
Sub removeSpace()
For Each cCell In Range("B5:I31")
cCell.FormulaLocal = Trim(cCell.Text)
Next
[A1].Select
End Sub
En ce qui me concerne, j'ajoute un espace au lieu d'un "z" en tête de
formule. Un exemple ici :
http://beher.free.fr/ajoute_supprime_espace.php
cordialement
Philippe.R avait soumis l'idée :
Re,
Curieux, car chez moi ça fonctionne bien ; un micro climat ?
http://cjoint.com/?jjkpcY6cRT
--
Avec plaisir
Philippe.R
"axel" <abpostman1@free.fr> a écrit dans le message de
news:46e3a890$0$27669$426a74cc@news.free.fr...
Salut Philippe et merci pour ta réponse.
J'avais malheureusement déjà testé ta solution.
Sans succès, hélas.
C'est un truc incompréhensible car lorsque je fais la manip
en manuel, ca marche bien.
C'est à n'y rien comprendre.
Axel.
+++++++++++++++++++++++++++++++++++++++++++
"Philippe.R" <AS_rauphil_chez_wanadoo.fr> a écrit dans le message de
news: O4buceq8HHA.5456@TK2MSFTNGP05.phx.gbl...
Bonjour axel,
Et si tu remplace
Cells.Replace "z=", "="
par
Selection.Cells.Replace "z=", "="
ça fait quoi chez toi ?
-- Avec plaisir
Philippe.R
"axel" <abpostman1@free.fr> a écrit dans le message de
news:46e380a0$0$18294$426a74cc@news.free.fr...
JB tu m'abandonnes ?
Bonjour à tous,
ci dessous l'historique de mon problème.
Si quelqu'un a un idée, elle est la bienvenue.
Bien à vous.
"axel" <abpostman1@free.fr> a écrit dans le message de news:
46dfb075$0$25744$426a74cc@news.free.fr...
Merci pour ta rapidité JB.
Mais le résultat n'est pas celui escompté.
Mon bout de code:
' remplacement du "Z=" par "=" permettant le transfert des formules
du modèle
"JB" <boisgontier@hotmail.com> a écrit dans le message de news:
1189061781.570971.3900@g4g2000hsf.googlegroups.com...
Bonjour,
Cells.Replace "z=", "="
http://cjoint.com/?jgi4lYsMJW
JB
On 6 sep, 08:46, "axel" <abpostm...@free.fr> wrote:
Bonjour tous,
visiblement un classique !...
En effet, j'ai parcouru pas mal de forums qui parlaient de mon
problème:
Avec l'enregistreur de macro, je souhaitais importer 3 feuilles
d'un fichier
modèle qui contient quelques 800 formules.
Pour pouvoir déplacer ces feuilles (et donc les formules) sans que
mes
références
soient modifiées, j'ai remplacé le "=" par "z=" dans mon modèle.
Et par une
macro,
j'importe les feuilles et je demande le remplacement de "z=" par
"=" dans
tout le classeur.
Le hic : en manuel, pas de problème, mais lorsque je lance ma
macro, RIEN !!
J'ai vu pas mal de gars qui rencontraient ce souci surtout quand
il
s'agissait de traiter
des CSV avec le fameux problème décimal ("." au lieu de ",").
L'emtêtant
c'est que moi,
je ne suis pas concerné par un problème de ce genre (donc, je ne
peux pas
contourner
la chose en modifiant le "format nombre" , par ex.).
Franchement, j'ai TOUT essayé et j'atteinds le seuil limite de
craquage.
J'accepte volontiers un ptit coup de main.
Par avance, merci.
Hey les gars, vous savez quoi ? J'ai pas pu m'empêcher de continuer !
C'est fantastique !!! Ca marche, fini matrix et vive star treck. C'est carrément de la téléportation instantannée de formule.
Merci, merci, et encore merci. J'étais complètement bloqué dans mon projet à cause de ce truc.
J'ai pensé à un truc : si vous voulez vous faire les dents sur le bug, je vais vous joindre les fichiers qui me servent dans l'élaboration de mon projet. Mais franchement ne vous prenez pas la tête outre mesure, car votre solution me convient à merveille.
Nb: autant de formules dans ma feuille de travail car vous aurez facilement déduit que le Csv est dynamique d'un client à un autre. L'xls est en fait un csv à la base et ne faites pas attention à la feuille Saturne, c'est un archi brouillon http://cjoint.com/?jjsFoWDYVO
Allez ! ++ et merci encore
"Mon Onc'" a écrit dans le message de news:
salut Philippe,
j'avais mis, puis retiré "Application.ScreenUpdating.." car sur IE, le rafraichissement ne se faisait pas. Attendons, en sirotant quelque rafraîchissement, si Axel a pu tirer quelque bénéfice de cette proposition...
Bonjour Mon Onc', Impec pour moi aussi ! Si on n'est pas attaché à l'effet "générique de Matrix" lors du déroulement, on peut gagner ne vitesse avec cette variante :
Sub addSpace() Application.ScreenUpdating = False Application.Calculation = xlCalculationManual For Each cCell In Range("B5:I31") cCell.FormulaLocal = " " & cCell.FormulaLocal Next Application.Calculation = xlCalculationAutomatic Application.ScreenUpdating = True End Sub
Sub removeSpace() Application.ScreenUpdating = False Application.Calculation = xlCalculationManual For Each cCell In Range("B5:I31") cCell.FormulaLocal = Trim(cCell.Text) Next Application.Calculation = xlCalculationAutomatic Application.ScreenUpdating = True End Sub
-- Avec plaisir Philippe.R "Mon Onc'" a écrit dans le message de news:
bonjour Axel, Philippe,
en dehors du climat, Axel, tu ne donnes pas de détail sur ce qui se produit quand tu exécutes la macro. Il y a quelques années, j'avais eu un problème similaire, et AV ou MichDenis (pardon pour l'oubli) m'avait conseillé d'utiliser "formulalocal" pour être certain que même des fonctions "exotiques" soient bien traitées lors de la manip. La boucle ralentit le traitement, mais au moins ça semble "blindé" Ca donnait :
Sub addSpace()
For Each cCell In Range("B5:I31") cCell.FormulaLocal = " " & cCell.FormulaLocal Next [A1].Select End Sub
Sub removeSpace()
For Each cCell In Range("B5:I31") cCell.FormulaLocal = Trim(cCell.Text) Next [A1].Select End Sub
En ce qui me concerne, j'ajoute un espace au lieu d'un "z" en tête de formule. Un exemple ici : http://beher.free.fr/ajoute_supprime_espace.php
cordialement
Philippe.R avait soumis l'idée :
Re, Curieux, car chez moi ça fonctionne bien ; un micro climat ? http://cjoint.com/?jjkpcY6cRT -- Avec plaisir Philippe.R "axel" a écrit dans le message de news:46e3a890$0$27669$
Salut Philippe et merci pour ta réponse.
J'avais malheureusement déjà testé ta solution. Sans succès, hélas.
C'est un truc incompréhensible car lorsque je fais la manip en manuel, ca marche bien.
C'est à n'y rien comprendre.
Axel.
+++++++++++++++++++++++++++++++++++++++++++
"Philippe.R" <AS_rauphil_chez_wanadoo.fr> a écrit dans le message de news:
Bonjour axel, Et si tu remplace
Cells.Replace "z=", "="
par
Selection.Cells.Replace "z=", "="
ça fait quoi chez toi ? -- Avec plaisir Philippe.R "axel" a écrit dans le message de news:46e380a0$0$18294$
JB tu m'abandonnes ?
Bonjour à tous,
ci dessous l'historique de mon problème. Si quelqu'un a un idée, elle est la bienvenue.
Bien à vous.
"axel" a écrit dans le message de news: 46dfb075$0$25744$
Merci pour ta rapidité JB.
Mais le résultat n'est pas celui escompté.
Mon bout de code:
' remplacement du "Z=" par "=" permettant le transfert des formules du modèle
En effet, j'ai parcouru pas mal de forums qui parlaient de mon problème:
Avec l'enregistreur de macro, je souhaitais importer 3 feuilles d'un fichier modèle qui contient quelques 800 formules.
Pour pouvoir déplacer ces feuilles (et donc les formules) sans que
mes références soient modifiées, j'ai remplacé le "=" par "z=" dans mon modèle. Et par une macro, j'importe les feuilles et je demande le remplacement de "z=" par "=" dans tout le classeur.
Le hic : en manuel, pas de problème, mais lorsque je lance ma macro, RIEN !!
J'ai vu pas mal de gars qui rencontraient ce souci surtout quand il s'agissait de traiter des CSV avec le fameux problème décimal ("." au lieu de ","). L'emtêtant c'est que moi, je ne suis pas concerné par un problème de ce genre (donc, je ne peux pas contourner la chose en modifiant le "format nombre" , par ex.).
Franchement, j'ai TOUT essayé et j'atteinds le seuil limite de craquage.
J'accepte volontiers un ptit coup de main. Par avance, merci.