XL 2013 Ajouter un nombre d'une colonne à une autre

Riki no Kage

XLDnaute Nouveau
Bonjour,

J'aimerais savoir s'il est possible (et surtout comment faire) pour ajouter un bouton dont la vocation serait d'ajouter le contenu de toutes les cellules d'une colonne au contenu d'une autre colonne.

Par exemple, je possède les données de ce tableau et j'aimerais ajouter le contenu des cellules de B dans A :

A | B
1 | 2
8 | 3
7 | 6

De telle manière que le tableau devienne :

A | B
3 | 0
11 | 0
13 | 0

Bien à vous (et bonne soirée), Riki.
 

Staple1600

XLDnaute Barbatruc
Bonsoir le fil, le forum

Une possible macro
VB:
Sub a()
Dim t, tt, i&, j&
t = [A1].CurrentRegion.Value
ReDim tt(1 To UBound(t))
For i = LBound(t) To UBound(t)
tt(i) = t(i, 1) + t(i, 2)
Next
Range("A1").Resize(UBound(tt)) = Application.Transpose(tt)
Range("B1").Resize(UBound(tt)) = 0
End Sub
Testée sur ton exemple.
 

Riki no Kage

XLDnaute Nouveau
Avec mon exemple, ça marche parfaitement, mais quand je souhaite l'adapter pour qu'il fonctionne avec mon tableau fini, l'erreur "L'indice n'appartient pas à la sélection" apparaît.

Mon tableau utilise les colonnes C et E depuis la ligne 6, j'aurais du le préciser avant, merci beaucoup quand même !
 

Staple1600

XLDnaute Barbatruc
Re

:rolleyes:
Oui comme tu le dis, tu aurais du le préciser avant
Donc pour ma part, j'en reste là puisque:
Avec mon exemple, ça marche parfaitement
;)

NB: Quoique, histoire d'embellir mon karma et avant d'enfiler mon pyjama en pilou
Un dernier code
VB:
Sub b()
Dim t, tt, i&, j&
t = [C6:E8].Value
ReDim tt(1 To UBound(t))
For i = LBound(t) To UBound(t)
tt(i) = t(i, 1) + t(i, 3)
Next
Range("C6").Resize(UBound(tt)) = Application.Transpose(tt)
Range("E6").Resize(UBound(tt)) = 0
End Sub
 
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
312 196
Messages
2 086 092
Membres
103 116
dernier inscrit
kutobi87