Voici mon problème :
J’ai une feuille de calcul qui me sert à libérer des produits (voir annexe).
http://cjoint.com/?AGstXLDuUnk
Cette feuille est imprimée telle quelle et collée dans un cahier de
résultats.
Jusque là, tout baigne…
Pour que le "controleur" puisse voir ce qui est calculé, je dois
imprimer la même feuille avec entête des lignes et des colonnes ET la
feuille des formules utilisées avec entête des lignes et des colonnes.
Je voudrais faire une macro pour imprimer tout cela automatiquement,
j’ai essayé avec l’enregistreur de macros mais je m’y perds et je suis
certain qu’une solution toute simple existe…
La macro doit :
-imprimer la feuille avec les résultats
-imprimer la feuille avec les résultats et les noms des colonnes et lignes
-imprimer la feuille avec les formules et les noms des colonnes et
lignes (ajuster la largeur des colonnes)
-réafficher la feuille avec les résultats (sans formules)
-enregistrer la feuille
Dangereux cela précisément si on voulait que ce soit toujours Feuil1 et surtout pas les autres.
On Jul 20, 10:58 pm, Gloops wrote:
Bonsoir,
Effectivement, ça serait plus passe-partout de remplacer Feuil1 par ActiveSheet.
_____________________________________ LSteph a écrit, le 20/07/2011 20:28 :
> Bonsoir Eric,
>> Merci LSteph > ...aussi Daniel
>> Comment faire pour que cette macro soit active dans n'importe quel >> fichier ouvert ? > Alors sur le principe.. > Si tant est que ce contexte se retrouve ailleurs (ce n'est pas éviden t > au vu de l'exemple spécifique que tu fournis) > donc toujours Feuil1 ...? (par exemple) > ..il suffirait de la placer dans le classeur de macros personnelles
> Cordialement.
> -- > LSteph
> On Jul 19, 9:10 pm, Eric C wrote: >> Merci LSteph, c'est exactement ce que je voulais. >> Comment faire pour que cette macro soit active dans n'importe quel >> fichier ouvert ?
>> Eric
Dangereux cela précisément si on voulait que ce soit toujours Feuil1
et surtout pas les autres.
On Jul 20, 10:58 pm, Gloops <glo...@invalid.zailes.org> wrote:
Bonsoir,
Effectivement, ça serait plus passe-partout de remplacer Feuil1 par
ActiveSheet.
_____________________________________
LSteph a écrit, le 20/07/2011 20:28 :
> Bonsoir Eric,
>> Merci LSteph
> ...aussi Daniel
>> Comment faire pour que cette macro soit active dans n'importe quel
>> fichier ouvert ?
> Alors sur le principe..
> Si tant est que ce contexte se retrouve ailleurs (ce n'est pas éviden t
> au vu de l'exemple spécifique que tu fournis)
> donc toujours Feuil1 ...? (par exemple)
> ..il suffirait de la placer dans le classeur de macros personnelles
> Cordialement.
> --
> LSteph
> On Jul 19, 9:10 pm, Eric C<nos...@nospam.com> wrote:
>> Merci LSteph, c'est exactement ce que je voulais.
>> Comment faire pour que cette macro soit active dans n'importe quel
>> fichier ouvert ?
Dangereux cela précisément si on voulait que ce soit toujours Feuil1 et surtout pas les autres.
On Jul 20, 10:58 pm, Gloops wrote:
Bonsoir,
Effectivement, ça serait plus passe-partout de remplacer Feuil1 par ActiveSheet.
_____________________________________ LSteph a écrit, le 20/07/2011 20:28 :
> Bonsoir Eric,
>> Merci LSteph > ...aussi Daniel
>> Comment faire pour que cette macro soit active dans n'importe quel >> fichier ouvert ? > Alors sur le principe.. > Si tant est que ce contexte se retrouve ailleurs (ce n'est pas éviden t > au vu de l'exemple spécifique que tu fournis) > donc toujours Feuil1 ...? (par exemple) > ..il suffirait de la placer dans le classeur de macros personnelles
> Cordialement.
> -- > LSteph
> On Jul 19, 9:10 pm, Eric C wrote: >> Merci LSteph, c'est exactement ce que je voulais. >> Comment faire pour que cette macro soit active dans n'importe quel >> fichier ouvert ?
>> Eric
Gloops
Ah oui mais Feuil1 de ce fichier, j'imagine ?
Voilà qui me rappelle une mission il n'y a pas très longtemps, où j e me suis cru bien inspiré quand on me demandait de développer un traiteme nt concernant une feuille Excel d'un modèle de fichier à ouvrir chaque mois, de baser le contrôle sur le nom de la feuille.
Pour chacun des traitements concernés, au bout de trois mois on venait me dire que ça ne marchait pas, et on me demandait pourquoi. A chaque fois, c'était parce que le modèle avait changé, en ce sens que le n om de la feuille n'était plus le même. Donc, vraisemblablement aurais-je dû chercher d'autres critères, et surtout mieux documenter sur quel critè re je basais le contrôle.
En définitive, j'ai même l'impression qu'il aurait fallu fournir une documentation qui décrivait la feuille devant faire l'objet du traitement. Avant de dire que ça ne marchait pas, l'utilisateur aurait lu la doc, et aurait pu constater l'écart entre le modèle reçu et c elui attendu par le traitement.
On a beau avoir une formation qui insiste sur l'essentiel, à savoir la doc, quand on bricole un petit traitement sur un coin de table on a un peu tendance à être négligent. Eh bien c'est un tort.
Ne pas oublier que la doc doit réunir deux qualités : elle doit êtr e claire, et elle doit être conforme à ce qu'elle documente. Il arrive que ça ne soit évident ni sur un point, ni sur l'autre. Et ne pas oublier que quand on dit clair, il faut savoir pour qui.
_____________________________________ LSteph a écrit, le 21/07/2011 12:49 :
Dangereux cela précisément si on voulait que ce soit toujours Feuil 1 et surtout pas les autres.
On Jul 20, 10:58 pm, Gloops wrote:
Bonsoir,
Effectivement, ça serait plus passe-partout de remplacer Feuil1 par ActiveSheet.
Ah oui mais Feuil1 de ce fichier, j'imagine ?
Voilà qui me rappelle une mission il n'y a pas très longtemps, où j e me
suis cru bien inspiré quand on me demandait de développer un traiteme nt
concernant une feuille Excel d'un modèle de fichier à ouvrir chaque
mois, de baser le contrôle sur le nom de la feuille.
Pour chacun des traitements concernés, au bout de trois mois on venait
me dire que ça ne marchait pas, et on me demandait pourquoi. A chaque
fois, c'était parce que le modèle avait changé, en ce sens que le n om de
la feuille n'était plus le même. Donc, vraisemblablement aurais-je dû
chercher d'autres critères, et surtout mieux documenter sur quel critè re
je basais le contrôle.
En définitive, j'ai même l'impression qu'il aurait fallu fournir une
documentation qui décrivait la feuille devant faire l'objet du
traitement. Avant de dire que ça ne marchait pas, l'utilisateur aurait
lu la doc, et aurait pu constater l'écart entre le modèle reçu et c elui
attendu par le traitement.
On a beau avoir une formation qui insiste sur l'essentiel, à savoir la
doc, quand on bricole un petit traitement sur un coin de table on a un
peu tendance à être négligent. Eh bien c'est un tort.
Ne pas oublier que la doc doit réunir deux qualités : elle doit êtr e
claire, et elle doit être conforme à ce qu'elle documente. Il arrive que
ça ne soit évident ni sur un point, ni sur l'autre. Et ne pas oublier
que quand on dit clair, il faut savoir pour qui.
_____________________________________
LSteph a écrit, le 21/07/2011 12:49 :
Dangereux cela précisément si on voulait que ce soit toujours Feuil 1
et surtout pas les autres.
On Jul 20, 10:58 pm, Gloops<glo...@invalid.zailes.org> wrote:
Bonsoir,
Effectivement, ça serait plus passe-partout de remplacer Feuil1 par
ActiveSheet.
Voilà qui me rappelle une mission il n'y a pas très longtemps, où j e me suis cru bien inspiré quand on me demandait de développer un traiteme nt concernant une feuille Excel d'un modèle de fichier à ouvrir chaque mois, de baser le contrôle sur le nom de la feuille.
Pour chacun des traitements concernés, au bout de trois mois on venait me dire que ça ne marchait pas, et on me demandait pourquoi. A chaque fois, c'était parce que le modèle avait changé, en ce sens que le n om de la feuille n'était plus le même. Donc, vraisemblablement aurais-je dû chercher d'autres critères, et surtout mieux documenter sur quel critè re je basais le contrôle.
En définitive, j'ai même l'impression qu'il aurait fallu fournir une documentation qui décrivait la feuille devant faire l'objet du traitement. Avant de dire que ça ne marchait pas, l'utilisateur aurait lu la doc, et aurait pu constater l'écart entre le modèle reçu et c elui attendu par le traitement.
On a beau avoir une formation qui insiste sur l'essentiel, à savoir la doc, quand on bricole un petit traitement sur un coin de table on a un peu tendance à être négligent. Eh bien c'est un tort.
Ne pas oublier que la doc doit réunir deux qualités : elle doit êtr e claire, et elle doit être conforme à ce qu'elle documente. Il arrive que ça ne soit évident ni sur un point, ni sur l'autre. Et ne pas oublier que quand on dit clair, il faut savoir pour qui.
_____________________________________ LSteph a écrit, le 21/07/2011 12:49 :
Dangereux cela précisément si on voulait que ce soit toujours Feuil 1 et surtout pas les autres.
On Jul 20, 10:58 pm, Gloops wrote:
Bonsoir,
Effectivement, ça serait plus passe-partout de remplacer Feuil1 par ActiveSheet.
Eric C
Ca fonctionne, encore merci LSteph.... et bien sur aussi à Daniel que j'avais omis dans le premier post. Eric
Le 20/07/2011 20:28, LSteph a écrit :
Bonsoir Eric,
Merci LSteph
...aussi Daniel
Comment faire pour que cette macro soit active dans n'importe quel fichier ouvert ?
Alors sur le principe.. Si tant est que ce contexte se retrouve ailleurs (ce n'est pas évident au vu de l'exemple spécifique que tu fournis) donc toujours Feuil1 ...? (par exemple) ..il suffirait de la placer dans le classeur de macros personnelles
Cordialement.
-- LSteph
On Jul 19, 9:10 pm, Eric C wrote:
Merci LSteph, c'est exactement ce que je voulais. Comment faire pour que cette macro soit active dans n'importe quel fichier ouvert ?
Eric
Le 19/07/2011 15:09, LSteph a écrit :
Effectivement, du coup la première colonne s'en trouve un peu mieux mais la deuxième fait un peu ratatinée, ... on pourrait aussi après le second autofit appliquer celle standard aux colonnes qui seraient d'une largeur inférieure.
On 19 juil, 14:31, DanielCo wrote:
Juste. Je ne l'avais pas vu. Par contre, le second autofit ne redonne pas forcément les largeurs de colonnes initiales. Ou on place le "Save" avant le premier AutoFit, ou on enregistre les largeurs initiales des colonnes. Daniel
Bonjour Daniel,
Si on omet les autofit pour le premier regarde la formule en bas de la colonne c elle est tronquée et pour le second quand on revient si on l'omet cela se redimensionne a minima sur A1 en colonne A de sorte que le reste de la colonne est coupé. ( Cela dépend peut être aussi de la version , ici 2003) avec les 2 autofits cela me semble donc plus sûr selon les cas.
Cordialement.
-- LSteph
On 19 juil, 13:21, DanielCo wrote:
Bonjour LSteph, Je pense que le redimensionnement des colonnes se fait sans qu'on ait besooin de le préciser. Cordialement. Daniel
Re,
...loupé un détail:
Sub Imprim3() With Feuil1 .Activate .PageSetup.PrintHeadings = False .PrintOut .PageSetup.PrintHeadings = True .PrintOut
ActiveWindow.DisplayFormulas = True .Columns.AutoFit .PrintOut ActiveWindow.DisplayFormulas = False .Columns.AutoFit End With ActiveWorkbook.Save End Sub
'LSteph
On Jul 18, 7:52 pm, Eric C wrote:
Voici mon problème : J’ai une feuille de calcul qui me sert à libérer des produits (voir annexe).http://cjoint.com/?AGstXLDuUnk
Cette feuille est imprimée telle quelle et collée dans un cahier de résultats. Jusque là, tout baigne…
Pour que le "controleur" puisse voir ce qui est calculé, je dois imprimer la même feuille avec entête des lignes et des colonnes ET la feuille des formules utilisées avec entête des lignes et des colonnes. Je voudrais faire une macro pour imprimer tout cela automatiquement, j’ai essayé avec l’enregistreur de macros mais je m’y perds et je suis certain qu’une solution toute simple existe… La macro doit : -imprimer la feuille avec les résultats -imprimer la feuille avec les résultats et les noms des colonnes et lignes -imprimer la feuille avec les formules et les noms des colonnes et lignes (ajuster la largeur des colonnes) -réafficher la feuille avec les résultats (sans formules) -enregistrer la feuille
Merci de votre aide précieuse.
-- Pour plaus de facilité, veuillez préciser votre version d'Excel Cordialement. Daniel
-- Pour plaus de facilité, veuillez préciser votre version d'Excel Cordialement. Daniel
Ca fonctionne, encore merci LSteph.... et bien sur aussi à Daniel que
j'avais omis dans le premier post.
Eric
Le 20/07/2011 20:28, LSteph a écrit :
Bonsoir Eric,
Merci LSteph
...aussi Daniel
Comment faire pour que cette macro soit active dans n'importe quel
fichier ouvert ?
Alors sur le principe..
Si tant est que ce contexte se retrouve ailleurs (ce n'est pas évident
au vu de l'exemple spécifique que tu fournis)
donc toujours Feuil1 ...? (par exemple)
..il suffirait de la placer dans le classeur de macros personnelles
Cordialement.
--
LSteph
On Jul 19, 9:10 pm, Eric C<nos...@nospam.com> wrote:
Merci LSteph, c'est exactement ce que je voulais.
Comment faire pour que cette macro soit active dans n'importe quel
fichier ouvert ?
Eric
Le 19/07/2011 15:09, LSteph a écrit :
Effectivement, du coup la première colonne s'en trouve un peu mieux
mais la deuxième fait un peu ratatinée,
...
on pourrait aussi après le second autofit
appliquer celle standard aux colonnes qui seraient d'une largeur
inférieure.
On 19 juil, 14:31, DanielCo<dcolardelle...@free.fr> wrote:
Juste. Je ne l'avais pas vu. Par contre, le second autofit ne redonne
pas forcément les largeurs de colonnes initiales. Ou on place le "Save"
avant le premier AutoFit, ou on enregistre les largeurs initiales des
colonnes.
Daniel
Bonjour Daniel,
Si on omet les autofit
pour le premier regarde la formule en bas de la colonne c elle est
tronquée
et pour le second quand on revient si on l'omet cela se redimensionne
a minima sur A1 en colonne A
de sorte que le reste de la colonne est coupé.
( Cela dépend peut être aussi de la version , ici 2003)
avec les 2 autofits cela me semble donc plus sûr selon les cas.
Cordialement.
--
LSteph
On 19 juil, 13:21, DanielCo<dcolardelle...@free.fr> wrote:
Bonjour LSteph,
Je pense que le redimensionnement des colonnes se fait sans qu'on ait
besooin de le préciser.
Cordialement.
Daniel
Re,
...loupé un détail:
Sub Imprim3()
With Feuil1
.Activate
.PageSetup.PrintHeadings = False
.PrintOut
.PageSetup.PrintHeadings = True
.PrintOut
ActiveWindow.DisplayFormulas = True
.Columns.AutoFit
.PrintOut
ActiveWindow.DisplayFormulas = False
.Columns.AutoFit
End With
ActiveWorkbook.Save
End Sub
'LSteph
On Jul 18, 7:52 pm, Eric C<nos...@nospam.com> wrote:
Voici mon problème :
J’ai une feuille de calcul qui me sert à libérer des produits (voir
annexe).http://cjoint.com/?AGstXLDuUnk
Cette feuille est imprimée telle quelle et collée dans un cahier de
résultats.
Jusque là, tout baigne…
Pour que le "controleur" puisse voir ce qui est calculé, je dois
imprimer la même feuille avec entête des lignes et des colonnes ET la
feuille des formules utilisées avec entête des lignes et des colonnes.
Je voudrais faire une macro pour imprimer tout cela automatiquement,
j’ai essayé avec l’enregistreur de macros mais je m’y perds et je suis
certain qu’une solution toute simple existe…
La macro doit :
-imprimer la feuille avec les résultats
-imprimer la feuille avec les résultats et les noms des colonnes et lignes
-imprimer la feuille avec les formules et les noms des colonnes et
lignes (ajuster la largeur des colonnes)
-réafficher la feuille avec les résultats (sans formules)
-enregistrer la feuille
Merci de votre aide précieuse.
--
Pour plaus de facilité, veuillez préciser votre version d'Excel
Cordialement.
Daniel
--
Pour plaus de facilité, veuillez préciser votre version d'Excel
Cordialement.
Daniel
Ca fonctionne, encore merci LSteph.... et bien sur aussi à Daniel que j'avais omis dans le premier post. Eric
Le 20/07/2011 20:28, LSteph a écrit :
Bonsoir Eric,
Merci LSteph
...aussi Daniel
Comment faire pour que cette macro soit active dans n'importe quel fichier ouvert ?
Alors sur le principe.. Si tant est que ce contexte se retrouve ailleurs (ce n'est pas évident au vu de l'exemple spécifique que tu fournis) donc toujours Feuil1 ...? (par exemple) ..il suffirait de la placer dans le classeur de macros personnelles
Cordialement.
-- LSteph
On Jul 19, 9:10 pm, Eric C wrote:
Merci LSteph, c'est exactement ce que je voulais. Comment faire pour que cette macro soit active dans n'importe quel fichier ouvert ?
Eric
Le 19/07/2011 15:09, LSteph a écrit :
Effectivement, du coup la première colonne s'en trouve un peu mieux mais la deuxième fait un peu ratatinée, ... on pourrait aussi après le second autofit appliquer celle standard aux colonnes qui seraient d'une largeur inférieure.
On 19 juil, 14:31, DanielCo wrote:
Juste. Je ne l'avais pas vu. Par contre, le second autofit ne redonne pas forcément les largeurs de colonnes initiales. Ou on place le "Save" avant le premier AutoFit, ou on enregistre les largeurs initiales des colonnes. Daniel
Bonjour Daniel,
Si on omet les autofit pour le premier regarde la formule en bas de la colonne c elle est tronquée et pour le second quand on revient si on l'omet cela se redimensionne a minima sur A1 en colonne A de sorte que le reste de la colonne est coupé. ( Cela dépend peut être aussi de la version , ici 2003) avec les 2 autofits cela me semble donc plus sûr selon les cas.
Cordialement.
-- LSteph
On 19 juil, 13:21, DanielCo wrote:
Bonjour LSteph, Je pense que le redimensionnement des colonnes se fait sans qu'on ait besooin de le préciser. Cordialement. Daniel
Re,
...loupé un détail:
Sub Imprim3() With Feuil1 .Activate .PageSetup.PrintHeadings = False .PrintOut .PageSetup.PrintHeadings = True .PrintOut
ActiveWindow.DisplayFormulas = True .Columns.AutoFit .PrintOut ActiveWindow.DisplayFormulas = False .Columns.AutoFit End With ActiveWorkbook.Save End Sub
'LSteph
On Jul 18, 7:52 pm, Eric C wrote:
Voici mon problème : J’ai une feuille de calcul qui me sert à libérer des produits (voir annexe).http://cjoint.com/?AGstXLDuUnk
Cette feuille est imprimée telle quelle et collée dans un cahier de résultats. Jusque là, tout baigne…
Pour que le "controleur" puisse voir ce qui est calculé, je dois imprimer la même feuille avec entête des lignes et des colonnes ET la feuille des formules utilisées avec entête des lignes et des colonnes. Je voudrais faire une macro pour imprimer tout cela automatiquement, j’ai essayé avec l’enregistreur de macros mais je m’y perds et je suis certain qu’une solution toute simple existe… La macro doit : -imprimer la feuille avec les résultats -imprimer la feuille avec les résultats et les noms des colonnes et lignes -imprimer la feuille avec les formules et les noms des colonnes et lignes (ajuster la largeur des colonnes) -réafficher la feuille avec les résultats (sans formules) -enregistrer la feuille
Merci de votre aide précieuse.
-- Pour plaus de facilité, veuillez préciser votre version d'Excel Cordialement. Daniel
-- Pour plaus de facilité, veuillez préciser votre version d'Excel Cordialement. Daniel
LSteph
Bonjour Gloops,
Et ne pas oublier que quand on dit clair, il faut savoir pour qui.
;o) Ca c'est clair!
Ah oui mais Feuil1 de ce fichier, j'imagine ?
...tu ne croirais pas si bien dire avec ton histoire à l'appui mais...et là encore, ce qui semble clair pour certains...
Quand on écrit en VBA ceci dans le code: Feuil1.activate il s'agit de son CodeName (nom en dur dans le VBE) et non pas de son Name(nom d'onglet du classeur dans excel)
qui lui peut très bien être modifié par l'utilisateur et s'averer correspondre à feuil48 ou même s'appeler zaza certains utilisateurs n'auront jamais vu qu'il s'agissait toujours bien de la feuille de CodeName Feuil1
@+
-- LSteph
On Jul 21, 7:00 pm, Gloops wrote:
Ah oui mais Feuil1 de ce fichier, j'imagine ?
Voilà qui me rappelle une mission il n'y a pas très longtemps, où j e me suis cru bien inspiré quand on me demandait de développer un traiteme nt concernant une feuille Excel d'un modèle de fichier à ouvrir chaque mois, de baser le contrôle sur le nom de la feuille.
Pour chacun des traitements concernés, au bout de trois mois on venait me dire que ça ne marchait pas, et on me demandait pourquoi. A chaque fois, c'était parce que le modèle avait changé, en ce sens que le n om de la feuille n'était plus le même. Donc, vraisemblablement aurais-je d û chercher d'autres critères, et surtout mieux documenter sur quel crit ère je basais le contrôle.
En définitive, j'ai même l'impression qu'il aurait fallu fournir une documentation qui décrivait la feuille devant faire l'objet du traitement. Avant de dire que ça ne marchait pas, l'utilisateur aurait lu la doc, et aurait pu constater l'écart entre le modèle reçu et c elui attendu par le traitement.
On a beau avoir une formation qui insiste sur l'essentiel, à savoir la doc, quand on bricole un petit traitement sur un coin de table on a un peu tendance à être négligent. Eh bien c'est un tort.
Ne pas oublier que la doc doit réunir deux qualités : elle doit êtr e claire, et elle doit être conforme à ce qu'elle documente. Il arrive que ça ne soit évident ni sur un point, ni sur l'autre. Et ne pas oublier que quand on dit clair, il faut savoir pour qui.
_____________________________________ LSteph a écrit, le 21/07/2011 12:49 :
> Dangereux cela précisément si on voulait que ce soit toujours Feuil 1 > et surtout pas les autres.
> On Jul 20, 10:58 pm, Gloops wrote: >> Bonsoir,
>> Effectivement, ça serait plus passe-partout de remplacer Feuil1 par >> ActiveSheet.
Bonjour Gloops,
Et ne pas oublier
que quand on dit clair, il faut savoir pour qui.
;o) Ca c'est clair!
Ah oui mais Feuil1 de ce fichier, j'imagine ?
...tu ne croirais pas si bien dire avec ton histoire à l'appui
mais...et là encore, ce qui semble clair pour certains...
Quand on écrit en VBA ceci dans le code: Feuil1.activate
il s'agit de son CodeName (nom en dur dans le VBE) et non pas de son
Name(nom d'onglet du classeur dans excel)
qui lui peut très bien être modifié par l'utilisateur et s'averer
correspondre à feuil48 ou même s'appeler zaza
certains utilisateurs n'auront jamais vu qu'il s'agissait toujours
bien de la feuille de CodeName Feuil1
@+
--
LSteph
On Jul 21, 7:00 pm, Gloops <glo...@invalid.zailes.org> wrote:
Ah oui mais Feuil1 de ce fichier, j'imagine ?
Voilà qui me rappelle une mission il n'y a pas très longtemps, où j e me
suis cru bien inspiré quand on me demandait de développer un traiteme nt
concernant une feuille Excel d'un modèle de fichier à ouvrir chaque
mois, de baser le contrôle sur le nom de la feuille.
Pour chacun des traitements concernés, au bout de trois mois on venait
me dire que ça ne marchait pas, et on me demandait pourquoi. A chaque
fois, c'était parce que le modèle avait changé, en ce sens que le n om de
la feuille n'était plus le même. Donc, vraisemblablement aurais-je d û
chercher d'autres critères, et surtout mieux documenter sur quel crit ère
je basais le contrôle.
En définitive, j'ai même l'impression qu'il aurait fallu fournir une
documentation qui décrivait la feuille devant faire l'objet du
traitement. Avant de dire que ça ne marchait pas, l'utilisateur aurait
lu la doc, et aurait pu constater l'écart entre le modèle reçu et c elui
attendu par le traitement.
On a beau avoir une formation qui insiste sur l'essentiel, à savoir la
doc, quand on bricole un petit traitement sur un coin de table on a un
peu tendance à être négligent. Eh bien c'est un tort.
Ne pas oublier que la doc doit réunir deux qualités : elle doit êtr e
claire, et elle doit être conforme à ce qu'elle documente. Il arrive que
ça ne soit évident ni sur un point, ni sur l'autre. Et ne pas oublier
que quand on dit clair, il faut savoir pour qui.
_____________________________________
LSteph a écrit, le 21/07/2011 12:49 :
> Dangereux cela précisément si on voulait que ce soit toujours Feuil 1
> et surtout pas les autres.
> On Jul 20, 10:58 pm, Gloops<glo...@invalid.zailes.org> wrote:
>> Bonsoir,
>> Effectivement, ça serait plus passe-partout de remplacer Feuil1 par
>> ActiveSheet.
Et ne pas oublier que quand on dit clair, il faut savoir pour qui.
;o) Ca c'est clair!
Ah oui mais Feuil1 de ce fichier, j'imagine ?
...tu ne croirais pas si bien dire avec ton histoire à l'appui mais...et là encore, ce qui semble clair pour certains...
Quand on écrit en VBA ceci dans le code: Feuil1.activate il s'agit de son CodeName (nom en dur dans le VBE) et non pas de son Name(nom d'onglet du classeur dans excel)
qui lui peut très bien être modifié par l'utilisateur et s'averer correspondre à feuil48 ou même s'appeler zaza certains utilisateurs n'auront jamais vu qu'il s'agissait toujours bien de la feuille de CodeName Feuil1
@+
-- LSteph
On Jul 21, 7:00 pm, Gloops wrote:
Ah oui mais Feuil1 de ce fichier, j'imagine ?
Voilà qui me rappelle une mission il n'y a pas très longtemps, où j e me suis cru bien inspiré quand on me demandait de développer un traiteme nt concernant une feuille Excel d'un modèle de fichier à ouvrir chaque mois, de baser le contrôle sur le nom de la feuille.
Pour chacun des traitements concernés, au bout de trois mois on venait me dire que ça ne marchait pas, et on me demandait pourquoi. A chaque fois, c'était parce que le modèle avait changé, en ce sens que le n om de la feuille n'était plus le même. Donc, vraisemblablement aurais-je d û chercher d'autres critères, et surtout mieux documenter sur quel crit ère je basais le contrôle.
En définitive, j'ai même l'impression qu'il aurait fallu fournir une documentation qui décrivait la feuille devant faire l'objet du traitement. Avant de dire que ça ne marchait pas, l'utilisateur aurait lu la doc, et aurait pu constater l'écart entre le modèle reçu et c elui attendu par le traitement.
On a beau avoir une formation qui insiste sur l'essentiel, à savoir la doc, quand on bricole un petit traitement sur un coin de table on a un peu tendance à être négligent. Eh bien c'est un tort.
Ne pas oublier que la doc doit réunir deux qualités : elle doit êtr e claire, et elle doit être conforme à ce qu'elle documente. Il arrive que ça ne soit évident ni sur un point, ni sur l'autre. Et ne pas oublier que quand on dit clair, il faut savoir pour qui.
_____________________________________ LSteph a écrit, le 21/07/2011 12:49 :
> Dangereux cela précisément si on voulait que ce soit toujours Feuil 1 > et surtout pas les autres.
> On Jul 20, 10:58 pm, Gloops wrote: >> Bonsoir,
>> Effectivement, ça serait plus passe-partout de remplacer Feuil1 par >> ActiveSheet.
Gloops
LSteph a écrit, le 22/07/2011 12:24 :
Quand on écrit en VBA ceci dans le code: Feuil1.activate il s'agit de son CodeName (nom en dur dans le VBE) et non pas de son Name(nom d'onglet du classeur dans excel)
Oui, en effet. Enfin dans mon cas, c'était plutôt
If ActiveWorkbook.Sheets(1).Name <> "Feuil1" Then MsgBox "Ce classeur semble ne pas correspondre " + _ "au modèle prévu pour ce traitement" Traitement = False Exit Function End If
Alors si, derrière, l'utilisateur renomme la feuille en se disant que c'est plus clair pour lui, ben ... j'ai tout faux.
LSteph a écrit, le 22/07/2011 12:24 :
Quand on écrit en VBA ceci dans le code: Feuil1.activate
il s'agit de son CodeName (nom en dur dans le VBE) et non pas de son
Name(nom d'onglet du classeur dans excel)
Oui, en effet.
Enfin dans mon cas, c'était plutôt
If ActiveWorkbook.Sheets(1).Name <> "Feuil1" Then
MsgBox "Ce classeur semble ne pas correspondre " + _
"au modèle prévu pour ce traitement"
Traitement = False
Exit Function
End If
Alors si, derrière, l'utilisateur renomme la feuille en se disant que
c'est plus clair pour lui, ben ... j'ai tout faux.
Quand on écrit en VBA ceci dans le code: Feuil1.activate il s'agit de son CodeName (nom en dur dans le VBE) et non pas de son Name(nom d'onglet du classeur dans excel)
Oui, en effet. Enfin dans mon cas, c'était plutôt
If ActiveWorkbook.Sheets(1).Name <> "Feuil1" Then MsgBox "Ce classeur semble ne pas correspondre " + _ "au modèle prévu pour ce traitement" Traitement = False Exit Function End If
Alors si, derrière, l'utilisateur renomme la feuille en se disant que c'est plus clair pour lui, ben ... j'ai tout faux.