SI CELLULE VIDE ALORS PASSER À LA SUIVANTE

Résolu
Texcel Messages postés 8 Date d'inscription   Statut Membre Dernière intervention   -  
Texcel Messages postés 8 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

voici ma macro, elle génère un onglet pour chaque valeur contenu dans la liste "article" et lui assigne le nom de la valeur de la cellule

Sub créer_feuilles()
Dim S As Object
Dim DL As Integer
Dim TC As Variant
Dim I As Integer
Dim NO As Object

Set S = Sheets("Phases et budgets")
DL = S.Cells(Application.Rows.Count, 3).End(xlUp).Row
TC = S.Range("article")
For I = 3 To UBound(TC, 1)
On Error Resume Next
Set NO = Sheets(TC(I, 1))
If Err <> 0 Then
Err.Clear
Sheets.Add after:=Sheets(Sheets.Count)
ActiveSheet.Name = TC(I, 1)
End If
On Error GoTo 0
Next I
End Sub


Ma problématique est que quand elle rencontre une cellule vide, la macro donne ouvre une feuille et lui assigne un numéro séquentiel. Cela donne donc plusieurs feuille qui n'ont pas besoin d'être.

J'ai tenté de corriger le problème avec if cell.value="" then goto next I
mais sans succès

Pourriez-vous m'aider
A voir également:

2 réponses

Texcel Messages postés 8 Date d'inscription   Statut Membre Dernière intervention   1
 
Bonjour,

sur la feuille "mise en page" il y a certaines cellules encandrées, un logo etc.
J'aimerais que cette mise en page se copie sur toutes les nouvelles créées en fonction de TC
1
f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention   1 715
 
Re,

Donc, vous voulez faire une copie de la feuille "mise en page" pour chaque article de la feuille "phases et budgets" en renomment cette feuille du nom de l'article.
0
Texcel Messages postés 8 Date d'inscription   Statut Membre Dernière intervention   1
 
Exactement.
0
Texcel Messages postés 8 Date d'inscription   Statut Membre Dernière intervention   1
 
Voici la macro pour copier la mise en page, mais il y a un bug que je n'arrive pas à mettre le doight dessus

Sub copie_mise_en_forme()

Sheets("mise en page").Select
Cells.Select
Selection.Copy
For I = 4 To Sheets.Count
Sheets(I).Select
Cells.Select
ActiveSheet.Paste
Next I

End Sub
0
f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention   1 715 > Texcel Messages postés 8 Date d'inscription   Statut Membre Dernière intervention  
 
Re,

Ok, je vous fais ca
0
f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention   1 715 > Texcel Messages postés 8 Date d'inscription   Statut Membre Dernière intervention  
 
Re,

ci-dessous le code qui correspond a votre reponse a la suite de
mon post 6: f894009 - 18 janv. 2017 à 16:51

Sub créer_feuilles()
    Dim S As Object
    Dim DL As Integer
    Dim TC As Variant
    Dim I As Integer
    Dim NO As Object

    Set S = Sheets("Phases et budgets")
    DL = S.Cells(Application.Rows.Count, 3).End(xlUp).Row
    TC = S.Range("article")
    Nb = UBound(TC, 1)
    For I = 3 To Nb
        If TC(I, 1) <> "" Then      'non vide
            On Error Resume Next
            Set NO = Sheets(TC(I, 1))
            If Err <> 0 Then
                Err.Clear
                Sheets("mise en page").Copy After:=Sheets(Sheets.Count)
                ActiveSheet.Name = TC(I, 1)
            End If
        End If
        On Error GoTo 0
    Next I
End Sub
0
f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention   1 715
 
Bonjour,

Sub créer_feuilles()
    Dim S As Object
    Dim DL As Integer
    Dim TC As Variant
    Dim I As Integer
    Dim NO As Object

    Set S = Sheets("Phases et budgets")
    DL = S.Cells(Application.Rows.Count, 3).End(xlUp).Row
    TC = S.Range("article")
    Nb = UBound(TC, 1)
    For I = 3 To Nb
        If TC(I, 1) <> "" Then      'non vide
            On Error Resume Next
            Set NO = Sheets(TC(I, 1))
            If Err <> 0 Then
                Err.Clear
                Sheets.Add after:=Sheets(Sheets.Count)
                ActiveSheet.Name = TC(I, 1)
            End If
        End If
        On Error GoTo 0
    Next I
End Sub
0
Texcel Messages postés 8 Date d'inscription   Statut Membre Dernière intervention   1
 
Excellent !! Merci du coup de main
0
Texcel Messages postés 8 Date d'inscription   Statut Membre Dernière intervention   1
 
serait-il possible d'intégrer la copie de la mise en page d'un autre feuille que "phases et budgets".
0
f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention   1 715 > Texcel Messages postés 8 Date d'inscription   Statut Membre Dernière intervention  
 
Bonjour,

Comprends pas tout, vous pouvez expliquer
0