resultat sur 2 colonneset 2 feuilles

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Surfeur En Serie

XLDnaute Occasionnel
Bonjour le forum
j'ai de nouveau un probleme ( je sais , ça ne change pas lool )
alors je m explique
1 )sur 1 feuille j'ai un tableau avec plusieur jours aleatoire ( pas de limitation en nombre de ligne )
2) sur une seconde feuille , j ai un tableau avec des jours egalement aleatoire ( qui sont le resultats d une autre feuille que je ne mets pas ici pour ne pas compliquer la comprehension

je voudrais compter le nombre de jour total, et surtout compter le nombre de jour different

sur ce projet , je commence par des jours , mais ca pourrait etre egalement des noms au lieu des jours , donc une formule qui pourrait gerer une chaine de caracteres serrai l ideal plutot que de gerer soit des dates soit des noms je pense.
Je prefererai que cela se passe par formule
 

Pièces jointes

Dernière édition:
Re : resultat sur 2 colonneset 2 feuilles

re Tibo
J'ai tester le fichier que tu m a envoyé , j 'ai essayé de l adapter a mon fichier

1) si tu clique sur resultat, il va chercher dans TOUS les onglets ( ça ne m arrange pas puisque sur mon fichier final il y aurra d autre onglet , c est pour cela que j ai laissé la FeuilTemp )

2) si tu clique sur resultat2 , je ne vois pas la difference ( excepter 1 ligne de plus affichée ) . pourquoi me selectionne t'il les cellule de A78 à A161 ?
 

Pièces jointes

Re : resultat sur 2 colonneset 2 feuilles

re,

Je n'ai fait que reprendre le fichier de Jacques Boisgontier.

Pour la partie Macro, je suis bien incapable de te dire ce qu'il faudrait faire pour l'adapter de façon précise à ton cas.

Regarde le lien proposé plus tôt vers son site et vois si les explications peuvent te permettre de comprendre puis adapter.

@+
 
Re : resultat sur 2 colonneset 2 feuilles

hello Tibo , JCGL et le fil
JCGL ce que tu a fais a l air de fonctionner , je le testerai sur mon fichier ce soir parceque la je part dans qq minutes .
Donc en fin de journée vous saurez si ça fonctionne ou pas
Merci , et a tout a l heure pour de bonne nouvelle j espere
 
Re : resultat sur 2 colonneset 2 feuilles

re Hello tout le monde
JCGL ce que tu m'as fais fonctionne uniquement sur le fichier que je t'ai passé, par contre sur mon projet final , ça ne passe pas
j'ai le message suivant
erreur d execution 438
propriété ou methode non gérée par cet objet


ça s arrete sur la ligne suivante
NL = Sheets(F).Range("A1000").End(xlUp).Row - 1

une Idée d'ou vient le probleme ?

je pense que c est soit au niveau de mes nombres de Feuilles , ou au niveau de certaine Feuilles qui on des formule qui font appel a d'autre feuille oubien encore le fait que chacune de mes Feuilles fassent entre 300 et 600 lignes ( pour les colonne A ) donc si on multiplie 600 ( le maximum ) par 15 Feuilles , ça nous donne 9000 ( mais j ai essayé en mettant 10 000 , mais ça n a rien changé )
Donc pour recaptiler le contenu de mon fichier ( presque final )
1 Feuille nommé Temp ( celle ou ecris la macro )
8 Feuille , dont on n'est pas obligé de les compter dans la macro
et enfin 15 Feuilles qui se presentent comme mon dernier fichier ( a compter avec la macro )

Merci
( j'attend avec impatience ta modification qui devrai fonctionner , j'en suis sur )
Et encore une fois merci les gars, vous etes fort sur excel .. Chapeau 😉
 
Re : resultat sur 2 colonneset 2 feuilles

Bonjour à tous,

Depuis le début, tu es obscur...
Si le code fonctionne sur le fichier que tu as déposé, c'est un bon signe.

Nous n'avons plus de boule de cristal en stock...

Nous sommes prêts à tenter de t'aider... Mais aide nous... En déposant un fichier complet, si besoin sur CiJoint...

A+ à tous
 
Re : resultat sur 2 colonneset 2 feuilles

Bonsoir


A tout zazar

Ajoute les lignes en rouge
Code:
Sub consolide_ongletsCollageSpecial()
[COLOR=Red]Dim nlig as Long
Dim ncol As Long[/COLOR]
   Sheets("Feuil4").[A1].CurrentRegion.Offset(1, 0).Clear
   For s = 2 To 4
     [COLOR=Blue] nlig[/COLOR] = Sheets(s).[A600].End(xlUp).Row - 1
     [COLOR=Blue] nco[/COLOR]l = Sheets(s).[A1].CurrentRegion.Columns.Count
      Sheets(s).[A2].Resize(nlig, ncol).Copy
     [A600].End(xlUp).Offset(1, 0).PasteSpecial Paste:=xlPasteValues
   Next s
   On Error Resume Next
  [A:A].SpecialCells(xlCellTypeBlanks).EntireRow.Delete
End Sub
 
Re : resultat sur 2 colonneset 2 feuilles

Bonjour à tous,
Re l'Agrafe 🙂,

Le code qui convient, partiellement..., à notre ami contient déjà cette déclaration de variable :

Code:
Option Explicit

Sub Consolide_Onglets()
    Dim F As Byte
    Dim NL As Long
    Dim NC As Long

    Application.ScreenUpdating = 0
    Sheets("Temp").Range("A1:F1000").ClearContents
    For F = 2 To Sheets.Count
        NL = Sheets(F).Range("A1000").End(xlUp).Row - 1
        NC = Sheets(F).Range("A1").CurrentRegion.Columns.Count
        Range("A600").End(xlUp).Offset(1, 0).Resize(NL, NC).Value = _
                Sheets(F).Range("A2").Resize(NL, NC).Value
    Next F
    On Error Resume Next

    With Range("A1:A1000")
        .SpecialCells(xlCellTypeBlanks).EntireRow.Delete
        .Sort Key1:=Range("A1"), Order1:=xlDescending, Header:=xlGuess
    End With

    With Range("F2")
        .Formula = "=SUMPRODUCT((LEFT(R[-1]C[-5]:R[98]C[-5],3)=""Liv"")*1)"
        .NumberFormat = "00"" Dates de Livraisons"""
        .HorizontalAlignment = xlLeft
    End With

    With Range("F4")
        .Formula = "=SUMPRODUCT((RIGHT(R[-3]C[-5]:R[996]C[-5],1)=""A"")*1)"
        .NumberFormat = "00"" Stock A"""
        .HorizontalAlignment = xlLeft
    End With

    With Range("F5")
        .Formula = "=SUMPRODUCT((RIGHT(R[-4]C[-5]:R[995]C[-5],1)=""B"")*1)"
        .NumberFormat = "00"" Stock B"""
        .HorizontalAlignment = xlLeft
    End With

    With Range("F6")
        .Formula = "=SUMPRODUCT((RIGHT(R[-5]C[-5]:R[994]C[-5],1)=""C"")*1)"
        .NumberFormat = "00"" Stock C"""
        .HorizontalAlignment = xlLeft
    End With

    With Range("F7")
        .Formula = "=SUMPRODUCT((LEFT(R[-5]C[-5]:R[994]C[-5],3)=""Ent"")*1)"
        .NumberFormat = "00"" Entrées"""
        .HorizontalAlignment = xlLeft
    End With

    With Range("F1")
        .Value = "Résultats"
        .HorizontalAlignment = xlCenter
    End With

    Range("B1:B1000").Formula = "=IF(COUNTIF(R1C1:RC[-1],RC[-1])>1,"""",RC[-1])"

    With Range("F3")
        .Formula = "=SUMPRODUCT((LEFT(R[-2]C[-4]:R[97]C[-4],3)=""Liv"")*1)"
        .NumberFormat = "00"" Dates de Livraisons Uniques"""
        .HorizontalAlignment = xlLeft
    End With

    Range("F1:F7").Select
    Selection.Copy
    Selection.PasteSpecial Paste:=xlPasteValues
    Application.CutCopyMode = False
    Range("B1:B1000").ClearContents

    Range("D1").Select

End Sub
A++ 🙂
A+ à tous
 
Re : resultat sur 2 colonneset 2 feuilles

re hello tous le monde
En voulant faire une pale copie de mon projet , j ai trouvé l erreur

l erreur viens du fait que j'ai sur une de mes pages, un graph
En effet Si le graph est mis " en nouvelle Feuille ", la macro BUG .
et Si je mets ce meme graph "en tant qu'objet" dans une des feuilles la macro passe

Donc je joins un nouveau fichier qui a le graph ( si on peut eviter l erreur je suis preneur , sinon je passerai au graph en tans qu objet ).Ce nouveau fichier est tres simple et devrai ( sauf oublie de ma part ) reunir tous les cas de figure de mon projet.

Par contre , j ai 2 feuilles qui n 'on pas de données en colonne A ( je n avais pas fais attention avant, je suis désolé ) et a cause de ça , j ai cette erreur :
erreur d execution 1004
erreur definie par l application ou par l objet


on tient quand meme le bon bout 😉 ( surtout vous tous )
est il possible que la macro s execute seule ( sans bouton a cliquer ) lorsqu'une des cellule d'une colonnes A se remplie ( si ce n est pas trop abusé bien sur)?
Joyeuse Pâques à tous
 

Pièces jointes

Dernière édition:
Re : resultat sur 2 colonneset 2 feuilles

Bonjour à tous,

Il me serait agéable que tu utilises le dernier code déposé...

Donc pour pallier aux feuilles sans données en A :

Code:
Option Explicit

Sub Consolide_Onglets()
    Dim F As Byte
    Dim NL As Long
    Dim NC As Long

    Application.ScreenUpdating = 0
[COLOR=Blue]  [B]  On Error Resume Next[/B][/COLOR]
    Sheets("Temp").Range("A1:F1000").ClearContents
    For F = 2 To Sheets.Count
        NL = Sheets(F).Range("A1000").End(xlUp).Row - 1
        NC = Sheets(F).Range("A1").CurrentRegion.Columns.Count
        Range("A600").End(xlUp).Offset(1, 0).Resize(NL, NC).Value = _
                Sheets(F).Range("A2").Resize(NL, NC).Value
    Next F
    On Error Resume Next

    With Range("A1:A1000")
        .SpecialCells(xlCellTypeBlanks).EntireRow.Delete
        .Sort Key1:=Range("A1"), Order1:=xlDescending, Header:=xlGuess
    End With

    With Range("F2")
        .Formula = "=SUMPRODUCT((LEFT(R[-1]C[-5]:R[98]C[-5],3)=""Liv"")*1)"
        .NumberFormat = "00"" Dates de Livraisons"""
        .HorizontalAlignment = xlLeft
    End With

    With Range("F4")
        .Formula = "=SUMPRODUCT((RIGHT(R[-3]C[-5]:R[996]C[-5],1)=""A"")*1)"
        .NumberFormat = "00"" Stock A"""
        .HorizontalAlignment = xlLeft
    End With

    With Range("F5")
        .Formula = "=SUMPRODUCT((RIGHT(R[-4]C[-5]:R[995]C[-5],1)=""B"")*1)"
        .NumberFormat = "00"" Stock B"""
        .HorizontalAlignment = xlLeft
    End With

    With Range("F6")
        .Formula = "=SUMPRODUCT((RIGHT(R[-5]C[-5]:R[994]C[-5],1)=""C"")*1)"
        .NumberFormat = "00"" Stock C"""
        .HorizontalAlignment = xlLeft
    End With

    With Range("F7")
        .Formula = "=SUMPRODUCT((LEFT(R[-5]C[-5]:R[994]C[-5],3)=""Ent"")*1)"
        .NumberFormat = "00"" Entrées"""
        .HorizontalAlignment = xlLeft
    End With

    With Range("F1")
        .Value = "Résultats"
        .HorizontalAlignment = xlCenter
    End With

    Range("B1:B1000").Formula = "=IF(COUNTIF(R1C1:RC[-1],RC[-1])>1,"""",RC[-1])"

    With Range("F3")
        .Formula = "=SUMPRODUCT((LEFT(R[-2]C[-4]:R[97]C[-4],3)=""Liv"")*1)"
        .NumberFormat = "00"" Dates de Livraisons Uniques"""
        .HorizontalAlignment = xlLeft
    End With

    Range("F1:F7").Select
    Selection.Copy
    Selection.PasteSpecial Paste:=xlPasteValues
    Application.CutCopyMode = False
    Range("B1:B1000").ClearContents

    Range("D1").Select

End Sub
 
Re : resultat sur 2 colonneset 2 feuilles

re JCGL
Je viens de faire un test vite fait sur mon projet (pas encore terminé )et ça a l'air de passer pour le moment.
On en saurra + demain ( que ça passe ou non d'ailleur ) ,une fois que mon fichier serra un peu plus avancé .
En attendant demain, je te remercie enormement pour le travail que tu a fais , ainsi que les autres participant du fil.
 
Re : resultat sur 2 colonneset 2 feuilles

helo le fil
tout fonctionne parfaitement avec la macro de JCGL ( j'ai eu des erreur a cause des quelques #REF d'autre page que j'ai resolu )...
Par contre est il possible que la macro s active uniquement lorsque je clique sur l onglet "Temp" ( je pense que c est le plus simple )..
Merci
 
Re : resultat sur 2 colonneset 2 feuilles

impecable JCGL
Sauf que ( je sais , encore une probleme )
lorsque dans une cellule je recupere une des valeur des case F2 à F7 de la feuille temp pour mettre sur une autre feuille ( sur l exemple joint, je mets ça en feuille "Feuille NON compté" B9 à B14 ) je ne peux pas recuperer la valeur systematiquement ....
Pour comprendre ce que je veux dire, essayer de recuperer la valeur de la case F3 de la feuille "Temp" et mettre dans une cellule d une autre feuille =Temp!F3 oubien =Temp!F3*100 ( ceci est un exemple )
merci
 

Pièces jointes

- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
4
Affichages
773
Retour