Problème de Macro Excel

Bonjour,

j'ai un novice sur les macro excel

Pour faire simple j'ai un tableau 3 colonnes:
la troisieme colonne est une date (Di)

1 1 D1
1 1 D2
2 2 D2
2 3 D1
3 3 D4
3 3 D6
1 2 D4
3 1 D5

je cherche à afficher la ligne où la paire (3 3 par exemple) à la date la plus récente.
D6 étant la date la plus récente!

je sais afficher le max d'une colonne et d'en donner ensuite l'adresse mais pas de le faire en condition des 2 autres colonnes!

Merci de votre aide!
Configuration: Windows 7 / Firefox 3.5.8

4 réponses

  1. Contributeur
    Bonjour,
    en reprenant ton exemple de tableau :
    Sub couple_recent()
    For i = 1 To 8
        If Range("A" & i).Value = Range("B" & i).Value Then
            If Range("C" & i).Value > d Then
                d = Range("C" & i).Value
                lig = i
            End If
        End If
    Next i
    MsgBox "Date la plus proche pour un couple en ligne " & lig
    End Sub
    2
    1. bonjour,
      je pense que l'erreur viens de la synthaxe, il ne faut pas mettre de <"> devant la veriable lig
      Rows(lig).Select
      0
      1. J'avance un peu mais je suis bloqué pour l'affichage de la ligne que j'ai identifié

        Sub prog_recent()
        
        Dim Id_user As Integer
        Dim Id_prog As Integer
        Dim m As Integer
        
        Sheets("Formulaire").Select
        
        Id_user = Range("K6").Value
        Id_prog = Range("K10").Value
        
        Sheets("Portefeuille_Client").Select
        
        m = Application.WorksheetFunction.Max(Range("A1:A1000"))
        
        For i = 1 To m
        
            If Range("C" & i).Value = Id_user Then
            
             If Range("G" & i).Value = Id_prog Then
             
                If Range("B" & i).Value > d Then
                
                    d = Range("B" & i).Value
                    
                    lig = i
                    
                End If
                
            End If
            
        End If
        
        Next i
        
        
        Rows("lig:lig").Select
        Selection.Copy
          
        Sheets("Formulaire").Select
        
        Range("K4").Select
        Selection.PasteSpecial Paste:=xlPasteValues, _
        Operation:=xlNone, SkipBlanks:=False, Transpose:=True
        Range("K4").Select
        
        End Sub
        
        


        au moment de Rows("lig:lig").select j'ai une erreur. Je cherche a sélectionner toute la ligne N°"lig" pour ensuite la coller ailleurs.

        Vous auriez une solution?

        merci!
        0
        1. en fait je me suis mal exprimé

          je cherche à faire une fonction dont la variable est le couple (par ex 3 3 ou 3 2 ou 1 2)

          qui donne la ligne à laquelle la date est la plus récente pour ce couple.

          Je vais déjà chercher avec ça!

          Merci!
          0