sélection d'une plage de cellules pour création graphique

  • Initiateur de la discussion Initiateur de la discussion jasserin
  • 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 !

J

jasserin

Guest
Bonjour,

Je créé un graphique depuis la sélection d'une plage de cellules. Cette plage de cellule est définie depuis une cellule active d'un array (A9 puis J9...).

le programme bug au niveau de la sélection de la cellule active ou de la sélection des cellules avec maplage.

pouvez vous m'aider svp ?

merci beaucoup,

jasserin
Code:
Option Explicit

Dim titre As Variant
Dim MonGraphe As ChartObject
Dim maplage As Range
Dim selection As Variant
Dim horizontal As Integer
Dim vertical As Integer

Public Sub CreationGraphe1()
horizontal = 10
vertical = 50
Dim i As Byte


titre = ThisWorkbook.Worksheets("données mensuelles").Range("h7") & " - " & ThisWorkbook.Worksheets("données mensuelles").Range("a5") & ThisWorkbook.Worksheets("données mensuelles").Range("c8")
selection = Array("A9", "j9", "s9", "a97", "j97", "s97", "a185", "j185", "s185", "a273", "j273", "s273")

For i = 0 To UBound(selection, 1)

   ThisWorkbook.Worksheets("données mensuelles").Range(selection(i)).Select
   Set maplage = ThisWorkbook.Worksheets("données mensuelles").Range(ActiveCell.Offset(14, 0), ActiveCell.Offset(0, 6))
   maplage.Select
   Set MonGraphe = ThisWorkbook.Sheets("Obj. mensuels PT").ChartObjects.Add(horizontal, vertical, 500, 300) '(position x ds la feuille, position y dans la feuille, hauteur, largeur)
    MonGraphe.Chart.SetSourceData maplage

With MonGraphe.Chart
    .HasTitle = True
   
   With .ChartTitle
      .Characters.Text = titre.Text
   End With

End With

horizontal = horizontal + 500

Next i

End Sub
 
Re : sélection d'une plage de cellules pour création graphique

bonsoir,
erreur avec Titre.text ! c'est Titre as String seul !

Code:
Option Explicit
Dim Titre As String
Dim MonGraphe As ChartObject
Dim MaPlage As Range
Dim Selection As Variant
Dim Horizontal As Integer
Dim Vertical As Integer

Public Sub CreationGraphe1()
ThisWorkbook.Activate
Dim I As Integer
Horizontal = 10: Vertical = 50

With Worksheets("données mensuelles")
Titre = .Range("h7") & " - " & .Range("a5") & .Range("c8")
End With

Selection = Array("A9", "j9", "s9", "a97", "j97", "s97", "a185", "j185", "s185", "a273", "j273", "s273")
For I = 0 To UBound(Selection, 1)
   Worksheets("données mensuelles").Range(Selection(I)).Select
   Set MaPlage = Worksheets("données mensuelles").Range(ActiveCell.Offset(14, 0), ActiveCell.Offset(0, 6))
   MaPlage.Select
   Set MonGraphe = Sheets("Obj. mensuels PT").ChartObjects.Add(Horizontal, Vertical, 500, 300) '(position x ds la feuille, position y dans la feuille, hauteur, largeur)
   MonGraphe.Chart.SetSourceData MaPlage
   With MonGraphe.Chart
       .HasTitle = True
       .ChartTitle.Characters.Text = Titre
   End With
Horizontal = Horizontal + 500
Next I
End Sub
 
Re : sélection d'une plage de cellules pour création graphique

Bonjour, hello Roland

Une question surement bête : pourquoi définir tout ça en VBA alors qu'avec tes données sous forme de tableau excel et un graphique construit avec ce tableau, c'est AUTOMATIQUEMENT dynamique ?
 
- 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
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
0
Affichages
826
S
Réponses
4
Affichages
2 K
stage_ferrit
S
G
Réponses
0
Affichages
1 K
guiboubou233
G
F
Réponses
3
Affichages
2 K
FéFéClochette
F
S
Réponses
4
Affichages
1 K
Stephane Da Silva
S
E
Réponses
0
Affichages
2 K
EnnaEnna
E
D
Réponses
3
Affichages
2 K
demonsares
D
Retour