Aide sur VBA faire un Graphique

squinotix Messages postés 2 Statut Membre -  
squinotix Messages postés 2 Statut Membre -
Bonjour,

Je viens chercher l'aide des excellents programmeurs qui circulent sur ce site :)

Je vous explique j'ai pour projet de faire quelque chose qui me parait un peu fou :)

J'aimerai créer sur un classeur excel un bouton qui permet de faire (en cliquant dessus) un graphique d'une plage de données sélectionnée au préalable.

Et je vous avouerais que je suis complètement perdu.

Je n'arrive pas a récupérer les données de la plage sélectionnée, ce qui me bloque complètement pour essayer de faire le reste.

Est ce que c'est quelque chose de vraiment difficile ?

Je suis au bord de la dépression :p

Je remercie d'avance les chaleureuses personnes qui seront prêtes à me filer un coup de main :)

Cordialement,
Squinotix

<config>Windows 7 / Chrome 21.0.1180.83</config>

2 réponses

  1. Morgothal Messages postés 1350 Statut Membre 184
     
    Bonsoir,
    Lorsque tu enregistres une macro et que tu créé un graphique, dans le code généré il devrait y avoir quelque chose du genre :
    Source:=Range("Sheet1!$A$1:$B$10")
    Le tout étant de trouver dynamiquement ce Range...
    Avec une petite recherche j'ai trouvé cette macro qui peut te donner les infos qu'il te faut ?
    Sub zaza()
    With ActiveCell
    MsgBox Selection.Address(0, 0)
    MsgBox "ligDeb: " & .Row
    MsgBox "ligFin: " & .Row + Selection.Rows.Count - 1
    MsgBox "colDeb: " & .Column
    MsgBox "colFin: " & .Column + Selection.Columns.Count - 1
    End With
    End Sub

    Je reste à dispo si jamais je peux t'aider ;)

    1
  2. squinotix Messages postés 2 Statut Membre
     
    Très cher Clément :p

    Je tiens tout d'abord a te remercier pour la pierre que tu apportes a mon édifice :)

    Tout en postant, je me renseignait également de mon coté et j'ai réussi a trouver (je ne sais comment :)) une partie d'une solution a mon projet.

    Je te met en copy ce que j'ai commencé a faire.

    Sub Bouton1_Cliquer()

    Dim ch As ChartObject

    Set ch = Worksheets(1).ChartObjects.Add(100, 30, 400, 250)

    ch.Chart.SetSourceData Source:=Feuil1.Range(Selection.Address), PlotBy:=xlColumns
    ch.Chart.ChartWizard Gallery:=xl3DColumn, PlotBy:=xlRows, HasLegend:=True, CategoryTitle:="Semaines", ValueTitle:="MI", Title:=Range("C4").Value

    End Sub

    Ce code me donne donc bien un graphique avec les données que je souhaite, malheureusement, je n'arrive pas a configurer l'axe des abscisses. j'aimerais déterminer la plage qu'il faut afficher. au lieu des simples chiffres que me propose Excel tout seul :p

    Je te remercie une nouvelle fois de m'avoir apporter ton aide :p

    Cordialement,
    Squinotix
    0