pb nom de feuille avec une feuille recap

yvesinternet

XLDnaute Nouveau
je viens d'avoir une reponse concernant un pb de nom de feuille dans une cellule mais le soucis est que j'ai une macro "RECAP" qui reprend tout ce qui est dans les autres feuilles et evidement il prend aussi la formule donc ca ne marche pas comme je veux

qui peut m'aider

Voici le code pour le recap

Code:
Private Sub Worksheet_Activate()
'Mise à jour des inscriptions à l'activation de la feuille
  Dim WS
  Dim Feuille As Byte
  Dim Ligne1 As Long
  Dim Ligne2 As Long: Dim a
  
Sheets("Recap").Range("A6:AE50000").Delete

For Each WS In ActiveWorkbook.Sheets
a = WS.Name
With WS
If .Name <> "Accueil" And .Name <> "Recap" Then
    Ligne1 = Worksheets("Recap").Range("C50000").End(xlUp).Row + 1
    Ligne2 = .Range("C50").End(xlUp).Row
    If Ligne2 > 5 Then
        .Range("B6:AE" & Ligne2).Copy Sheets("Recap").Cells(Ligne1, 2)
    End If
End If
End With
Next WS

Sheets("Recap").Range("B5:AE5000").Columns.AutoFit

End Sub

voici la formule que l'on vient de me donner

Code:
=STXT(CELLULE("filename";A1);TROUVE("]";CELLULE("filename";A1))+1;32)

merci
 

PascalXLD

XLDnaute Barbatruc
Modérateur
Re : pb nom de feuille avec une feuille recap

Bonjour

si tu veux juste copier les valeurs alors peit-être ceci

remplacer

If Ligne2 > 5 Then
.Range("B6:AE" & Ligne2).Copy Sheets("Recap").Cells(Ligne1, 2)
End If

par

If Ligne2 > 5 Then
.Range("B6:AE" & Ligne2).Copy
Sheets("Recap").Cells(Ligne1, 2).PasteSpecial Paste:=xlValues
End If
 
Dernière édition:

PascalXLD

XLDnaute Barbatruc
Modérateur
Re : pb nom de feuille avec une feuille recap

re

tu as une petite erreur sur une ligne

il faut

If Ligne2 > 5 Then
.Range("B6:AE" & Ligne2).Copy
Sheets("Recap").Cells(Ligne1, 2).PasteSpecial Paste:=xlValues
End If


Remarque je viens de voir que mon message n'était pas très clair des retours à la ligne avaient sauté
 

PascalXLD

XLDnaute Barbatruc
Modérateur
Re : pb nom de feuille avec une feuille recap

Re

en fin de macro
tu as la ligne

Sheets("Recap").Range("B5:AE5000").Columns.AutoFit

rajoutes pour que cela donne ceci


Sheets("Recap").Columns("C:C").NumberFormat = "dd/mm/yyyy"
Sheets("Recap").Range("B5:AE5000").Columns.AutoFit
 

Statistiques des forums

Discussions
312 294
Messages
2 086 895
Membres
103 404
dernier inscrit
sultan87