Macro tester si feuille existe, si non la créer

  • Initiateur de la discussion Initiateur de la discussion fredh
  • 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 !

fredh

XLDnaute Occasionnel
Bonjour a tous

J'ai une macro qui tourne deja.
Il faudrait que je rajoute dans une boucle un test pour voir si la feuille "index" existe. Si elle existe alors faire action si elle n'existe pas alors créer la feuille "index" puis faire les actions.....

teste si feuille existe :
Code:
?????

creation de la feuille :
Code:
Worksheets.Add.Name = "Index"

Actions :
Code:
    If Sheets(nn).Range("G" & nnn) = "Strom 0A" Then
        Sheets(nn).Range("J" & nnn).Copy Destination:=Sheets("index").Range("B2:B" & Range("B65536").End(xlUp).Row)
    End If
    If Sheets(nn).Range("G" & nnn) = "Strom 0A LPM" Then
        Sheets(nn).Range("J" & nnn).Copy Destination:=Sheets("index").Range("C2:C" & Range("C65536").End(xlUp).Row)
    End If

Merci dàvance pour vos sugestions et aide

@*
 
Re : Macro tester si feuille existe, si non la créer

bonjour fredh

A tester

Code:
Sub test()
Dim n As Integer
Dim trouve As Boolean
For n = 1 To Sheets.Count
 If Sheets(n).Name = "Index" Then
  trouve = True
  Exit For
 End If
Next n
If Not trouve Then Sheets.Add.Name = "Index"
'.........
Actions
End Sub
 
Re : Macro tester si feuille existe, si non la créer

Bonsoir

edit 2: pour coller plus à ta question
Code:
Sub test()
Dim F As Worksheet
On Error Resume Next
Set F = Sheets("Index")
If F Is Nothing Then
Sheets.Add
ActiveSheet.Name = "Index"
Call Actions
Else
Call Actions
End If
End Sub
Sub Actions()
MsgBox "actions"
End Sub

Une autre manière
edit 1: (houp j'ai lu trop vite là)
Ca nre réponds qu'a question de la crétion de la feuille
Code:
Sub test()
Dim F As Worksheet
On Error Resume Next
Set F = Sheets("Index")
If F Is Nothing Then Sheets.Add:ActiveSheet.Name = "Index"
End Sub
 
Dernière édition:
- 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

Discussions similaires

Réponses
15
Affichages
467
Réponses
4
Affichages
708
Réponses
4
Affichages
645
Réponses
5
Affichages
779
Réponses
7
Affichages
308
Retour