Comparer les noms des dern feuilles de 2 fichiers

  • Initiateur de la discussion Initiateur de la discussion Guy
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

G

Guy

Guest
Bonjour,

Je souhaite que ma macro s’exécute à une condition :


Uniquement si le noms de chacune des dernières feuilles (les plus à droite) du fichier A et du fichier B sont les mêmes.




N.B : les 2 fichiers sont déjà ouverts à ce stade





Essai de code :




Windows('A.xls').Activate

Sheets(Sheets.Count).Activate

Dim k As Integer

ActiveSheet.Name = k



Windows('B.xls').Activate

Sheets(Sheets.Count).Activate


If ActiveSheet.Name = k Then





Ca ne marche pas ??


Merci d’avance

Guy
 
Bonjour Guy, bonjour le forum,

je te popose ce code :

'déclare les variables avA, deA, avB et deB
Dim avA As String, deA As String
Dim avB As String, deB As String

'définit les variables
avA = Workbooks('A.xls').Sheets(Sheets.Count - 1).Name 'avant dernier onglet du classeur A.xls
deA = Workbooks('A.xls').Sheets(Sheets.Count).Name 'dernier onglet du classeur A.xls
avB = Workbooks('B.xls').Sheets(Sheets.Count - 1).Name 'avant dernier onglet du classeur B.xls
deB = Workbooks('B.xls').Sheets(Sheets.Count).Name 'dernier onglet du classeur B.xls

'condition : les deux derniers onglets de chaque classeur portent le même nom
If avA = avB And deA = deB Then
'ta macro
End If
 
Bonsoir Guy, bonsoir le forum,

Je viens de me rendre compte que j'avais très mal compris ta question puisque je pensais que tu voulais les deux dernières feuilles de chaque classeur alors que tu ne voulais que la dernière. En fait ton code au départ était bon sauf au niveau du type de la variable k qui devait être déclarée comme String et non comme Integer. Le mien pourrait se simplifier comme ça :


If Workbooks('A.xls').Sheets(Sheets.Count).Name = Workbooks('B.xls').Sheets(Sheets.Count).Name Then
'ta macro
End If
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

M
  • Question Question
Réponses
5
Affichages
934
R
Réponses
3
Affichages
4 K
R
L
Réponses
1
Affichages
1 K
Lucien31
L
P
Réponses
4
Affichages
959
phil0202
P
V
Réponses
2
Affichages
1 K
Val119
V
D
  • Question Question
Réponses
0
Affichages
695
Deleted member 211067
D
B
Réponses
5
Affichages
5 K
Brain Box
B
Retour