Bonjour,
J'ai un problème de "taille" avec VBA et je ne sais pas comment le résoudre donc, je me tourne vers vous. Que je vous explique ce que le programme qui suit fait.
Dans un classeur Excel, j'ai 12 feuilles de calcul mensuelles et une feuille annuelle. Ces tableaux ont pour objectif de faire un bilan de temps passé par tâches de travail.
Pour calculer les résultats annuels, je copie dans des colonnes de cette feuille les résultats de chaque mois. Puis dans une autre, je fais la somme des de ces colonnes.
Pour trouver les valeurs à copier et à quel emplacement, je fais une recherche par valeur de cellule.
Le problème est que mon programme est trop long. Y-a-t-il un moyen de le réduire ?
Ci-dessous, un extrait :
ElseIf mois = 8 Then
If moisaujourdhui2 = "Août" Then
Sheets("Bilan mensuel Août " & anneeaujourdhui).Select
ActiveSheet.Range("B" & c).Value = "=MATCH(""Tâches diverses"",R[-" & o + 9 + d & "]C:R[-" & 10 + d & "]C,0)"
e = ActiveSheet.Range("B" & c).Value
ActiveSheet.Range("C" & e).Select
Selection.Copy
Sheets("Bilan annuel " & anneeaujourdhui).Select
ActiveSheet.Range("J" & e).Select
ActiveSheet.Paste Link:=True
Sheets("Bilan mensuel Août " & anneeaujourdhui).Select
ActiveSheet.Range("B" & c).Value = "=MATCH(""" & valeurcherchee & """,R[-" & o + 9 + d & "]C:R[-" & 10 + d & "]C,0)"
e = ActiveSheet.Range("B" & c).Value
ActiveSheet.Range("C" & e).Select
Selection.Copy
Sheets("Bilan annuel " & anneeaujourdhui).Select
ActiveSheet.Range("H" & e).Select
ActiveSheet.Paste Link:=True
ActiveSheet.Range("O" & e).Value = "=SUM(RC[-12]:RC[-1])"
End If
Merci !
J'ai un problème de "taille" avec VBA et je ne sais pas comment le résoudre donc, je me tourne vers vous. Que je vous explique ce que le programme qui suit fait.
Dans un classeur Excel, j'ai 12 feuilles de calcul mensuelles et une feuille annuelle. Ces tableaux ont pour objectif de faire un bilan de temps passé par tâches de travail.
Pour calculer les résultats annuels, je copie dans des colonnes de cette feuille les résultats de chaque mois. Puis dans une autre, je fais la somme des de ces colonnes.
Pour trouver les valeurs à copier et à quel emplacement, je fais une recherche par valeur de cellule.
Le problème est que mon programme est trop long. Y-a-t-il un moyen de le réduire ?
Ci-dessous, un extrait :
ElseIf mois = 8 Then
If moisaujourdhui2 = "Août" Then
Sheets("Bilan mensuel Août " & anneeaujourdhui).Select
ActiveSheet.Range("B" & c).Value = "=MATCH(""Tâches diverses"",R[-" & o + 9 + d & "]C:R[-" & 10 + d & "]C,0)"
e = ActiveSheet.Range("B" & c).Value
ActiveSheet.Range("C" & e).Select
Selection.Copy
Sheets("Bilan annuel " & anneeaujourdhui).Select
ActiveSheet.Range("J" & e).Select
ActiveSheet.Paste Link:=True
Sheets("Bilan mensuel Août " & anneeaujourdhui).Select
ActiveSheet.Range("B" & c).Value = "=MATCH(""" & valeurcherchee & """,R[-" & o + 9 + d & "]C:R[-" & 10 + d & "]C,0)"
e = ActiveSheet.Range("B" & c).Value
ActiveSheet.Range("C" & e).Select
Selection.Copy
Sheets("Bilan annuel " & anneeaujourdhui).Select
ActiveSheet.Range("H" & e).Select
ActiveSheet.Paste Link:=True
ActiveSheet.Range("O" & e).Value = "=SUM(RC[-12]:RC[-1])"
End If
Merci !