IF combiné avec OR ne fonctionne pas

Bonjour à tous et meilleurs voeux

J'ai ce code VBA qui ne fonctionne plus lorsque je combine un "or" avec le "if" :

Sub ConsoUT()
Dim onglet, bas, lig

For onglet = 1 To Sheets.Count 'boucle sur tous les onglets
If Left(Sheets(onglet).Name, 3) = "B7C" Or "B7B" Then 'si les 3 1ere lettres
bas = Sheets(onglet).[A65000].End(3).Row 'derligne
If bas > 7 Then
lig = Sheets("RECHERCHE").[A65000].End(3).Row + 1 'derligne+1 pour écrire
If lig < 3 Then lig = 3
Sheets("RECHERCHE").Cells(lig, 1) = Sheets(onglet).Range("G3") 'on écrit direct
Sheets(onglet).Range("A8:J" & bas).Copy 'on fait un copié
Sheets("RECHERCHE").Range("A" & lig + 1).PasteSpecial 'on colle une ligne plus bas
End If
End If
Next
Application.CutCopyMode = False
End Sub

Si je retire le "or" et donc un des deux critères (B7B ou B7C) cela fonctionne. Mon but est de rechercher dans les onglets commençants par ces 3 caractères.

Merci d'avance pour votre aide

Bonjour,

Merci de veillez à utiliser les balises de codes lorsque vous postez un code dans votre demande. c'est plus lisible pour celui qui vous répond.
J'ai corrigé votre demande


Pour votre demande essayez ceci plutôt

If Left(Sheets(onglet).Name, 3) = "B7C" Or Left(Sheets(onglet).Name, 3) = "B7B" Then 'si les 3 1ere lettres

NB : Vos déclarations de variable comme ceci

Dim onglet as byte
Dim bas as integer, lig as integer

Si ok et terminé pensez à

Cordialement

Bonjour Dan,

Je vous remercie pour ces précisions, ça fonctionne

Bien à vous

RE

sinon tu prends les choses à l'envers des fois ca raccourci un peu les codes

If instr(1,"B7C B7B",Left(Sheets(onglet).Name, 3)) >0 then   'si les 3 1ere lettres
Rechercher des sujets similaires à "combine fonctionne pas"