Calcul sur ligne

Bonjour,

J'aimerai savoir comment calculer sur une ligne le nb de V et D en cours, sachant qu'un N réinitialise la série. Le résultat sera indiqué dans la colonne "en cours".

Ci joint le fichier dans l'onglet "VND MT"

Merci pour votre aide

Manu

5ligue-1.xlsm (48.94 Ko)

Salut Manou,

pas fortiche en formules mais, en VBA, je me défends..

Private Sub Worksheet_Change(ByVal Target As Range)
'
Dim iRow%, iCol%, iColT%
'
On Error Resume Next
Application.EnableEvents = False
'
If Not Intersect(Target, Range("D3:AO22")) Is Nothing Then
    iRow = Target.Row
    iColT = [D2].End(xlToRight).Column + 1
    iCol = Range("D" & iRow & ":AP" & iRow).Find(what:="N", lookat:=xlWhole, LookIn:=xlValues, searchdirection:=xlPrevious).Column + 1
    iCol = IIf(iCol = 0, 4, iCol)
    Range("C" & iRow).Value = WorksheetFunction.CountA(Range(Chr(64 + iCol) & iRow).Resize(1, iColT - iCol))
    If Range("C" & iRow).Value = 0 Then Range("C" & iRow).Value = ""
End If
'
Application.EnableEvents = True
'
End Sub
7ligue-1.xlsm (48.14 Ko)


A+

Bonjour,

Merci, ça fonctionne très bien sur mon tableau Ligue 1

Mais ça ne fonctionne pas sur mes autres tableaux. il est pourtant au bon endroit, j'ai changé la zone "Range" mais rien ne s'inscrit dans le record

merci d'avance

Manu

Salut Manou,

quels autres tableaux ? Peno ? Et quels autres ?
De plus, 'Peno' n'a pas la même structure (record, en cours) : faut-il faire la même chose ?
Ce n'était pas demandé, que je sache...


A+

je me suis mal exprimé

En fait j'ai un fichier excel par championnat ( Ligue 1 - Ligue 2 - Angleterre - Angleterre 2.....)

J'ai inséré le module dans les autres fichiers mais ça ne fonctionne pas.

est ce qu'il faut insérer de nouveaux résultats pour le calcul ? car sur le fichier ligue 2, j'ai rentré le score du match de hier soir et seules les 2 équipes ont un record d'affiché.?

Comme d'hab', Manou...


A+

Tout fonctionne bien

J'aurais une autre demande du coup.

Dans la colonne record, est-ce qu'on pourrait inscrire la plus grande suite trouvée de matchs non nul ?

Merci d'avance

Salut Manou,

pour tes records, tu ajoutes cette instruction en dernière ligne du bloc IF...ENDIF de ma macro.

Range("B" & iRow).Value = WorksheetFunction.Max(Range("B" & iRow).Value, Range("C" & iRow).Value)


A+

Bonjour,

j'ai rajouté la ligne, mais ça m'indique le nb de matchs non nul en cours.

Merci d'avance

3ligue-1.xlsm (52.79 Ko)

Salut Manou,

déso, j'avais zappé le fait que les colonnes dépassaient [Z:Z]...

Public Function fctCol(ByVal iCol%) As String
'
fctCol = Split(Columns(iCol).Address(ColumnAbsolute:=False), ":")(1)
'
End Function
8ligue-1.xlsm (49.19 Ko)


A+

Bonjour,

j'ai rajouté le code, mais malheureusement ça laisse la colonne record vide...

2ligue-2.xlsm (52.15 Ko)

Ah, certes, très bien, mais tu as oublié celle-ci, ailleurs...

Range("B" & iRow).Value = WorksheetFunction.Max(Range("B" & iRow).Value, Range("C" & iRow).Value)

Les deux macros doivent être présentes et complètes...

Allez, cherche un peu, réfléchis...


A+

Bonjour,

désolé je pensais que le 2ème code annulé le 1er.

J'ai bien mis les 2 codes mais dans ma colonne record ça m'indique la même chose que dans la colonne en cours

Bonsoir,

malheureusement je suis en panne sèche, je ne trouve pas la solution. ça fonctionne sur un fichier mais pas sur les autres....

Envoie tes fichiers, que veux-tu que je te dise d'autre ? Il peut y avoir tellement de surprises dans ce que vous pensez être "identique" d'un fichier à l'autre !


A+

je suis vraiment désolé de t'embêter avec ça.

2ligue-2.xlsm (54.48 Ko)
2espagne.xlsm (51.82 Ko)
Rechercher des sujets similaires à "calcul ligne"