[ résolu] Aide Macro a modifier

filtre69

XLDnaute Occasionnel
Bonjour
voila j'ai trouver cette macro qui m'intéresse mais je sais pas comment la modifier
c'est pour calculer une cellule sur plusieurs feuille
le but est ranger de Janvier A3 a A12 sur Récap annuel de B2 a B15
Sub test()
Dim t As Double, ws As Worksheet
For Each ws In Worksheets
If ws.Name <> "Janvier" Then
If IsNumeric(ws.Range("A3").Value) Then t = t + ws.Range("A3").Value
End If
Next
Sheets("Récap annuel").Range("B2").Value = t
End Sub
------------
Sub Test1()
Dim t As Double, ws As Worksheet
For Each ws In Worksheets
If ws.Name <> "Janvier" Then
If IsNumeric(ws.Range("A4").Value) Then t = t + ws.Range("A4").Value
End If
Next
Sheets("Récap annuel").Range("B3").Value = t
End Sub

merci d'avance
 
Dernière édition:

filtre69

XLDnaute Occasionnel
Re : Aide Macro a modifier

Bonjour Myta
voila cette macro je voudrais quel face du rangement sur mon calendrier
de prend les cellules b11 b12 b13 et plus même (sachant quel non pas la même somme) de janvier a décembre
et de les ranger dans Récap annuel sur m21 m22 m23

voila j'espere que je me suis exprimé

merci
 

pijaku

XLDnaute Occasionnel
Re : Aide Macro a modifier

Bonjour,

Pourquoi passer par une macro alors qu'une simple formule SOMME (en 3D) suffit...
Pour ton exemple, en B3 de ta feuille Récap Annuel, tu peux saisir :
=SOMME('Janvier : Décembre'!A3)
ATTENTION : supprimer les espaces inutiles dans cette formule. Je les ai mis pour un meilleur affichage dans ce forum....

Edition : Salut Myta
 
Dernière édition:

filtre69

XLDnaute Occasionnel
Re : Aide Macro a modifier

pijaku Bon marche pas comme je veux
voila la formule
=SI(NB.SI(Janvier!$D5:$E35;"CA")+(NB.SI(Janvier!$D5:$E35;"CA/2")/2)=0;"";NB.SI(Janvier!$D5:$E35;"CA")+(NB.SI(Janvier!$D5:$E35;"CA/2")/2))

je voudrais que cette formule me calcul les cellule de janvier a décembre comme elle est la elle marche pour janvier mais j'arrive pas a trouver la bonne formule pour tout les mois ensemble

merci d'avance
 

pijaku

XLDnaute Occasionnel
Re : Aide Macro a modifier

Et voici une petite fonction personnalisée à insérer dans un module :
Code:
Function NB_SI_3D(Plage As Variant, Critere As String)
Dim Wsh As Worksheet
Dim maPlage As Range, Cel As Range

'permet le calcul automatique de la fonction
Application.Volatile
'on boucle sur toutes les feuilles du classeur
For Each Wsh In ThisWorkbook.Worksheets
    'On écarte du calcul les feuilles qui ne doivent pas être prises en compte
    If Wsh.Name <> "Recap" And Wsh.Name <> "Feuil2" And Wsh.Name <> "Feuil3" Then
        'on affecte la plage de cellules concernées à notre variable de type Range
        Set maPlage = Wsh.Range(Plage)
        'Dans cette plage, on boucle sur totues les cellules
        For Each Cel In maPlage
            'si la cellule contient CA, on ajoute 1 à la fonction
            If Cel.Value = Critere Then NB_SI_3D = NB_SI_3D + 1
            If Cel.Value = Critere & "/2" Then NB_SI_3D = NB_SI_3D + 0.5
        Next Cel 'cellule suivante
    End If 'fin du test sur les noms des feuilles
Next Wsh 'feuille suivante
If NB_SI_3D = 0 Then NB_SI_3D = ""
End Function

A ADAPTER :
La ligne
Code:
If Wsh.Name <> "Recap" And Wsh.Name <> "Feuil2" And Wsh.Name <> "Feuil3" Then
Saisir, dans cette ligne, toutes les feuilles à exclure du calcul. Vous pouvez à loisir en ajouter ou en retirer de cette ligne.....

Pour l'utiliser, saisir, dans la feuille "Recap" :
=NB_SI_3D("D5:E35";"CA")
ou
=NB_SI_3D("F1:G145";"RTT")
 

filtre69

XLDnaute Occasionnel
Re : Aide Macro a modifier

Voila j'ai mis la macro elle marche super bien
mais depuis mon calendrier lague grave pourquoi?
je poste cette ligne si j'ai pas fait erreur je veux pas lire la feuille données et récap

la je pense avoir compris If Wsh.Name <> "Récap annuel " And Wsh.Name <> "Données" And Wsh.Name <> "Récap annuel" Then

IPERT GRAND MERCI

cordialement,
filtre69
 
Dernière édition:

Membres actuellement en ligne

Aucun membre en ligne actuellement.

Statistiques des forums

Discussions
312 086
Messages
2 085 197
Membres
102 814
dernier inscrit
JLGalley