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

Macro défaillante

6 réponses
Avatar
Laetitia
Bonjour,

Je travaille sur des fichiers Excel mont=E9s par un utilisateur de ce
groupe qui se reconnaitra :-) et j'ai quelques petits soucis en ce qui
concerne les macros... je ne connais pas vraiment la programmation mais
j'essai de d=E9patouiller et l=E0 je peux pas...

La macro en question aujourd'hui est cens=E9e :

'on exporte la commande valid=E9e dans le classeur mensuel, en faisant
un copier-coller valeurs
'ce qui fige la date, le num=E9ro de commande et les montants

Seulement voil=E0, les donn=E9es sont bien export=E9es mais en formules et
non en valeur, ce qui fait que ce n'est pas fig=E9...
Voil=E0 la macro :

Workbooks("Mod=E8le Achat.xls").Sheets("Achat").Activate
Cells.Select
Selection.Locked =3D True
Selection.Copy
Windows(ClassDest).Activate
Sheets.Add.Name =3D Onglet
Application.DisplayAlerts =3D False
ActiveSheet.Paste
Selection.PasteSpecial Paste:=3DxlPasteformat
Selection.PasteSpecial Paste:=3DxlPasteValues, Operation:=3DxlNone,
SkipBlanks _
:=3DFalse, Transpose:=3DFalse
ActiveSheet.Shapes("CmdSuite").Delete
ActiveSheet.Shapes("R=E9Init").Delete
ActiveSheet.Shapes("Base_Donn=E9es").Delete

D'autre part, une autre macro coince juste apr=E8s :

'sur le classeur Mod=E8le Achats, on efface la saisie pr=E9c=E9dente,
'on incr=E9mente le num=E9ro et on le sauve
With Workbooks("Mod=E8le Achat.xls")
.Activate
.Sheets("codes").Range("A2") =3D .Sheets("codes").Range("A2") + 1
.Save
End With

Celle-ci est cens=E9e effacer les modifs du bon d'achat type puis
=E9craser ce m=EAme bon d'achat afin d'incr=E9menter le num=E9ro. Elle
n'efface rien... Par contre elle incr=E9mente le num=E9ro =E7a, y a pas de
probl=E8me...

Alors voil=E0 je sais pas si quelqu'un peut m'aider avec ces quelques
lignes de macros.... Mais je vous en remercie quand m=EAme d'avance !!!

6 réponses

Avatar
ThierryP
Salut Laetitia,

pour le 1er point, je ne comprends pas trop, car chez moi, ça
fonctionne. Marche également sur le PC où ce fichier est en service.
Peut-être dû à un problème de version ?????
pour le deuxième point, tu as raison....j'ai menti comme un arracheur de
dents....si tu as un peu de temps, je te ferais passer une modif d'ici
ce soir


Bonjour,

Je travaille sur des fichiers Excel montés par un utilisateur de ce
groupe qui se reconnaitra :-) et j'ai quelques petits soucis en ce qui
concerne les macros... je ne connais pas vraiment la programmation mais
j'essai de dépatouiller et là je peux pas...

La macro en question aujourd'hui est censée :

'on exporte la commande validée dans le classeur mensuel, en faisant
un copier-coller valeurs
'ce qui fige la date, le numéro de commande et les montants

Seulement voilà, les données sont bien exportées mais en formules et
non en valeur, ce qui fait que ce n'est pas figé...
Voilà la macro :

Workbooks("Modèle Achat.xls").Sheets("Achat").Activate
Cells.Select
Selection.Locked = True
Selection.Copy
Windows(ClassDest).Activate
Sheets.Add.Name = Onglet
Application.DisplayAlerts = False
ActiveSheet.Paste
Selection.PasteSpecial Paste:=xlPasteformat
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone,
SkipBlanks _
:úlse, Transpose:úlse
ActiveSheet.Shapes("CmdSuite").Delete
ActiveSheet.Shapes("RéInit").Delete
ActiveSheet.Shapes("Base_Données").Delete

D'autre part, une autre macro coince juste après :

'sur le classeur Modèle Achats, on efface la saisie précédente,
'on incrémente le numéro et on le sauve
With Workbooks("Modèle Achat.xls")
.Activate
.Sheets("codes").Range("A2") = .Sheets("codes").Range("A2") + 1
.Save
End With

Celle-ci est censée effacer les modifs du bon d'achat type puis
écraser ce même bon d'achat afin d'incrémenter le numéro. Elle
n'efface rien... Par contre elle incrémente le numéro ça, y a pas de
problème...

Alors voilà je sais pas si quelqu'un peut m'aider avec ces quelques
lignes de macros.... Mais je vous en remercie quand même d'avance !!!



--


@+ thierryp
-----------------
Passer pour un idiot aux yeux d'un imbécile est une volupté de fin
gourmet - G. Courteline

Avatar
Laetitia
Salut Thierry !!

Je vois effectivement pas pourquoi ça ne fonctionne pas puisque les
lignes de programmation ont l'air de bien dire de ne coller que les
valeurs... Si quelqu'un d'autre détecte une anomalie... Et sinon
c'était quoi comme version ??

Pour ce qui est de la modif, pas de problème j'attend ! Je l'aurai
bien modifié moi-même mais... oups je sais pas faire ! lol

Merci !

Laetitia



Salut Laetitia,

pour le 1er point, je ne comprends pas trop, car chez moi, ça
fonctionne. Marche également sur le PC où ce fichier est en service.
Peut-être dû à un problème de version ?????
pour le deuxième point, tu as raison....j'ai menti comme un arracheur de
dents....si tu as un peu de temps, je te ferais passer une modif d'ici
ce soir


Bonjour,

Je travaille sur des fichiers Excel montés par un utilisateur de ce
groupe qui se reconnaitra :-) et j'ai quelques petits soucis en ce qui
concerne les macros... je ne connais pas vraiment la programmation mais
j'essai de dépatouiller et là je peux pas...

La macro en question aujourd'hui est censée :

'on exporte la commande validée dans le classeur mensuel, en faisant
un copier-coller valeurs
'ce qui fige la date, le numéro de commande et les montants

Seulement voilà, les données sont bien exportées mais en formules et
non en valeur, ce qui fait que ce n'est pas figé...
Voilà la macro :

Workbooks("Modèle Achat.xls").Sheets("Achat").Activate
Cells.Select
Selection.Locked = True
Selection.Copy
Windows(ClassDest).Activate
Sheets.Add.Name = Onglet
Application.DisplayAlerts = False
ActiveSheet.Paste
Selection.PasteSpecial Paste:=xlPasteformat
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone,
SkipBlanks _
:úlse, Transpose:úlse
ActiveSheet.Shapes("CmdSuite").Delete
ActiveSheet.Shapes("RéInit").Delete
ActiveSheet.Shapes("Base_Données").Delete

D'autre part, une autre macro coince juste après :

'sur le classeur Modèle Achats, on efface la saisie précédente,
'on incrémente le numéro et on le sauve
With Workbooks("Modèle Achat.xls")
.Activate
.Sheets("codes").Range("A2") = .Sheets("codes").Range("A2") + 1
.Save
End With

Celle-ci est censée effacer les modifs du bon d'achat type puis
écraser ce même bon d'achat afin d'incrémenter le numéro. Elle
n'efface rien... Par contre elle incrémente le numéro ça, y a pas de
problème...

Alors voilà je sais pas si quelqu'un peut m'aider avec ces quelques
lignes de macros.... Mais je vous en remercie quand même d'avance !!!



--


@+ thierryp
-----------------
Passer pour un idiot aux yeux d'un imbécile est une volupté de fin
gourmet - G. Courteline



Avatar
ThierryP
Merci pour ton indulgence.....!!
Pour la version, c'est Excel 2002 avec Windows 2000 sur certains PC, ou
Office XP + XP. J'ai refait un test, ça fonctionne, j'ai comparé avec
l'enregistreur de macros, j'ai la même syntaxe... Donc effectivement, si
quelqu'un voit une anomalie, toute aide sera la bienvenue !!

Salut Thierry !!

Je vois effectivement pas pourquoi ça ne fonctionne pas puisque les
lignes de programmation ont l'air de bien dire de ne coller que les
valeurs... Si quelqu'un d'autre détecte une anomalie... Et sinon
c'était quoi comme version ??

Pour ce qui est de la modif, pas de problème j'attend ! Je l'aurai
bien modifié moi-même mais... oups je sais pas faire ! lol

Merci !

Laetitia



Salut Laetitia,

pour le 1er point, je ne comprends pas trop, car chez moi, ça
fonctionne. Marche également sur le PC où ce fichier est en service.
Peut-être dû à un problème de version ?????
pour le deuxième point, tu as raison....j'ai menti comme un arracheur de
dents....si tu as un peu de temps, je te ferais passer une modif d'ici
ce soir


Bonjour,

Je travaille sur des fichiers Excel montés par un utilisateur de ce
groupe qui se reconnaitra :-) et j'ai quelques petits soucis en ce qui
concerne les macros... je ne connais pas vraiment la programmation mais
j'essai de dépatouiller et là je peux pas...

La macro en question aujourd'hui est censée :

'on exporte la commande validée dans le classeur mensuel, en faisant
un copier-coller valeurs
'ce qui fige la date, le numéro de commande et les montants

Seulement voilà, les données sont bien exportées mais en formules et
non en valeur, ce qui fait que ce n'est pas figé...
Voilà la macro :

Workbooks("Modèle Achat.xls").Sheets("Achat").Activate
Cells.Select
Selection.Locked = True
Selection.Copy
Windows(ClassDest).Activate
Sheets.Add.Name = Onglet
Application.DisplayAlerts = False
ActiveSheet.Paste
Selection.PasteSpecial Paste:=xlPasteformat
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone,
SkipBlanks _
:úlse, Transpose:úlse
ActiveSheet.Shapes("CmdSuite").Delete
ActiveSheet.Shapes("RéInit").Delete
ActiveSheet.Shapes("Base_Données").Delete

D'autre part, une autre macro coince juste après :

'sur le classeur Modèle Achats, on efface la saisie précédente,
'on incrémente le numéro et on le sauve
With Workbooks("Modèle Achat.xls")
.Activate
.Sheets("codes").Range("A2") = .Sheets("codes").Range("A2") + 1
.Save
End With

Celle-ci est censée effacer les modifs du bon d'achat type puis
écraser ce même bon d'achat afin d'incrémenter le numéro. Elle
n'efface rien... Par contre elle incrémente le numéro ça, y a pas de
problème...

Alors voilà je sais pas si quelqu'un peut m'aider avec ces quelques
lignes de macros.... Mais je vous en remercie quand même d'avance !!!

--



@+ thierryp
-----------------
Passer pour un idiot aux yeux d'un imbécile est une volupté de fin
gourmet - G. Courteline




--


@+ thierryp
-----------------
Passer pour un idiot aux yeux d'un imbécile est une volupté de fin
gourmet - G. Courteline



Avatar
docm
Il y a une erreur ici
Selection.PasteSpecial Paste:=xlPasteformat
qui devrait être
Selection.PasteSpecial Paste:=xlPasteformats

docm



"ThierryP" wrote in message
news:u$
Merci pour ton indulgence.....!!
Pour la version, c'est Excel 2002 avec Windows 2000 sur certains PC, ou
Office XP + XP. J'ai refait un test, ça fonctionne, j'ai comparé avec
l'enregistreur de macros, j'ai la même syntaxe... Donc effectivement, si
quelqu'un voit une anomalie, toute aide sera la bienvenue !!

Salut Thierry !!

Je vois effectivement pas pourquoi ça ne fonctionne pas puisque les
lignes de programmation ont l'air de bien dire de ne coller que les
valeurs... Si quelqu'un d'autre détecte une anomalie... Et sinon
c'était quoi comme version ??

Pour ce qui est de la modif, pas de problème j'attend ! Je l'aurai
bien modifié moi-même mais... oups je sais pas faire ! lol

Merci !

Laetitia



Salut Laetitia,

pour le 1er point, je ne comprends pas trop, car chez moi, ça
fonctionne. Marche également sur le PC où ce fichier est en service.
Peut-être dû à un problème de version ?????
pour le deuxième point, tu as raison....j'ai menti comme un arracheur
de



dents....si tu as un peu de temps, je te ferais passer une modif d'ici
ce soir


Bonjour,

Je travaille sur des fichiers Excel montés par un utilisateur de ce
groupe qui se reconnaitra :-) et j'ai quelques petits soucis en ce qui
concerne les macros... je ne connais pas vraiment la programmation
mais




j'essai de dépatouiller et là je peux pas...

La macro en question aujourd'hui est censée :

'on exporte la commande validée dans le classeur mensuel, en faisant
un copier-coller valeurs
'ce qui fige la date, le numéro de commande et les montants

Seulement voilà, les données sont bien exportées mais en formules et
non en valeur, ce qui fait que ce n'est pas figé...
Voilà la macro :

Workbooks("Modèle Achat.xls").Sheets("Achat").Activate
Cells.Select
Selection.Locked = True
Selection.Copy
Windows(ClassDest).Activate
Sheets.Add.Name = Onglet
Application.DisplayAlerts = False
ActiveSheet.Paste
Selection.PasteSpecial Paste:=xlPasteformat
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone,
SkipBlanks _
:úlse, Transpose:úlse
ActiveSheet.Shapes("CmdSuite").Delete
ActiveSheet.Shapes("RéInit").Delete
ActiveSheet.Shapes("Base_Données").Delete

D'autre part, une autre macro coince juste après :

'sur le classeur Modèle Achats, on efface la saisie précédente,
'on incrémente le numéro et on le sauve
With Workbooks("Modèle Achat.xls")
.Activate
.Sheets("codes").Range("A2") = .Sheets("codes").Range("A2") +
1




.Save
End With

Celle-ci est censée effacer les modifs du bon d'achat type puis
écraser ce même bon d'achat afin d'incrémenter le numéro. Elle
n'efface rien... Par contre elle incrémente le numéro ça, y a pas de
problème...

Alors voilà je sais pas si quelqu'un peut m'aider avec ces quelques
lignes de macros.... Mais je vous en remercie quand même d'avance !!!

--



@+ thierryp
-----------------
Passer pour un idiot aux yeux d'un imbécile est une volupté de fin
gourmet - G. Courteline




--


@+ thierryp
-----------------
Passer pour un idiot aux yeux d'un imbécile est une volupté de fin
gourmet - G. Courteline





Avatar
Thierryp
Bonjour,

Ouf !!! Je crois que Laetitia va être contente.... j'avoue que je
n'avais même pas fait attention.....
Merci pour elle :-))))

--
@+ thierryp

------------------------
Passer pour un idiot aux yeux d'un imbécile est une volupté de fin gourmet. (Courteline)
------------------------



Il y a une erreur ici
Selection.PasteSpecial Paste:=xlPasteformat
qui devrait être
Selection.PasteSpecial Paste:=xlPasteformats

docm



"ThierryP" wrote in message
news:u$

Merci pour ton indulgence.....!!
Pour la version, c'est Excel 2002 avec Windows 2000 sur certains PC, ou
Office XP + XP. J'ai refait un test, ça fonctionne, j'ai comparé avec
l'enregistreur de macros, j'ai la même syntaxe... Donc effectivement, si
quelqu'un voit une anomalie, toute aide sera la bienvenue !!


Salut Thierry !!

Je vois effectivement pas pourquoi ça ne fonctionne pas puisque les
lignes de programmation ont l'air de bien dire de ne coller que les
valeurs... Si quelqu'un d'autre détecte une anomalie... Et sinon
c'était quoi comme version ??

Pour ce qui est de la modif, pas de problème j'attend ! Je l'aurai
bien modifié moi-même mais... oups je sais pas faire ! lol

Merci !

Laetitia




Salut Laetitia,

pour le 1er point, je ne comprends pas trop, car chez moi, ça
fonctionne. Marche également sur le PC où ce fichier est en service.
Peut-être dû à un problème de version ?????
pour le deuxième point, tu as raison....j'ai menti comme un arracheur

de




dents....si tu as un peu de temps, je te ferais passer une modif d'ici
ce soir



Bonjour,

Je travaille sur des fichiers Excel montés par un utilisateur de ce
groupe qui se reconnaitra :-) et j'ai quelques petits soucis en ce qui
concerne les macros... je ne connais pas vraiment la programmation

mais





j'essai de dépatouiller et là je peux pas...

La macro en question aujourd'hui est censée :

'on exporte la commande validée dans le classeur mensuel, en faisant
un copier-coller valeurs
'ce qui fige la date, le numéro de commande et les montants

Seulement voilà, les données sont bien exportées mais en formules et
non en valeur, ce qui fait que ce n'est pas figé...
Voilà la macro :

Workbooks("Modèle Achat.xls").Sheets("Achat").Activate
Cells.Select
Selection.Locked = True
Selection.Copy
Windows(ClassDest).Activate
Sheets.Add.Name = Onglet
Application.DisplayAlerts = False
ActiveSheet.Paste
Selection.PasteSpecial Paste:=xlPasteformat
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone,
SkipBlanks _
:úlse, Transpose:úlse
ActiveSheet.Shapes("CmdSuite").Delete
ActiveSheet.Shapes("RéInit").Delete
ActiveSheet.Shapes("Base_Données").Delete

D'autre part, une autre macro coince juste après :

'sur le classeur Modèle Achats, on efface la saisie précédente,
'on incrémente le numéro et on le sauve
With Workbooks("Modèle Achat.xls")
.Activate
.Sheets("codes").Range("A2") = .Sheets("codes").Range("A2") +

1





.Save
End With

Celle-ci est censée effacer les modifs du bon d'achat type puis
écraser ce même bon d'achat afin d'incrémenter le numéro. Elle
n'efface rien... Par contre elle incrémente le numéro ça, y a pas de
problème...

Alors voilà je sais pas si quelqu'un peut m'aider avec ces quelques
lignes de macros.... Mais je vous en remercie quand même d'avance !!!


--



@+ thierryp
-----------------
Passer pour un idiot aux yeux d'un imbécile est une volupté de fin
gourmet - G. Courteline

--




@+ thierryp
-----------------
Passer pour un idiot aux yeux d'un imbécile est une volupté de fin
gourmet - G. Courteline











Avatar
Laetitia
Merci bien docm effectivement !!

Cependant.... ça ne marche pas mieux...
Enfin, il faut que je vois si j'ai bien fait le changement mais il me
semble que ça change rien...
Merci quand même !

Laetitia