Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

selection d'onglets

4 réponses
Avatar
Bruno RCSC
Bonsoir,

Sous excel 2002.

Je cherche une procédure (en vain) pour sélectionner tous les onglets de mon
classeur dont le nom ne commence pas par ST
Ensuite, je veux les supprimer.

Merci pour votre aide.

BH

4 réponses

Avatar
MichDenis
Bonjour Bruno,
'--------------------------------------
Sub test()
Dim Sh As Object
Application.ScreenUpdating = False
With ThisWorkbook
.Activate
For Each Sh In .Sheets
If UCase(Left(Sh.Name, 2)) = "ST" Then
Sh.Select False
End If
Next
End With
Application.DisplayAlerts = False
ActiveWindow.SelectedSheets.Delete
Application.DisplayAlerts = True
Application.ScreenUpdating = True
End Sub
'--------------------------------------

"Bruno RCSC" a écrit dans le message de groupe de discussion :
4a6a0e0b$0$17754$
Bonsoir,

Sous excel 2002.

Je cherche une procédure (en vain) pour sélectionner tous les onglets de mon
classeur dont le nom ne commence pas par ST
Ensuite, je veux les supprimer.

Merci pour votre aide.

BH
Avatar
Bruno RCSC
Bravo, merci.

Question complémentaire :
Comment dois je faire pour pouvoir lancer la macro qui serait enregistrer
dans un autre classeur, le classeur à traiter étant afficher ?
Si je supprime (With ThisWorkbook.Activate / end with), j'obtiens une erreur
sur .Sheets (erreur de compilation, référence incorrecte ou non qualifiée).

BH


"MichDenis" a écrit dans le message de news:

Bonjour Bruno,
'--------------------------------------
Sub test()
Dim Sh As Object
Application.ScreenUpdating = False
With ThisWorkbook
.Activate
For Each Sh In .Sheets
If UCase(Left(Sh.Name, 2)) = "ST" Then
Sh.Select False
End If
Next
End With
Application.DisplayAlerts = False
ActiveWindow.SelectedSheets.Delete
Application.DisplayAlerts = True
Application.ScreenUpdating = True
End Sub
'--------------------------------------

"Bruno RCSC" a écrit dans le message de groupe de
discussion :
4a6a0e0b$0$17754$
Bonsoir,

Sous excel 2002.

Je cherche une procédure (en vain) pour sélectionner tous les onglets de
mon
classeur dont le nom ne commence pas par ST
Ensuite, je veux les supprimer.

Merci pour votre aide.

BH



Avatar
MichDenis
Si la macro est exécutée sur un autre classeur que celui
où elle placée, modifie la procédure comme ceci :

Sub test()
Dim Sh As Object
Application.ScreenUpdating = False

'Tu insères le nom du classeur dont tu veux
'supprimer les feuilles.
With Workbooks("NomDuClasseur.xls")
.Activate
For Each Sh In .Sheets
If UCase(Left(Sh.Name, 2)) = "ST" Then
Sh.Select False
End If
Next
End With
Application.DisplayAlerts = False
ActiveWindow.SelectedSheets.Delete
Application.DisplayAlerts = True
Application.ScreenUpdating = True
End Sub
'--------------------------------------

Tu peux aussi utiliser ceci :
'-----------------------------------
Sub test1()
Dim Sh As Object
Application.DisplayAlerts = False
With Workbooks("NomDuClasseur.xls")
For Each Sh In .Sheets
If UCase(Left(Sh.Name, 2)) = "ST" Then
Sh.Delete
End If
Next
End With
Application.DisplayAlerts = True
End Sub
'-----------------------------------




"Bruno RCSC" a écrit dans le message de groupe de discussion :
4a6a1c12$0$12628$
Bravo, merci.

Question complémentaire :
Comment dois je faire pour pouvoir lancer la macro qui serait enregistrer
dans un autre classeur, le classeur à traiter étant afficher ?
Si je supprime (With ThisWorkbook.Activate / end with), j'obtiens une erreur
sur .Sheets (erreur de compilation, référence incorrecte ou non qualifiée).

BH


"MichDenis" a écrit dans le message de news:

Bonjour Bruno,
'--------------------------------------
Sub test()
Dim Sh As Object
Application.ScreenUpdating = False
With ThisWorkbook
.Activate
For Each Sh In .Sheets
If UCase(Left(Sh.Name, 2)) = "ST" Then
Sh.Select False
End If
Next
End With
Application.DisplayAlerts = False
ActiveWindow.SelectedSheets.Delete
Application.DisplayAlerts = True
Application.ScreenUpdating = True
End Sub
'--------------------------------------

"Bruno RCSC" a écrit dans le message de groupe de
discussion :
4a6a0e0b$0$17754$
Bonsoir,

Sous excel 2002.

Je cherche une procédure (en vain) pour sélectionner tous les onglets de
mon
classeur dont le nom ne commence pas par ST
Ensuite, je veux les supprimer.

Merci pour votre aide.

BH



Avatar
Bruno RCSC