Problème de Macro Excel
Alcip
-
pou pouille Messages postés 212 Statut Membre -
pou pouille Messages postés 212 Statut Membre -
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!
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
-
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 -
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! -
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! -
bonjour,
je pense que l'erreur viens de la synthaxe, il ne faut pas mettre de <"> devant la veriable ligRows(lig).Select