• Initiateur de la discussion Initiateur de la discussion oufkiryo
  • Date de début Date de début

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 !

Re : debeguer une macros

Bonjour le fil, bonjour le forum,

Peut-être comme ça mais comme dans ton exemple il manque l'onglet Evolution T.congés j'ai pas pu tester...
Code:
Private Sub CommandButton1_Click()
Dim i As Integer, j As Integer, k As Integer
 
For i = 4 To Worksheets("charge").Cells(Application.Rows.Count, 1).End(xlUp).Row
    For j = 6 To Worksheets("MCBZ").Cells(Application.Rows.Count, 2).End(xlUp).Row
        For k = 6 To Worksheets("Evolution T.congés").Cells(6, Application.Columns.Count).End(xlToLeft).Column
            If Worksheets("Evolution T.congés").Cells(6, k).Value = "10" Then Exit For
            If ThisWorkbook.Worksheets("charge").Range("A" & i) = ThisWorkbook.Worksheets("MCBZ").Range("b" & j) Then
                If ThisWorkbook.Worksheets("MCBZ").Range("k" & j) = ThisWorkbook.Worksheets("charge").Cells(3, k) Then
                    ThisWorkbook.Worksheets("charge").Cells(3, k) = ThisWorkbook.Worksheets("charge").Cells(3, k) + _
                            ThisWorkbook.Worksheets("MCBZ").Range("c" & j)
                End If
            End If
       Next k
    Next j
Next i
End Sub
 
Re : debeguer une macros

l'erreur est depacement de capacité
je pense que le problème est dans cette partie:

If ThisWorkbook.Worksheets("MCBZ").Range("k" & j) = ThisWorkbook.Worksheets("charge").Cells(3, k) Then
ThisWorkbook.Worksheets("charge").Cells(3, k) = ThisWorkbook.Worksheets("charge").Cells(3, k) + _
ThisWorkbook.Worksheets("MCBZ").Range("c" & j)
 
Re : debeguer une macros

Bonjour le fil, bonjour le forum,

J'avais pas rafraîchi. Si k s'arrête à 52 ça donnerait ça (à tester) :
Code:
Private Sub CommandButton1_Click()
Dim i As Integer, j As Integer, k As Integer
 
For i = 4 To Worksheets("charge").Cells(Application.Rows.Count, 1).End(xlUp).Row
    For j = 6 To Worksheets("MCBZ").Cells(Application.Rows.Count, 2).End(xlUp).Row
        For k = 6 To 52
            If Worksheets("Evolution T.congés").Cells(6, k).Value = "10" Then Exit For
            If ThisWorkbook.Worksheets("charge").Range("A" & i) = ThisWorkbook.Worksheets("MCBZ").Range("b" & j) Then
                If ThisWorkbook.Worksheets("MCBZ").Range("k" & j) = ThisWorkbook.Worksheets("charge").Cells(3, k) Then
                    ThisWorkbook.Worksheets("charge").Cells(3, k) = ThisWorkbook.Worksheets("charge").Cells(3, k) + _
                            ThisWorkbook.Worksheets("MCBZ").Range("c" & j)
                End If
            End If
       Next k
    Next j
Next i
End Sub
 
Re : debeguer une macros

Bonjour le fil, bonjour le forum,

Ben oui ça plante évidemment... Remplace Evolution T.congés par charge et ça ira mieux...
Code:
Private Sub CommandButton1_Click()
Dim i As Integer, j As Integer, k As Integer
 
For i = 4 To Worksheets("charge").Cells(Application.Rows.Count, 1).End(xlUp).Row
    For j = 6 To Worksheets("MCBZ").Cells(Application.Rows.Count, 2).End(xlUp).Row
        For k = 6 To 52
            If Worksheets("charge").Cells(6, k).Value = "10" Then Exit For
            If ThisWorkbook.Worksheets("charge").Range("A" & i) = ThisWorkbook.Worksheets("MCBZ").Range("b" & j) Then
                If ThisWorkbook.Worksheets("MCBZ").Range("k" & j) = ThisWorkbook.Worksheets("charge").Cells(3, k) Then
                    ThisWorkbook.Worksheets("charge").Cells(3, k) = ThisWorkbook.Worksheets("charge").Cells(3, k) + _
                            ThisWorkbook.Worksheets("MCBZ").Range("c" & j)
                End If
            End If
       Next k
    Next j
Next i
End Sub
Mais, comme PierrJean, je n'ai pas compris où tu voulais en venir...
Peux-tu nous faire un nouvel exemple avec avant et après la macro ?
 
- 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
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
15
Affichages
636
W
  • Question Question
Microsoft 365 archivage excel
Réponses
12
Affichages
279
  • Question Question
Microsoft 365 problème CHDIR
Réponses
59
Affichages
2 K
Réponses
2
Affichages
107
Réponses
7
Affichages
179
Réponses
8
Affichages
317
Réponses
3
Affichages
473
  • Question Question
XL 2016 liste
Réponses
10
Affichages
388
Réponses
7
Affichages
267
Retour