Renommer un onglet grace à une cellule

Bonjour,

Dans ma macro, j'ai réussi à renommer un onglet par rapport à une cellule. Par contre, le soucis c'est que cette cellule puet des fois être vide.

Comment faire alors pour continuer la macro sans beuger ?

Selection.AutoFilter Field:=2, Criteria1:=Workbooks("Portefeuille APPRO").Sheets("Fournisseurs Macro").Range("G9")

Sheets("Portefeuille").Select

Cells.Select

Selection.Copy

Sheets.Add

NomFeuil = ActiveSheetName

ActiveSheet.Name = "Feuiltest"

Range("A1").Select

ActiveSheet.Paste

Sheets("Portefeuille").Select

Range("B15").Select

Selection.AutoFilter Field:=2

Sheets("Feuiltest").Select

Range("A2").Select

Selection.Copy

Sheets("Feuiltest").Select

Sheets("Feuiltest").Name = Range("A2").Value ---->si A2 est vierge j'ai un problème.

Range("B18").Select

Sheets("Portefeuille").Select

Cette partie peut se repéter plusieurs car je copie/colle des infos triées vers des onglets.

Merci de votre aide.

Cece31

Bonjour

Après la sélection de ta cellule, tu peux rajouter

If IsEmpty(Cells(ActiveCell)) Then Exit Sub

Cordialement

Bonjour,

J'ai essayé mais cela ne fonctionne pas.

Quelqu'un a t'il une autre idée ?

Merci

cece31

Bonjour

Je pense qu'Amadéus a voulu écrire

If IsEmpty(ActiveCell) Then Exit Sub

Re,

je suis désolée mais cela ne marche pas.

La macro beug quand elle arrive sur la cellule B2 et que celle-ci est vide.

Normal car elle est obligée de donner un nom à un onglet.

Avez vous une solution ?

Cdlt

cece31

Bonjour

Avec le code d'Amadéus cela ne doit pas arriver

Sheets("Feuiltest").Select

Range("A2").Select

If IsEmpty(ActiveCell) Then Exit Sub

Selection.Copy

Sheets("Feuiltest").Select

Sheets("Feuiltest").Name = Range("A2").Value ---->si A2 est vierge j'ai un problème.

Range("B18").Select

Sheets("Portefeuille").Select

Car tu quittes la procédure si la cellule est vide

Le mieux si cela ne fonctionne pas c'est

Bonjour,

Connaissant mes collègues ci-dessus, cela m'étonne que même la correction apportée par Banzai ne fonctionne pas, où as-tu placé le code fournis dans ton code à toi ?

De plus tu parles de B2 alors que dans ton code il s'agit de la cellule A2, donc bien vérifier si toutes les variables correspondent bien aux bonnes cellules et qu'il n'y a pas eu une faute de frappe quelque part.

Sinon n'hesites pas à joindre ton fichier en enlevant les données confidentielles, c'est toujours plus facile de parvenir à débuguer un fichier quand on l'a sous les yeux.

edit : Désolé pour le multipostage en même temps que Banzai

merci à tous j'ai trouver la parade....en lui disant que si la case A2 est vide alors tu renommes l'onglet "pas de données"

Selection.AutoFilter Field:=2, Criteria1:=Workbooks("Portefeuille APPRO").Sheets("Fournisseurs Macro").Range("G7")

Sheets("Portefeuille").Select

Cells.Select

Selection.Copy

Sheets.Add

NomFeuil = ActiveSheetName

ActiveSheet.Name = "Feuiltest"

Range("A1").Select

ActiveSheet.Paste

Sheets("Portefeuille").Select

Range("B15").Select

Selection.AutoFilter Field:=2

Sheets("Feuiltest").Select

Range("A2").Select

Selection.Copy

Sheets("Feuiltest").Select

If IsEmpty(ActiveCell) Then Sheets("Feuiltest").Name = "Pas de données"

If isnottempty Then Sheets("Feuiltest").Name = Range("A2").Value Range("B18").Select

Par contre, j'ai une autre question, comment peut on enregistrer un fichier qui dépend également d'une cellule ?

cece31

Bonjour

Tu peux (si tu veux)Modifier la fin de ta macro

If IsEmpty(ActiveCell) Then
  Sheets("Feuiltest").Name = "Pas de données"
Else
  Sheets("Feuiltest").Name = Range("A2").Value
End If
Range("B18").Select

Pour enregistrer un fichier en fonction de cellules

C3 : Chemin (ne pas oublier le \ final)

D3: Nom du fichier avec l'extension

ActiveWorkbook.SaveCopyAs Range("C3") & Range("D3")
Rechercher des sujets similaires à "renommer onglet"