Somme de 2 cellules en VBA

Fermé
Sirhill - 12 mai 2009 à 12:54
Polux31
Messages postés
6917
Date d'inscription
mardi 25 septembre 2007
Statut
Membre
Dernière intervention
1 novembre 2016
- 12 mai 2009 à 18:40
Bonjour,

j'ai un petit soucis car je voudrais additionner 2 cellules d'une feuille et mettre le résultat dans une cellule d'une autre feuille. mais la formule VBA que j'ai mis ne fonctionne pas.
Pourriez vous m'aider à résoudre ce petit problème, merci d'avance.
Voici ma ligne de Code:

Worksheets("DI").Range("Q" & MaxDI).Value = Application.WorksheetFunction.Sum(Sheets("Budget").Range("AV" & CptBudget), Sheets("Budget").Range("AT" & CptBudget))

Merci de votre aide.
CR

2 réponses

Polux31
Messages postés
6917
Date d'inscription
mardi 25 septembre 2007
Statut
Membre
Dernière intervention
1 novembre 2016
1 194
12 mai 2009 à 13:12
Bonjour,

En principe :

Worksheets(2).Range("A1").Value = Worksheets(1).Range("A1").Value + Worksheets(1).Range("A2").Value

;o)
1
Merci pour ta réponse. j'ai essayé mais cela ne fonctionne pas. (mais ta formule est bonne)
J'ai trouvé le problème c'est que les cellules d'origines sont sous format texte (suite à la convertion d'un fichier . csv) donc lorsque j'additionne cela concatène les deux cellules.

J'essai de trouver maintenant comment convertir le format de la colonne du fichier .csv en format nombre lorsque j'effectue mon extraction????

Voici le code que j'emploi..

'Permet de convertir les données copiées du CSV
Selection.TextToColumns Destination:=Range("A1"), DataType:=xlDelimited, _
TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, _
Semicolon:=True, Comma:=False, Space:=False, Other:=False, FieldInfo _
:=Array(Array(1, 1), Array(2, 1), Array(3, 1), TrailingMinusNumbers :=True


Merci

CR
0
Polux31
Messages postés
6917
Date d'inscription
mardi 25 septembre 2007
Statut
Membre
Dernière intervention
1 novembre 2016
1 194
12 mai 2009 à 18:40
re

Pour convertir :

Worksheets(2).Range("A1").Value =CDbl( Worksheets(1).Range("A1").Value) + CDbl(Worksheets(1).Range("A2").Value)

;o)
1