Rechercher : dans
Par :

Créer un macro additionnant deux lignes excel

Dernière réponse le 6 jun 2008 à 16:24:17 comercier, le 6 jun 2008 à 14:26:16 
 Signaler ce message aux modérateurs

Bonjour,
je cherche à créer un macro qui additionne deux lignes excel, puis qui supprime ces lignes et les remplace par la nouvelle somme (partant de la colonne D à CD). Le problème que j'ai rencontré est le suivant: lorsque je crée mon macro, il l'applique aux lignes utilisées lors de la création. Je ne suis pas doué dans VBA et j'aurais besoin d'aide concernant la réalisation de cet outil essentiel à mon travail.

Merci d'avance!

Configuration: Windows XP
Firefox 2.0.0.14

Meilleures réponses pour « Créer un macro additionnant deux lignes excel » dans :
Créer une boutique en ligne VoirCréer une boutique en ligne Envisager de se lancer dans la vente sur Internet à travers une boutique en ligne demande de la réflexion et l'étude précise de votre projet. Avantages d'une boutique en ligne Contraintes d'une boutique en...

1

Roy Corey, le 6 jun 2008 à 14:50:15

Quel est le but précis de ta macro? Juste additionner ces deux lignes ou un algo sur de nombreuses lignes pour n'en avoir plus qu'une seule à la fin?
Tu veux dire quoi par : "il l'applique aux lignes utilisées lors de la création"???

Pourquoi supprimer les deux lignes? Tu fais la somme dans la première ligne et tu supprimes juste la seconde ligne.

Sub highlander ()
Dim i as integer

For i = 0 to 78
        Range("D1").Offset(0,i).Value = Range("D1").Offset(0,i).Value + Range("D1").Offset(1,i).Value
Next i
Range("E1").EntireRow.Delete Shift:=xlShiftUp

End sub


Tout ça se trouve dans l'aide fournit avec excel.

Répondre à Roy Corey

2

 comercier, le 6 jun 2008 à 16:24:17

La situation est la suivante:

les deux première lignes représentent des établissements qui ont fusionnés

la troisième ligne représente la fusion des deux (ce pourquoi je désire remplacé la somme des deux lignes par les deux autres puisque qu'elles ne me sont plus nécessaires)

quand j'exécute le macro, il l'applique par exemple aux lignes que j'ai utilisé lors de la création donc pas forcément les ligne sur lesquelles je désire appliquer le macro:

Sub Macro2()
'
' Macro2 Macro
' Macro enregistrée le 2008-06-06 par MSSS
'
' Touche de raccourci du clavier: Ctrl+t
'
Range("D17").Select
ActiveCell.FormulaR1C1 = "=SUM(R[-2]C:R[-1]C)"
Range("D17").Select
Selection.AutoFill Destination:=Range("D17:CD17"), Type:=xlFillDefault
Range("D17:CD17").Select
ActiveWindow.ScrollColumn = 80
ActiveWindow.ScrollColumn = 79
ActiveWindow.ScrollColumn = 78
ActiveWindow.ScrollColumn = 77
ActiveWindow.ScrollColumn = 76
ActiveWindow.ScrollColumn = 75
ActiveWindow.ScrollColumn = 74
ActiveWindow.ScrollColumn = 73
ActiveWindow.ScrollColumn = 72
ActiveWindow.ScrollColumn = 71
ActiveWindow.ScrollColumn = 70
ActiveWindow.ScrollColumn = 69
ActiveWindow.ScrollColumn = 68
ActiveWindow.ScrollColumn = 67
ActiveWindow.ScrollColumn = 66
ActiveWindow.ScrollColumn = 65
ActiveWindow.ScrollColumn = 64
ActiveWindow.ScrollColumn = 63
ActiveWindow.ScrollColumn = 62
ActiveWindow.ScrollColumn = 61
ActiveWindow.ScrollColumn = 60
ActiveWindow.ScrollColumn = 59
ActiveWindow.ScrollColumn = 58
ActiveWindow.ScrollColumn = 57
ActiveWindow.ScrollColumn = 56
ActiveWindow.ScrollColumn = 55
ActiveWindow.ScrollColumn = 54
ActiveWindow.ScrollColumn = 53
ActiveWindow.ScrollColumn = 52
ActiveWindow.ScrollColumn = 51
ActiveWindow.ScrollColumn = 50
ActiveWindow.ScrollColumn = 49
ActiveWindow.ScrollColumn = 48
ActiveWindow.ScrollColumn = 47
ActiveWindow.ScrollColumn = 46
ActiveWindow.ScrollColumn = 45
ActiveWindow.ScrollColumn = 44
ActiveWindow.ScrollColumn = 43
ActiveWindow.ScrollColumn = 42
ActiveWindow.ScrollColumn = 41
ActiveWindow.ScrollColumn = 40
ActiveWindow.ScrollColumn = 39
ActiveWindow.ScrollColumn = 38
ActiveWindow.ScrollColumn = 37
ActiveWindow.ScrollColumn = 36
ActiveWindow.ScrollColumn = 35
ActiveWindow.ScrollColumn = 34
ActiveWindow.ScrollColumn = 33
ActiveWindow.ScrollColumn = 31
ActiveWindow.ScrollColumn = 30
ActiveWindow.ScrollColumn = 29
ActiveWindow.ScrollColumn = 28
ActiveWindow.ScrollColumn = 27
ActiveWindow.ScrollColumn = 26
ActiveWindow.ScrollColumn = 25
ActiveWindow.ScrollColumn = 24
ActiveWindow.ScrollColumn = 23
ActiveWindow.ScrollColumn = 22
ActiveWindow.ScrollColumn = 21
ActiveWindow.ScrollColumn = 20
ActiveWindow.ScrollColumn = 19
ActiveWindow.ScrollColumn = 18
ActiveWindow.ScrollColumn = 16
ActiveWindow.ScrollColumn = 14
ActiveWindow.ScrollColumn = 13
ActiveWindow.ScrollColumn = 12
ActiveWindow.ScrollColumn = 11
ActiveWindow.ScrollColumn = 10
ActiveWindow.ScrollColumn = 9
ActiveWindow.ScrollColumn = 8
ActiveWindow.ScrollColumn = 6
ActiveWindow.ScrollColumn = 5
ActiveWindow.ScrollColumn = 4
ActiveWindow.ScrollColumn = 3
ActiveWindow.ScrollColumn = 2
ActiveWindow.ScrollColumn = 1
Selection.Copy
Range("D15").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Range("D16:CD17").Select
Application.CutCopyMode = False
Selection.Clear
End Sub

Ce dernier aurait besoin d'un «chemin relatif» afin de fonctionner correctement

Répondre à comercier
Collection CommentÇaMarche.net