Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Microsoft 365 Excel VBA

Excellearning

XLDnaute Nouveau
Bonjour chers membres;
Je sollicite votre aide sur un souci que je rencontre sur le code suivant:

Public Function SheetExist(Sheetname As String) As Boolean
'Workbooks(AppName).Unprotect (PasswordWk)
Dim ws As Worksheet
SheetExist = False
For Each ws In Workbooks(AppName).Sheets
If ws.Name = Sheetname Then
SheetExist = True: 'Workbooks(AppName).Protect (PasswordWk): Exit Function
End If
Next
'Workbooks(AppName).Protect (PasswordWk)
End Function

Public Function CreateSheet(Sheetname As String) As Boolean
'On Error Resume Next
Dim Count As Long
Dim ws As Worksheet
Dim wb As Workbook
If SheetExist(Sheetname) Then
CreateSheet = True
Exit Function
Else
Workbooks(AppName).Unprotect (PasswordWk)
Count = Workbooks(AppName).Sheets.Count
Set wb = Workbooks(AppName)
Set ws = wb.Sheets.Add(after:=wb.Sheets(Count))
'Workbooks(AppName).Unprotect (PasswordWk)
ws.Name = Sheetname
'Workbooks(AppName).Unprotect (PasswordWk)
ws.Visible = xlSheetHidden
CreateSheet = True
Workbooks(AppName).Protect (PasswordWk)
End If
End Function

Ci-joint la capture des erreurs.
 

Pièces jointes

  • 1724748943002.png
    7.3 KB · Affichages: 7
  • 1724749003813.png
    27.4 KB · Affichages: 12

Excellearning

XLDnaute Nouveau
bonjour

Set ws = wb.Sheets.Add(after:=wb.Sheets(Count))
à remplacer par
Set ws = wb.Sheets.Add(after:=sheets(wb.Sheets(Count)))
Bonjour @vgendron , Merci pour votre réaction.
Le problème persiste toujours après avoir remplacé le code par ce que vous avez donné.
En fait , j'ai l'impression qu'Excel bloque l'ajout des feuilles car j'obtiens la même erreur lorsque j'essaie d'insérer une feuille manuellement.
 

Excellearning

XLDnaute Nouveau
Merci bien pour vos réaction, mais le problème persiste.
Je ne sais pas pourquoi, dans mon fichier Excel bloque l'ajout et la suppression d'une feuille (manuellement et même par VBA) car avec d'autres classeurs j'arrive à ajouter et supprimer une feuille.
 
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…