formule et variables en VBA

  • Initiateur de la discussion Initiateur de la discussion Blafi
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Blafi

XLDnaute Occasionnel
Bonjour à tous et bonne journée,

Je n'arrive pas à résoudre le problème suivant :

Dans le fichier joint (extrait d'un fichier que j'utilise), j'ai une feuille regroupant des écritures de dépenses avec des colonnes de taux tva (1 pour 5,5 et 2 pour 19,6) ainsi que les crédit et débit correspondant.

Je cherche à rentrer dans une cellule en dessous de mes relevés, grace à VBA, une formule me donnant la somme des tva si tauxtva=1 puis tauxtva2 .... Il s'agit donc de la formule somme.si(...) ou sum.if en VBA

Ma liste d'écritures ne sera jamais la même et j'ai donc écrit une macro qui cherche la dernière ligne d'écriture a laquelle j'affecte la variable LaDerLin puis j'ai défini des variables qui établissent les zones qui me seront utiles pour les calculs (ex : ZoneTxTva= "G4:G" & LaDerlin).

Mon problème : lorsque je rentre les formules sum.if dans ma macro :
-si j'utilise mes variables zone, elles ne sont pas reconnues
- si j'utilise la zone à traiter sous la forme "G4:G" & LaDerLin, vba me refuse ma formule..

Vous pouvez voir ma macro dans le fichier joint.. J'ai certainement un pb dans la manière de désigner les zones..

Merci à celui qui pourrait m'aider..
 

Pièces jointes

Re : formule et variables en VBA

Bonjour,
vite fait avant que j'aille en réunion :
tu n'as pas défini tes variables du genre :
Dim dernièreligne as integer ( ou long ou autre chose selon le besoin)

En attendant mieux, je t'invite à explorer cette piste.

@+
 
Re : formule et variables en VBA

Bonjour à tous,

Même si LPandre a raison et qu'il vaut mieux déclarer le type de ses variables (sinon ça ne sert pas à grand chose de les déclarer), je crois que l'erreur vient plutôt des 2 lignes là :

Code:
    ActiveCell.Formula = "=SUMIF(" & ZoneTxTva & ",1," & ZoneTva & ")"
'...
    ActiveCell.Formula = "=SUMIF(G4:G" & LaDerLin & ",2,H4:H" & LaDerLin & ")"
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
17
Affichages
1 K
Retour