bnj
j'ai deux feuille: seriebrut et seas. la feuille seriebrut est composée de pls données: en ligne les villes et en colonne les dates. il faut bien signaler que les lignes n'ont pas le même début (par exemple la 1 série (ie ligne) commence le 1996 cependant la 2 série commence en 2001). l'objectif c'est de calculer pour chaque ligne la moyenne des 12 premieres cellules non vides afin de l'éliminer des 12 premiers cellules non vides de la même ligne de la feuille seas.
voilà mon programme:
Sub liss_sais()
Dim plage As Object
Dim ligne, x, y, som, NumLin, NumCol
Dim s As Double, m As Double
Dim i As Integer
Sheets("hist").Select
For ligne = 2 To 500 'opération pour chaque ligne des 500
Range("E" & ligne).Select
Selection.End(xlToRight).Select
y = ActiveCell.Value 'la valeur enregistrée ds la cellule activée
x = ActiveCell.Address(0, 0) 'adresse de la cellule activée
NumLin = Range(x).Rows.Count
NumCol = ActiveCell.Columns.Count
Set plage = Selection.Resize(NumLin, NumCol + 12)
Selection.Formula = "=sum(plage)"
's = 0
'For i = 1 To 12
's = s + plage.Cells(i).Value-
'Next
'm = s / 12
'x = Sheets("hist").Cells(1, i).End(xlToLeft).Address(0, 0)
'Sheets("initialisation").Select
'ActiveSheet.Range("colonne" & "ligne").Activate
Sheets("initialseas").Activate
Range(x).Select
ActiveCell.Formula = "=y-cells(ligne,130)"
With ActiveCell.Interior
.ColorIndex = 15
.Pattern = xlSolid
End With
ActiveCell.Offset(0, 1).Activate 'c moi pour déplacer la cellule active à la cellule suivante'
y = ActiveCell.Value
ActiveCell.Formula = "= y - cells(ligne,130)"
With ActiveCell.Interior
.ColorIndex = 15
.Pattern = xlSolid
End With
ActiveCell.Offset(0, 1).Activate 'c moi pour déplacer la cellule active'
y = ActiveCell.Value
ActiveCell.FormulaR1C1 = "= y - cells(ligne,130)"
With ActiveCell.Interior
.ColorIndex = 15
.Pattern = xlSolid
End With
ActiveCell.Offset(0, 1).Activate 'c moi pour déplacer la cellule active'
y = ActiveCell.Value
ActiveCell.Formula = "= y - cells(ligne,130)"
With ActiveCell.Interior
.ColorIndex = 15
.Pattern = xlSolid
End With
ActiveCell.Offset(0, 1).Activate 'c moi pour déplacer la cellule active'
y = ActiveCell.Value
ActiveCell.Formula = "= y - mcells(ligne,130)"
With ActiveCell.Interior
.ColorIndex = 15
.Pattern = xlSolid
End With
ActiveCell.Offset(0, 1).Activate 'c moi pour déplacer la cellule active'
y = ActiveCell.Value
ActiveCell.Formula = "= y - mcells(ligne,130)"
With ActiveCell.Interior
.ColorIndex = 15
.Pattern = xlSolid
End With
ActiveCell.Offset(0, 1).Activate 'c moi pour déplacer la cellule active'
y = ActiveCell.Value
ActiveCell.Formula = "= y - mcells(ligne,130)"
With ActiveCell.Interior
.ColorIndex = 15
.Pattern = xlSolid
End With
ActiveCell.Offset(0, 1).Activate 'c moi pour déplacer la cellule active'
y = ActiveCell.Value
ActiveCell.Formula = "= y - cells(ligne,130)"
With ActiveCell.Interior
.ColorIndex = 15
.Pattern = xlSolid
End With
ActiveCell.Offset(0, 1).Activate 'c moi pour déplacer la cellule active'
y = ActiveCell.Value
ActiveCell.Formula = "= y - cells(ligne,130)"
With ActiveCell.Interior
.ColorIndex = 15
.Pattern = xlSolid
End With
ActiveCell.Offset(0, 1).Activate 'c moi pour déplacer la cellule active'
y = ActiveCell.Value
ActiveCell.Formula = "= y - cells(ligne,130)"
With ActiveCell.Interior
.ColorIndex = 15
.Pattern = xlSolid
End With
ActiveCell.Offset(0, 1).Activate 'c moi pour déplacer la cellule active'
y = ActiveCell.Value
ActiveCell.Formula = "= y - cells(ligne,130)"
With ActiveCell.Interior
.ColorIndex = 15
.Pattern = xlSolid
End With
Next
End Sub
j'ai deux feuille: seriebrut et seas. la feuille seriebrut est composée de pls données: en ligne les villes et en colonne les dates. il faut bien signaler que les lignes n'ont pas le même début (par exemple la 1 série (ie ligne) commence le 1996 cependant la 2 série commence en 2001). l'objectif c'est de calculer pour chaque ligne la moyenne des 12 premieres cellules non vides afin de l'éliminer des 12 premiers cellules non vides de la même ligne de la feuille seas.
voilà mon programme:
Sub liss_sais()
Dim plage As Object
Dim ligne, x, y, som, NumLin, NumCol
Dim s As Double, m As Double
Dim i As Integer
Sheets("hist").Select
For ligne = 2 To 500 'opération pour chaque ligne des 500
Range("E" & ligne).Select
Selection.End(xlToRight).Select
y = ActiveCell.Value 'la valeur enregistrée ds la cellule activée
x = ActiveCell.Address(0, 0) 'adresse de la cellule activée
NumLin = Range(x).Rows.Count
NumCol = ActiveCell.Columns.Count
Set plage = Selection.Resize(NumLin, NumCol + 12)
Selection.Formula = "=sum(plage)"
's = 0
'For i = 1 To 12
's = s + plage.Cells(i).Value-
'Next
'm = s / 12
'x = Sheets("hist").Cells(1, i).End(xlToLeft).Address(0, 0)
'Sheets("initialisation").Select
'ActiveSheet.Range("colonne" & "ligne").Activate
Sheets("initialseas").Activate
Range(x).Select
ActiveCell.Formula = "=y-cells(ligne,130)"
With ActiveCell.Interior
.ColorIndex = 15
.Pattern = xlSolid
End With
ActiveCell.Offset(0, 1).Activate 'c moi pour déplacer la cellule active à la cellule suivante'
y = ActiveCell.Value
ActiveCell.Formula = "= y - cells(ligne,130)"
With ActiveCell.Interior
.ColorIndex = 15
.Pattern = xlSolid
End With
ActiveCell.Offset(0, 1).Activate 'c moi pour déplacer la cellule active'
y = ActiveCell.Value
ActiveCell.FormulaR1C1 = "= y - cells(ligne,130)"
With ActiveCell.Interior
.ColorIndex = 15
.Pattern = xlSolid
End With
ActiveCell.Offset(0, 1).Activate 'c moi pour déplacer la cellule active'
y = ActiveCell.Value
ActiveCell.Formula = "= y - cells(ligne,130)"
With ActiveCell.Interior
.ColorIndex = 15
.Pattern = xlSolid
End With
ActiveCell.Offset(0, 1).Activate 'c moi pour déplacer la cellule active'
y = ActiveCell.Value
ActiveCell.Formula = "= y - mcells(ligne,130)"
With ActiveCell.Interior
.ColorIndex = 15
.Pattern = xlSolid
End With
ActiveCell.Offset(0, 1).Activate 'c moi pour déplacer la cellule active'
y = ActiveCell.Value
ActiveCell.Formula = "= y - mcells(ligne,130)"
With ActiveCell.Interior
.ColorIndex = 15
.Pattern = xlSolid
End With
ActiveCell.Offset(0, 1).Activate 'c moi pour déplacer la cellule active'
y = ActiveCell.Value
ActiveCell.Formula = "= y - mcells(ligne,130)"
With ActiveCell.Interior
.ColorIndex = 15
.Pattern = xlSolid
End With
ActiveCell.Offset(0, 1).Activate 'c moi pour déplacer la cellule active'
y = ActiveCell.Value
ActiveCell.Formula = "= y - cells(ligne,130)"
With ActiveCell.Interior
.ColorIndex = 15
.Pattern = xlSolid
End With
ActiveCell.Offset(0, 1).Activate 'c moi pour déplacer la cellule active'
y = ActiveCell.Value
ActiveCell.Formula = "= y - cells(ligne,130)"
With ActiveCell.Interior
.ColorIndex = 15
.Pattern = xlSolid
End With
ActiveCell.Offset(0, 1).Activate 'c moi pour déplacer la cellule active'
y = ActiveCell.Value
ActiveCell.Formula = "= y - cells(ligne,130)"
With ActiveCell.Interior
.ColorIndex = 15
.Pattern = xlSolid
End With
ActiveCell.Offset(0, 1).Activate 'c moi pour déplacer la cellule active'
y = ActiveCell.Value
ActiveCell.Formula = "= y - cells(ligne,130)"
With ActiveCell.Interior
.ColorIndex = 15
.Pattern = xlSolid
End With
Next
End Sub