Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Excel > Macros et VBA Excel
Macros et VBA Excel Vos questions relatives aux macros Excel, à l'utilisation de VBA et à l'automatisation de vos classeurs Excel.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
Vieux 29/06/2009, 16h44   #1
Invité régulier
 
Date d'inscription: mai 2009
Localisation: Montluçon (03)
Âge: 19
Messages: 11
Envoyer un message via MSN à trigger00
Par défaut Probleme de syntaxe avec des calculs integrant des variables

Bonjour à tous et désolé pour le titre à ralonge mais je pense qu'il récapitule bien le soucis.

Je débute depuis peu en vba et je voudrais savoir quelle serait la syntaxe pour un calcul du type (je souhaiterais faire la somme d'un range) :

Code :
cells(1,1).formula = "=sum(Range(Cells(i,j)):Cells(k,l)))"
Ayant essayé beaucoup de differentes syntaxes au cour de la journée et cela, sans résultat, je solicite votre aide.

Cordialement,
trigger
trigger00 est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 29/06/2009, 16h49   #2
Expert Confirmé
 
Avatar de Krovax
 
Date d'inscription: juillet 2008
Localisation: Elsass
Âge: 24
Messages: 1 887
Par défaut

Bonjour,
le mot clef concaténation (fait une recherche google) pour VBA c'est le &

Code :
cells(1,1).formula = "=sum(Range(" & Cells(i,j).address & ":" &Cells(k,l).address & ")"
Par contre tesparenthèse ce n'était pas ca
Krovax est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 30/06/2009, 08h34   #3
Invité régulier
 
Date d'inscription: mai 2009
Localisation: Montluçon (03)
Âge: 19
Messages: 11
Envoyer un message via MSN à trigger00
Par défaut

Bonjour, je tiens tout d'abord à te remercier pour ta réponse, elle me semble correcte cependant elle me retourne une erreure :

Citation:
Erreur d'éxecution '1004':
Erreur définie par l'application ou par l'objet
Je te montre la partie de mon code où j'utilise ta syntaxe:

Code :
NbLigneMax = Sheets("feuil1").Cells((Range("a:a").Rows.Count), 1).End(xlUp).Row
'++++++++++++++++++++++++++++++++++++
        'Calculs
'++++++++++++++++++++++++++++++++++++
 
ColSynt = Cells.Find(What:="ici").Column
LigneSynt = Cells.Find(What:="ici").Row
 
k = 1
 
While Sheets("feuil1").Cells(1, k).Value <> ""
 
Cells(NbLigneMax + 1, k).Formula = "=sum(Range(" & Cells(LigneSynt + 1, k).Address & ":" & Cells(NbLigneMax, k).Address & ")"
 
 
k = k + 1
    
Wend
Je ne sais pas trop où chercher mais l'erreur se trouve sur la ligne du calcul...

Cordialement,
Trigger
trigger00 est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 30/06/2009, 08h44   #4
Expert Confirmé
 
Avatar de Krovax
 
Date d'inscription: juillet 2008
Localisation: Elsass
Âge: 24
Messages: 1 887
Par défaut

Quand on rentre une formule dans excel on utilise pas le mot range ok? donc pareil quand ou utilise formula
(je dit ca mais j'avais oublié de l'enlever )
Code :
Cells(NbLigneMax + 1, k).Formula = "=sum(" & Cells(LigneSynt + 1, k).Address & ":" & Cells(NbLigneMax, k).Address & ")"
ou avec range
Code :
Cells(NbLigneMax + 1, k).Formula = "=sum(" & Range( Cells(LigneSynt + 1, k),Cells(NbLigneMax, k)).Address & ")"
 
Krovax est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 30/06/2009, 08h49   #5
Invité régulier
 
Date d'inscription: mai 2009
Localisation: Montluçon (03)
Âge: 19
Messages: 11
Envoyer un message via MSN à trigger00
Par défaut

Encore un coup je trouve ce forum assez extraordianire, deuxieme fois que je poste et deuxieme que j'ai une réponse claire, nette et précise.

Merci beaucoup pour ton aide,
Cordialement,
Trigger.
trigger00 est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 30/06/2009, 09h20   #6
Membre actif
 
Date d'inscription: octobre 2007
Localisation: 29
Messages: 176
Par défaut

Bonjour,

un peu plus compacte :

Code :
Cells(NbLigneMax + 1, K).FormulaR1C1 = "=SUM(R" & LigneSynt & "C:R[-1]C)"
mapeh est déconnecté   Envoyer un message privé Réponse avec citation
NEWS EXCELF.A.Q EXCELTUTORIELS EXCELSOURCES EXCELOUTILS EXCELLIVRES EXCELOFFICE 2010

Réponse Proposer ce sujet en actualité

Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Excel > Macros et VBA Excel



Outils de la discussion

Règles de messages
Vous ne pouvez pas créer de nouvelles discussions
Vous ne pouvez pas envoyer des réponses
Vous ne pouvez pas envoyer des pièces jointes
Vous ne pouvez pas modifier vos messages

Les balises BB sont activées : oui
Les smileys sont activés : oui
La balise [IMG] est activée : oui
Le code HTML peut être employé : non
Trackbacks are non
Pingbacks are non
Refbacks are non



Fuseau horaire GMT +1. Il est actuellement 03h52.


Vos questions techniques : forum d'entraide Excel - Publiez vos articles, tutoriels et cours
et rejoignez-nous dans l'équipe de rédaction du club d'entraide des développeurs francophones
Nous contacter - Hébergement - Participez - Copyright © 2000-2010 www.developpez.com - Legal informations.