VBA tester la valeur des cellules avant de lancer la macro

ludoxa

XLDnaute Nouveau
Bonjour à tous,

c'est mon premier post sur ce forum et je suis "débutant autodidacte" sur VBA excel. Jusqu'à présent j'ai réussi à me débrouiller en googlant par ci par là mais là je bloque... Je m'explique :

J'ai une macro qui balaie les feuilles de mon classeur et crée sur chacun d'eux un histogramme. Ce que je voudrais, c'est que ma macro vérifie d'abord que sur une partie de la plage de cellule en question les valeurs ne soient pas égales à 0 :
- si les 5 cellules de la feuille sont égales à 0, je ne génère pas un graphique et je passe à la feuille suivante
- si une des 5 cellules est supérieure à 0, je génère le graphique puis je passe à la feuille suivante

Voici la macro :

Dim feuille As Worksheet
Dim plage As Range


' DECLARATION tableau avec tous les noms des feuilles
Set feuilles = Sheets(Array("AIGUEPERSE", "ALBIGNY-SUR-SAONE", "ALIX", "AMPLEPUIS", "AMPUIS", "ANSE", "ARNAS", "AVEIZE", "AVENAS", "BAGNOLS", "BEAUJEU", "BELLEVILLE", "BESSENAY", "BLACÉ", "BOURG DE THIZY", "BRIGNAIS", "BRINDAS", "BRULLIOLES", "BRUSSIEU", "BULLY", "CAILLOUX-SUR-FONTAINES", "CHAMBOST-LONGESSAIGNE", "CHAMELET", "CHAMPAGNE-AU-MONT-D'OR", "CHAPONNAY", "CHAPONOST", "CHARBONNIERES-LES-BAINS", "CHARENTAY", "CHARLY", "CHARNAY", "CHASSAGNY", "CHASSELAY", "CHASSIEU", "CHATILLON D'AZERGUES - CHESSY", "CHAUSSAN", "CHAZAY D'AZERGUES", "CHEVINAY", "CHIROUBLES", "CLAVEISOLLES", "COGNY", "COISE", "COLLONGES-AU-MONT-D'OR", "COLOMBIER-SAUGNIEU", "COMMUNAY", "CONDRIEU", "CORBAS", "CORCELLES-EN-BEAUJOLAIS", "COURS-LA-VILLE", "COURZIEU", "COUZON-AU-MONT-D'OR", "CRAPONNE", "CUBLIZE", "CURIS-AU-MONT-D'OR", "DARDILLY", "DENICÉ", "DOMMARTIN", "DUERNE", "ECHALAS", "EVEUX", "FEYZIN", "FLEURIE", "FLEURIEU-SUR-SAONE", "FLEURIEUX-SUR-L'ARBRESLE", "FONTAINES-SUR-SAONE", "FRANCHEVILLE"))


For Each feuille In feuilles
' DECLARATION plage des données source
Set plage = feuille.Range("AB1:AB8")
Charts.Add
ActiveChart.ChartType = xlColumnClustered​

....Ensuite je fais tout un tas de mise en forme de mes graphs.

Dans l'exemple, la plage de cellules à tester est AB2:AB6.

Merci de votre aide.
 

ludoxa

XLDnaute Nouveau
Re : VBA tester la valeur des cellules avant de lancer la macro

Pardon, j'ai pas posté au bon endroit...

Merci pascalxld
 

Pierrot93

XLDnaute Barbatruc
Re : VBA tester la valeur des cellules avant de lancer la macro

Bonjour Ludoxa, Pascal

regarde le code ci-dessous si il peut t'aider :

Code:
Sub test()
Dim ws As Worksheet
For Each ws In Worksheets
    If WorksheetFunction.Sum(ws.Range("AB1:AB8")) > 0 Then
        Charts.Add
    End If
Next ws
End Sub
bon après midi
@+
 

ludoxa

XLDnaute Nouveau
Re : VBA tester la valeur des cellules avant de lancer la macro

Super ! Merci beaucoup Pierrot, ça marche impecc' !
Je reviendrai !!!
 

Créez un compte ou connectez vous pour répondre

Vous devez être membre afin de pouvoir répondre ici

Créer un compte

Créez un compte Excel Downloads. C'est simple!

Connexion

Vous avez déjà un compte? Connectez vous ici.

Haut Bas