Vérifier si la feuille existe dans VBA
- Vérifier si la feuille existe dans VBA
- Vérifier si la feuille existe dans le classeur fermé dans VBA
Nous allons vous présenter comment vérifier si une feuille existe en utilisant VBA dans Excel.
Vérifier si la feuille existe dans VBA
Lorsque vous travaillez sur plusieurs feuilles, il peut y avoir des feuilles en double, ou nous pouvons vouloir éviter de créer des feuilles en double. À cette fin, nous pouvons utiliser VBA pour vérifier s’il existe des feuilles portant le même nom pour lesquelles nous pourrions vouloir créer une feuille.
Pour vérifier si la feuille existe, nous avons besoin d’une boucle avec chaque feuille du classeur et comparons les noms que nous avons créés. Nous utiliserons deux boucles; l’un sera le Pour chaque boucle
, et le second sera l’instruction Si sinon
.
Tout d’abord, nous allons créer deux variables : l’une stockera la feuille de calcul, et la seconde stockera le nom de la feuille pour laquelle nous voulons rechercher des doublons ou vérifier si la feuille portant ce nom existe. Nous utiliserons la boucle for
pour parcourir tous les fichiers d’un dossier et la déclaration if-else
pour vérifier si le nom de la feuille existe avec le même nom que l’autre feuille.
Si le fichier existe avec le même nom, nous afficherons une boîte de message indiquant que la feuille existe. Sinon, la boîte de message indiquera que la feuille n’existe pas.
Code:
#VBA
Sub sheetCheck()
Dim sheet As Worksheet
Dim Name As String
Name = "Sheet1"
For Each sheet In ThisWorkbook.Worksheets
If sheet.Name = Name Then
MsgBox "Yes! " & Name & " is there in the workbook."
Exit Sub
End If
Next sheet
MsgBox "No! " & Name & "is not there in the workbook."
End Sub
Production:
Lorsque nous avons recherché sheet1
, nous avons obtenu la réponse positive que la feuille portant le même nom existe déjà.
Vérifier si la feuille existe dans le classeur fermé dans VBA
Il peut arriver que nous souhaitions également vérifier les feuilles d’un fichier Excel qui sont fermées ou sur lesquelles nous avons déjà travaillé. Nous pouvons également vérifier les feuilles dans les fichiers Excel fermés en ouvrant les fichiers à l’aide du VBA et de la boucle For each
avec l’instruction If else
comme nous l’avons utilisé dans l’exemple ci-dessus.
Essayons de vérifier la feuille dans un fichier Excel fermé.
Code:
#VBA
Sub checkSheet()
Dim book As Workbook
Dim sheet As Worksheet
Dim Name As String
Name = "Sheet1"
Application.ScreenUpdating = False
Set book = Workbooks.Open _
("C:\Users\Hp9470\Documents\Book2.xlsx")
For Each sheet In book.Worksheets
If sheet.Name = Name Then
book.Close SaveChanges:=True
MsgBox "Yes! Sheet Exists"
Exit Sub
End If
Next sheet
Application.ScreenUpdating = False
MsgBox "No! Sheet doesn't exists"
End Sub
Production:
La feuille existe dans le fichier Excel fermé auquel nous avons accédé à l’aide de la fonction d’ouverture. De cette façon, nous pouvons vérifier les fichiers ouverts et fermés sur les feuilles en utilisant le nom.