Erreur VBA à l'ouverture d'un fichier

villette54

XLDnaute Junior
Bonjour à tous,

J'ai un petit soucis avec VBA.

J'ai un fichier que j'ai récemment réalisé avec pas mal de VBA qui fonctionne parfaitement à une condition : qu'aucun n'autre fichier Excel ne soit ouvert en même temps... Ce qui est assez gênant il faut l'admettre.

J'ai essayé de résoudre le problème, j'ai supprimé une ligne qui se mettait en défaut dès que j'ouvrais mon fichier avec un autre fichier Excel ouvert, cette ligne ne servait pourtant qu'a masquer un bouton sur mon fichier.
Code:
Sheets(1).Shapes.Range(Array("Button 71")).Visible = False

Et maintenant j'ai de nouveaux messages d'erreur, ne sachant pas vraiment quoi faire pour résoudre ce problème j'espère que quelqu'un à déjà eu un problème semblable, et réussi à le résoudre.
Je ne met pas de copie de mon fichier pour le moment car il contient une énorme quantité d'informations relatives à mon entreprise.

Si des personnes souhaite vraiment une copie du fichier pour pouvoir m'aider, je supprimerais toutes ces données afin de pouvoir le partager, en attendant voici une capture d'écran de mes messages d'erreur en pièce jointe.

Merci d'avance.
 

Pièces jointes

  • Erreur VBA.jpg
    Erreur VBA.jpg
    20.2 KB · Affichages: 76
  • Erreur VBA.jpg
    Erreur VBA.jpg
    20.2 KB · Affichages: 86
  • Erreur VBA.jpg
    Erreur VBA.jpg
    20.2 KB · Affichages: 84

jp14

XLDnaute Barbatruc
Re : Erreur VBA à l'ouverture d'un fichier

Bonjour

Une piste

Si plusieurs fichier sont ouvert, on risque d'avoir des ambiguïté au niveau de l'adresse des objets , en particulier avec ce type d'écriture "Sheets(1)". Il faudrait préciser le nom du fichier qui contient cette feuille par exemple Workbooks("Toto").Sheets(1)

JP
 
G

Guest

Guest
Re : Erreur VBA à l'ouverture d'un fichier

Bonjour,

Comme mon camarade jp14 (que je salue au passage)

plus un raccourci à employer sans modération: ThisWorkbook qui fait toujours référence au classeur concerné par la ligne de code.

Code:
ThisWorkBook.Sheets(1).Shapes.Range(Array("Button 71")).Visible = False

A+
 

Discussions similaires

Réponses
5
Affichages
165
Réponses
5
Affichages
393
Compte Supprimé 979
C