Macro ne fonctionne pas sur tous les PCs

Bonjour Forum,

J'ai besoin de votre aide svp. J'ai une macro qui ne fonctionne pas sur l'ordi de ma collègue, mais elle fonctionne sur le mien, comment je puisse résoudre ce problème ?

Merci,

Bonjour bofala,

sans même télécharger tes fichiers, voici juste quelques pistes : si ça marche sur ton PC et pas sur l'ordi de ta collègue, vérifie si elle a comme toi Excel 2016 ou un Excel plus ancien ; compare aussi vos versions de Windows ; peut-être que son paramétrage d'Excel est différent du tien ? peut-être as-tu installé une macro complémentaire qu'elle n'a pas ?

solution ultime en désespoir de cause : invite-la à venir utiliser ton PC.

(et plus si affinités...)

dhany

BOnjour,

Avec un mot de passe sur le projet vba çà va être difficile de voir si il y a un code ou une référence

qui ne peut être utilisé sur l'ordinateur de la collègue ?

Excuse-moi. Le Mdp est : Paris2046!

Dhany, elle a la même version Excel et Windows que moi. C'est bizarre !

A disposition !

A première vue ne vois pas d'erreur et la macro se lance de mon coté

A vérifier si :

  • mêmes références installées dans le vba des deux PC dans le menu vba onglet "Outils" / Références. ?
  • option Général : Fichier / options / Centre gestion confidentialité / paramètre / sécurité macro. ?

ça ma rend fou. J'ai vérifié tout (versions, sécurité comme tu m'as demandé, références similaires). C'est totalement pareil en comparant avec mon ordi.

Je ne sais pas où est le souci..

j'ai toujours pas d'autre idée, mais dans ton énoncé, tu as seulement dit :

« J'ai une macro qui ne fonctionne pas sur l'ordi de ma collègue »

sans expliquer au juste ce qui ne va pas : quel est le message d'erreur ?

quelle est la ligne mise en jaune dans le code VBA ?

(et c'est pas indiqué non plus dans tes 2 fichiers joints)


question bête : quand tu as passé ton fichier à ta collègue, tu lui as bien donné un fichier .xlsm (avec macros) ?

car si tu lui as passé un fichier .xlsx, la macro risque pas d'fonctionner vu qu'il ne contient pas d'macros !

dhany

Bonsoir Bofala,

Si elle est blonde, ta collègue, cela peut arriver...

Pardon, fin de journée... Explique mieux pourquoi elle ne fonctionne pas. Rien ne se passe?

Une partie de la macro tourne mais bloque à un instant donné. Le plus simple est que tu places des Stop à certains endroits du programme pour vérifier les valeurs retournées quand tu est sur son poste.

Bonjour dhany, X Cellus, Xmenpl,

Je vous explique le problème. Dans mon ordi, quand j'exécute la macro, ça me donne directement le ou les menus souhaités et je clique sur le bouton. Pas de souci alors.

Alors pour elle, ça donne rien. Rien ne se passe. Ni menu ni rien.

X Cellus,

Tu as proposé de faire des STOPs, penses-tu que ça peut résoudre le problème ? Si oui, peux-tu développer encore plus où je peux les mettre et je testerai demain matin sur son ordi ou faire ça sur le fichier en haut si ça ne te dérange pas ?

Merci d'avance,

Bonjour bofala,

essaye en ajoutant en haut du code du formulaire "début" :

Private Sub UserForm_Initialize()
  Me.startUpPosition = 0
  Me.Top = Application.Height - Me.Height
  Me.Left = Application.Width - Me.Width
End Sub

et dans Module1 :

Sub Macro_Planning()
    Dim test As String
    test = ActiveWorkbook.Name
    If test Like "Macro*" Then
        MsgBox "Veuillez sélectionner le fichier du planning d'équipe comme fenêtre active avant de lancer la macro.", vbExclamation
    ElseIf test Like "Planning_Equipe*" Or test Like "planning*" Or test Like "Planning*" Or test Like "*Planning_Equipe*" Or test Like "*Planning*" Or test Like "Planning_*" Or test Like "*Planning_*" Then
        Application.ScreenUpdating = False: début.Show
    Else
        MsgBox "Veuillez sélectionner le fichier du planning d'équipe comme fenêtre active avant de lancer la macro.", vbExclamation
    End If
End Sub

dhany

Bonjour,

J'ai essayé ce matin sur tous les ordis de l'équipe, ça marche pour tout le monde sauf l'ordi de cette collègue. Cette fois-ci, l'Excel se plante et on ne peut rien faire, je passe par le gestionnaire des tâches pour faire fin. Je trouve ça bizarre, c'est peut-être dû à son ordi /problème informatique, j'en sais rien. Sauf que toutes autres macros fonctionnent sur son ordi.

Merci pour votre aide,

Bonjour bofala,

merci pour ton retour d'info, même si le problème n'est pas réglé !

bonne continuation !

dhany

Merci à toi dhany. On a essayé de modifier et vérifier la sécurité/références/code vba de la macro, rien n'est abouti jusqu'à maintenant. Je ne sais pas si quelqu'un a d'autres propositions à tester, je serai aussi preneur.

Bonne journée à vous tous !

Bonjour Bofala,

J'ai testé tes fichiers et malgré que cela ne soit pas bien optimisé comme code. Le lancement de la macro se fait.

Je supposes qu'il est possible de lancer la macro sur son pc mais que cela dérape ensuite. Si tu passes par l'éditeur et place un Stop en fin du code Début sans souci au lancement tu auras déjà un premier palier. Ensuite met ce stop en commentaire et met un Stop sur le code suivant.

Tu verras à quel moment cela pose problème.

Bonjour à tous,

La suggestion d'X Cellus en pas-à-pas détaillé...

Sur l'ordinateur de ta collègue où l'exécution pose problème ...

Ouvre les deux fichiers : 1- Planning_Equipe ......... puis, macro_planning........

Ouvre la fenêtre "Microsoft Visual Basic pour Applications" (raccourci ALT-F11) .

Va dans le Module1 ... "Sub Macro_Planning()" ... clique sur la 2e ligne test = ActiveWorkBook.Name.

Frappe F9 ... la ligne va être contrastée.

Place la fenêtre de code et celle du fichier "Planning_Equipe.... " de façon à avoir les deux à l'écran.

À partir du fichier "Planning_Equipe.... ", lance la macro selon la procédure recommandée dans les instructions.

Tu vas remarquer que la ligne de code test = ActiveWorkBook.Name est sélectionnée d'une autre couleur (peut-être jaune).

Maintenant, clique dans la fenêtre du code et frappe F8 ... la ligne contrastée en jaune va changer pour la ligne suivante active.

Frappe F8 à répétition lente afin de laisser le code s'exécuter ligne par ligne.

Ainsi, tu vas trouver quelle ligne pose problème.

Dès lors, l'on pourra comprendre ce qui se passe et probablement apporter une solution.

ric.

Bonsoir Bofala,

J'ai modifié le code de la macro Impression. Pour éviter de passer par les boucles Loop.

J'ai mis un stop avant le commentaire Partie du code à supprimer...

Pour l'instant cette partie n'est pas supprimée ni mis en commentaire.

Voir si la modif te va.

A suivre...

Bonsoir tout le monde,

Merci à tous pour vos aides. J'ai trouvé où se trouve le problème. En fait, ma collègue utilise 2 écrans (le 2ème est grand, pour la projection). Donc, elle projette les fichiers sur l'écran de projection et là où ça ne marche pas. Mais sur l'écran de son pc portable, ça fonctionne parfaitement. A mon avis, il faut modifier quelque chose dans les paramètres de projection. Que pensez-vous ?

Merci d'avance,

A nouveau,

Il suffit de paramétrer que le grand ecran est celui principal plutôt que celui de son portable.

Passe par panneau de configuration. Choisir celui de la carte video gérant l'affichage.

Puis sur configurer plusieurs affichages. Sélectionner l'affichage principal sur windows comme celui du grand ecran et non plus son portable.

Bonsoir,

J'ai fait ce que tu m'as proposé, mais ça donne un double écran, même affichage pour les 2 écrans. Elle ne veut pas avoir les icônes, que l'image et la barre des tâches. Si elle veut projeter quelque chose, elle le glissera sur l'écran principal.

Comment on peut faire stp ?

MERCI !

A nouveau,

Il faut que l'écran principal soit celui du grand et l'écran secondaire celui du portable. Donc la carte vidéo doit gérer les 2 écrans.

Je fais cela surtout pour la retouche photos. La souris est capable d'aller d'un écran à l'autre si besoin. La sortie des fichiers Excel, donc l'image du planning se gère sur le grand.

Ensuite elle peut toujours revenir à son écran habituel lorsqu'elle n'utilise pas le planning. C'est juste une manip sur la carte vidéo. Cela ne change rien à l'utilisation du clavier ou des clics souris.

Tu peux aussi prendre son grand écran pour faire un test avec ton ordi. Il faut vérifier que la carte vidéo est capable de gérer le double affichage différent.

Rechercher des sujets similaires à "macro fonctionne pas tous pcs"