Pointer une ligne relative dans une macro

PièceJointe

XLDnaute Nouveau
Pointer les lignes "sous-totaux" dans une macro

Bonjour à tous...

de retour parmi vous, je crois que je suis en train de devenir addict...

Voilà je n'ai pas trouvé en parcourant vos forums comment, dans une macro, pointer une plage relative (est-ce seulement le nom ? Dans mon exemple il s'agit de sous totaux...)

Voici mon code :
Code:
Sub GRAPH()
    Charts.Add
    ActiveChart.ChartType = xl3DColumnClustered
    ActiveChart.SetSourceData Source:=Sheets("Général").Range("H166:L166"), _
        PlotBy:=xlColumns
    ActiveChart.SeriesCollection(1).Name = "=Général!R5C8"
    ActiveChart.SeriesCollection(2).Name = "=Général!R5C9"
    ActiveChart.SeriesCollection(3).Name = "=Général!R5C10"
    ActiveChart.SeriesCollection(4).Name = "=Général!R5C11"
    ActiveChart.SeriesCollection(5).Name = "=Général!R5C12"
    ActiveChart.Location Where:=xlLocationAsNewSheet, Name:="Graphiques"
    With ActiveChart
        .HasTitle = True
        .ChartTitle.Characters.Text = "Répartion de l'offre de formation par domaines"
        .Axes(xlCategory).HasTitle = True
        .Axes(xlCategory).AxisTitle.Characters.Text = "Domaine"
        .Axes(xlSeries).HasTitle = False
        .Axes(xlValue).HasTitle = True
        .Axes(xlValue).AxisTitle.Characters.Text = "Nombre"
    End With
End Sub

Comment faire en sorte que "Range("H166:L166")" prenne une valeur relative ? En gros sil des données sont insérées ma ligne de réfernce n'est plus la 166...

Et y a t'il moyen de faire en sorte qu'il me sorte un graph pour tous mes sous totaux et pas seulement ceux de la ligne 166 colonnes H à F ?


Merci d'avance pour vos conseils.
 
Dernière édition:

pierrejean

XLDnaute Barbatruc
Re : Pointer une ligne relative dans une macro

Re

Dans la feuille Général en colonne A et sur les lignes (sous-total ), il y a bien les noms des Etablissements (et tous differents) ,sauf pour le total general ou la cellule est vide ?
Y a-t-il un graph au moins ?
 

PièceJointe

XLDnaute Nouveau
Re : Pointer une ligne relative dans une macro

Alors oui il y a un graph qui sort... mais un seul... et les noms d'établissement ne sont en colonne A que dans l'exemple "allégé" donné au départ... je joins la grille complète si ça a de l'importance... l'établissement est en F.
 

Pièces jointes

  • exemple bandeau colonne.xls
    16.5 KB · Affichages: 48

pierrejean

XLDnaute Barbatruc
Re : Pointer une ligne relative dans une macro

Re

Dans ce cas:

Code:
Sub GRAPH()
'
' GRAPH Macro
' Macro enregistrée le 14/10/2008 par utiliseur
num = 1
For n = 1 To Range("C65536").End(xlUp).Row
 If InStr(Sheets("Général").Range("C" & n).FormulaLocal, "SOUS.TOTAL") <> 0 Then
ligne = n
    Charts.Add
    ActiveChart.ChartType = xl3DColumnClustered
    ActiveChart.SetSourceData Source:=Sheets("Général").Range("H" & ligne & ":L" & ligne), PlotBy:=xlColumns
 [COLOR=blue]If Sheets("Général").Range("F" & n) = "" Then[/COLOR]
[COLOR=blue]   nom = "Total General"[/COLOR]
[COLOR=blue]Else[/COLOR]
[COLOR=blue]   nom = Sheets("Général").Range("F" & n)[/COLOR]
[COLOR=blue]End If[/COLOR]
    ActiveChart.Location Where:=xlLocationAsNewSheet, Name:=[COLOR=blue]nom[/COLOR]
num = num + 1
    With ActiveChart
        .HasTitle = True
        .ChartTitle.Characters.Text = "Répartion de l'offre de formation par domaines"
        .Axes(xlCategory).HasTitle = True
        .Axes(xlCategory).AxisTitle.Characters.Text = "Domaine"
        .Axes(xlSeries).HasTitle = False
        .Axes(xlValue).HasTitle = True
        .Axes(xlValue).AxisTitle.Characters.Text = "Nombre"
    End With
 End If
 
Next n
End Sub

Note: Si cela ne convient pas
ajoute quelques lignes (sans données confidentielles)
il est tout de même plus pratique de tester sur fichier !!
 
Dernière édition:

pierrejean

XLDnaute Barbatruc
Re : Pointer une ligne relative dans une macro

Re

Chez moi ceci fonctionne
J'ais modifié pour ne pas avoir de Graphique relatif a la ligne 7
Code:
For n = 8 To Sheets("Général").Range("C65536").End(xlUp).Row

Veiller a ne pas laisser la colonne F vide en face des Sous-totaux en colonne C et avoir une denomination differente a chaque fois
 

Pièces jointes

  • TEST Pierre Jean.zip
    17.5 KB · Affichages: 21

Statistiques des forums

Discussions
312 495
Messages
2 088 964
Membres
103 992
dernier inscrit
Christine 974