PROBLEME DE MACRO EXCEL

.Range("L2").Copy .Range("L2").Resize([dernier] - 1)

BONJOUR j'ai un soucis avec cette ligne dans mon classeur j'ai excell 2007

merci

3 réponses

  1. c'est pour faire des statistique de loto, avec ranger par feuille , 1n pour 1 numéro commun, 2n 2 numéros communs, 3n ... 4n...ect , d'après la base

    avec la possibilité de rajouter des nouveaux tirages

    1. Contributeur

      1. En général, le surlignage en jaune est précédé par l'affichage d'un message d'erreur.  N'as-tu pas de message d'erreur?

      2. C'est un nouveau souci, ton code fonctionnait bien avant?  Qu'as-tu changé?

      3. Je ne comprends pas bien le but de cette ligne surlignée?

      4. D'où vient "dernier"? 

      5. Quel est le but de ce "resize()"?

  2. Sub Loto()
         Dim i, j, N, c, c1, C3
         With Sheets("BDD")
              On Error Resume Next
              .AutoFilter.Range.AutoFilter
              On Error GoTo 0
              .Range("L2").Copy .Range("L2").Resize([dernier] - 1)
              Set c = .Range("L1:L" & .Range("L" & Rows.Count).End(xlUp).Row)
              Set c1 = c.Cells(c.Rows.Count + 10, 2)
         End With
         Application.ScreenUpdating = False
    
    parti des macro la ligne souligné est en jaune
    
         For i = 1 To 5
              With Sheets(i & "N")
                   If .Range("A1").Value = "" Then .Range("A1").Value = "."
                   .UsedRange.Offset(, 4).ClearContents
                   .Range("D1").Value = "."
                   .Rows(2).NumberFormat = "dd/mm/yy"
              End With
         Next
         
         For i = [dernier] To [dernier] - 10 Step -1
              If i Mod 10 = 0 Then Application.StatusBar = i: DoEvents
              c.Cells(1, 2).Value = i
              For j = 1 To 4
                   c.AutoFilter 1, j
                   N = c.SpecialCells(xlVisible).Count - 1
                   If N > 0 Then
                        c1.Resize(2000, 2).ClearContents
                        c.Offset(1, 1 - c.Column).SpecialCells(xlVisible).Copy c1
                        With c1.Resize(N, 2)
                             .Columns(2).FormulaR1C1 = "=" & i & "-rc[-1]"
                             .Columns(2).Value = .Columns(2).Value
                             .Sort .Range("B1"), xlAscending, Header:=xlNo
                             Set C3 = Sheets(j & "N").Cells(1, Columns.Count).End(xlToLeft).Offset(, 1)
                             C3.Resize(3).Value = Application.Transpose(c.Cells(1, 2).Resize(, 3).Value2)
                             C3.Cells(4, 1).Value = N
                             .Offset(, 1).Copy C3.Offset(5)
                        End With
    1. Contributeur

      En général, le surlignage en jaune est précédé par l'affichage d'un message d'erreur.

      C'est un nouveau souci, ton code fonctionnait bien avant?  Qu'as-tu changé?

      Je ne comprends pas bien le but du code dans cette ligne surlignée?

      D'où vient "dernier"?  Quel est le but de ce "resize()"?