Activer feuille par macro dans un autre fichier

debord

XLDnaute Nouveau
Bonjour,

J'ai une macro qui fonctionnait dans excel 2003 et qui bloque dans excel 2010

Problématique :
  • J'ai une macro dans le fichier A qui s'exécute à l'ouverture et qui exécute une macro dans un fichier B
  • La macro dans le fichier B fait une mise à jour de la feuille 1 dans le fichier A et se ferme
  • La spécificté vient du fait que le fichier A est renommé par les utilisateurs mais les feuilles conservent des libellés identiques
  • Dans excel 2003, j'arrivais à ouvrir la feuille 1 du fichier A renommé Sheets("Dossier electronique").Select mais ça bloque dans excel 2010.
Peut être est-ce un pb de syntaxe VBA mais je bloque.

Merci par avance à ceux qui peuvent m'aider.
 

néné06

XLDnaute Accro
Re : Activer feuille par macro dans un autre fichier

Bonjour Debord et bienvenue sur le Forum

Doit on deviner ton code ??

Le mieux serait de placer une pièce jointe sans données confidentielles , avec ce que tu as et ce que tu recherches.

A te relire !

René
 

debord

XLDnaute Nouveau
Re : Activer feuille par macro dans un autre fichier

Macro 1 (dans le fichier A)

Private Sub Workbook_Open()
' mise_a_jour Macro
' Ouverture d'un fichier de mise à jour pour correction ou évolution du DE

'
Workbooks.Open Filename:= _
"S:\ fichierb.xls"
Application.Run "fichierb.xls'!modif_de"
ActiveWorkbook.Close
End Sub

Macro 2 (dans le fichier B)
Sub modif_de()
' modif_de Macro
' modification du DE ou prise en compte des évolutions
'

Sheets("Feuille1").Select
ActiveSheet.Unprotect
Range("A31").Select
ActiveCell.FormulaR1C1 = "2"
Range("F32:J32").Select
ActiveSheet.Protect DrawingObjects:=False, Contents:=True, Scenarios:= _
False, AllowFormattingRows:=True
Windows("fichierb.xls").Activate

End Sub

J'ai un message d'erreur car il ne veut pas ouvrir la Feuille1 (erreur d'éxécution '9' l'indice n'appartient pas à la sélection).
 
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
311 720
Messages
2 081 904
Membres
101 834
dernier inscrit
Jeremy06510