VBA : Faire une somme sur une colonne inconnue (variable)
RésoluJerome -
Bonjour,
Je me permets de vous solliciter car je souhaiterais faire une somme sur une colonne que je ne connais pas. En effet, j'ai créé une variable pour définir ma première colonne vide.
SA = Range("B1").End(xlToRight).Column + 1
Je crée des données via une recherchev et sur la première cellule vide de cette colonne (SA) je voudrais faire une somme des données de cette même colonne.
Je me rends donc sur ma cellule SA puis sur la dernière cellule de cette colonne :
Cells(1, SA).Select
Selection.End(xlDown).Select
Mais je ne vois pas comment rentrer la plage de la somme puisque la colonne est inconnue
Je vous remercie pour votre aide
Cordialement
Windows / Chrome 95.0.4638.54
- VBA : Faire une somme sur une colonne inconnue (variable)
- Excel compter cellule couleur sans vba - Guide
- Incompatibilité de type vba ✓ - Forum VB / VBA
- Erreur 13 incompatibilité de type VBA excel ✓ - Forum Excel
- Mkdir vba ✓ - Forum VB / VBA
- Dépassement de capacité vba ✓ - Forum Excel
2 réponses
Bonjour,
Si vous êtes en vba, avec ces 2 lignes à adapter selon besoin!
Set MaPlage = Range("A2:A600")' mettre les info de votre colonne
MaSomme = Application.WorksheetFunction.Sum(MaPlage)
Pas clair ;
Je crée des données via une recherchev et sur la première cellule vide de cette colonne (SA) je voudrais faire une somme des données de cette même colonne.
Si première cellule vide est le numéro de la colonne alors cette colonne est donc vide et de ce fait la somme sera zéro… !
Bonjour Le Pingou,
Je vous remercier pour votre prompt retour.
J'ai essayé ceci qui fonctionne bien en MSGBox mais que j'aimerais avoir sur ma cellule derligneSA :
SA = Range("B1").End(xlToRight).Column + 1
Cells(1, SA).Select
derligneSA = Cells(Rows.Count, SA).End(xlUp).Row
MsgBox derligneSA 'Ca retrouve bien le dernière cellule
Set MaPlage = Range(Cells(2, SA), Cells(derligneSA, SA))
MaSomme = Application.WorksheetFunction.Sum(MaPlage)
MsgBox MaSomme ' ca me fait bien la somme
Sauriez vous comment faire s'il vous plait ?
Un grand merci
Cordialement
Bonjour à vous deux,
Peut être que ceci est la solution :
Bonjour ozone_,
Merci pour ta proposition. Par contre la dernière ligne
se met en rouge quand je la colle en VBA
Cordialement
Re,
Au temps pour moi ça fonctionne nickel :-)
Merci +++