Macro ne fonctionne qu'en pas à pas
caravanevba
Messages postés
10
Date d'inscription
Statut
Membre
Dernière intervention
-
caravanevba Messages postés 10 Date d'inscription Statut Membre Dernière intervention -
caravanevba Messages postés 10 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
j'ai trouvé cette macro sur internet qui fonctionne très bien en pas à pas, mais quand je la lance depuis le bouton, ça ne copie rien et je me retrouve avec un fichier JPG complètement blanc...
Pouvez vous m'aider please :-)
j'ai trouvé cette macro sur internet qui fonctionne très bien en pas à pas, mais quand je la lance depuis le bouton, ça ne copie rien et je me retrouve avec un fichier JPG complètement blanc...
Pouvez vous m'aider please :-)
Sub photo() Sheets("services").Activate Dim S As Range Set S = ActiveSheet.Range("A1:D24") S.CopyPicture Application.ScreenUpdating = False Sheets.Add ActiveSheet.Name = "photo" With Sheets("photo").ChartObjects.Add(0, 0, S.Width, S.Height).Chart .Paste .Export "C:\Users\PAVILION\Desktop\services.jpg", "JPG" End With Application.DisplayAlerts = False Sheets("photo").Delete Application.DisplayAlerts = True ActiveWorkbook.Save End Sub
EDIT : Ajout des balises de code (la coloration syntaxique).
Explications disponibles ici : ICI Merci d'y penser dans tes prochains messages. |
A voir également:
- Les fonctionnalités suivantes ne peuvent pas être enregistrées dans des classeurs sans macro
- Suivi des modifications word - Guide
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Mes photos enregistrées - Guide
- Images enregistrées - Forum Windows
- Récupérer des images et vidéos enregistrées sur facebook - Forum Gravure
3 réponses
Bonjour,
Tu as sans doute mis ta macro dans un module, si tu la mets dans ta feuille "services" elle devrait fonctionner.
Tu as sans doute mis ta macro dans un module, si tu la mets dans ta feuille "services" elle devrait fonctionner.
Merci beaucoup d'avoir mis les colorations etc, en fait, mon problème est que je n'ai pas pu sélectionner vba dans le menu code... Il n'y avait pas d'ascenseur pour aller au delà de s...
Bonjour,
Dans ton cas, comme je t'ai dit il est préférable de garder ta macro dans le module. Avec ton code, la copie se perdait, alors je te propose celui-ci, pas très différent mais qui fonctionne me semble-t-il correctement.
Dans ton cas, comme je t'ai dit il est préférable de garder ta macro dans le module. Avec ton code, la copie se perdait, alors je te propose celui-ci, pas très différent mais qui fonctionne me semble-t-il correctement.
Sub photo() Dim S As Range, ws As Worksheet Set ws = Sheets("services") Set S = ws.Range("A1:D24") Application.ScreenUpdating = False Sheets.Add With ActiveSheet.ChartObjects.Add(0, 0, S.Width, S.Height).Chart ws.Range("A1:D24").CopyPicture .Paste .Export "C:\Users\PAVILION\Desktop\services.jpg", "JPG" End With Application.DisplayAlerts = False ActiveSheet.Delete Set ws = Nothing Set S = Nothing Application.DisplayAlerts = True ActiveWorkbook.Save End Sub
bonjour,
désolée réponse un peu tardive mais le speed de la semaine avec les enfants... bref,
J'ai essayé ta proposition et ça ne marche malheureusement pas mieux...
Par contre un truc étrange s'est produit :
J'ai mis la macro sur un autre ordi sans changer le code et tout s'est bien passé. Puis au moment de faire la mise à jour (l'idée de cette macro c'est de mettre à jour un fichier excel puis de prendre une photo du résultat), et bien ça n'a pas marché.
Donc, je me demande si en rajoutant dans le code de commencer par effacer le dernier fichier JPG ça ne pourrait pas marcher...
Je teste et je te dis...
Merci pour tes conseils gbinforme
désolée réponse un peu tardive mais le speed de la semaine avec les enfants... bref,
J'ai essayé ta proposition et ça ne marche malheureusement pas mieux...
Par contre un truc étrange s'est produit :
J'ai mis la macro sur un autre ordi sans changer le code et tout s'est bien passé. Puis au moment de faire la mise à jour (l'idée de cette macro c'est de mettre à jour un fichier excel puis de prendre une photo du résultat), et bien ça n'a pas marché.
Donc, je me demande si en rajoutant dans le code de commencer par effacer le dernier fichier JPG ça ne pourrait pas marcher...
Je teste et je te dis...
Merci pour tes conseils gbinforme
Merci pour ta réponse rapide, c'est top !
Pour tout dire ceci est un bout de macro. Toute la macro fonctionne impeccablement, mais ce bout ne fonctionne qu'en mode pas à pas. Du coup je l'ai enlever du module où j'ai ma macro pour le mettre dans un autre module et faire un call sur ma macro racine.
J'aimerais bien essayer de mettre ma macro sur une feuille, mais je ne sais pas du tout comment faire, peux tu me donner quelques explications complémentaires ?
Merci encore :-)
Du coup je l'ai enlever du module où j'ai ma macro pour le mettre dans un autre module et faire un call sur ma macro racine.
Effectivement, je n'avais pas essayé le call !
Si avec le call elle fonctionne tu devrais pouvoir la garder dans le même module, ce qui est préférable au positionnement dans la feuille.
Le non fonctionnement vient sans doute d'un adressage incomplet (qui est réalisé du fait du pas à pas) mais je ne vois pas comment le compléter.
bonne soirée.
En fait le call ne marche pas c'est pour ça que j'ai posté ma question :-)
Donc si tu peux m'expliquer comment mettre une macro dans une feuille, je pourrai essayer ?
Si quelqu'un d'autre a une idée, surtout n'hésitez pas, lol !!
Bonne journée à tous,