Construction d'un graphique

Résolu/Fermé
Kuartz Messages postés 850 Date d'inscription vendredi 13 février 2015 Statut Membre Dernière intervention 15 février 2019 - Modifié par Kuartz le 13/10/2015 à 14:30
Kuartz Messages postés 850 Date d'inscription vendredi 13 février 2015 Statut Membre Dernière intervention 15 février 2019 - 13 oct. 2015 à 16:45
Bonjour,

Une demande assez simple mais que je n'arrive à exécuter...

Je voudrais créer un graphique extrêmement simple.

J'ai un tableau excel avec en A les valeurs S1, S2, S3...

En face, en colonne B, les valeurs 10%, 20%, 30%...

Voici mon code :

Set objRange = Worksheets("Données").Range(Worksheets("Données").Cells(1, 1), Worksheets("Données").Cells(DL2, 2))
    Set objChart = ThisWorkbook.Charts.Add
    objChart.ChartType = xlXYScatterLines
    objChart.SetSourceData objRange, xlColumns


Le graphique a l'air de fonctionner mais en abscisse, j'ai 1, 1.5, 2. Pourquoi je ne retrouve pas mes S1, S2, S3??

Pourtant si on suit le raisonnement de https://excel.developpez.com/faq/?page=Graphique

Merci de votre aide.

Cordialement.
A voir également:

5 réponses

ccm81 Messages postés 10899 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 25 octobre 2024 2 422
13 oct. 2015 à 15:19
Bonjour

Je pense que ton problème vient du fait que tu as choisi le type nuage de poins qui nécessite des abscisse numériques

Cdlmnt
0
Kuartz Messages postés 850 Date d'inscription vendredi 13 février 2015 Statut Membre Dernière intervention 15 février 2019 61
13 oct. 2015 à 15:22
D'accord merci. Dans ce cas, vous avez une idée pour avoir un graphique de type courbe où mes abscisses pourraient fonctionner?
0
Kuartz Messages postés 850 Date d'inscription vendredi 13 février 2015 Statut Membre Dernière intervention 15 février 2019 61
13 oct. 2015 à 15:35
Je viens de tester avec un Right(...) pour n'avoir que les valeurs numériques et vous avez raison. Mais bon... Je n'ai franchement pas besoin des 0.5 entre les valeurs dans le graphique....
0
ccm81 Messages postés 10899 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 25 octobre 2024 2 422
Modifié par ccm81 le 13/10/2015 à 15:40
Pour un type courbe

Sub gr()
Dim objRange As Range
With Sheets("Feuil1")
Set objRange = .Range("A2:B4")
Charts.Add
ActiveChart.Location Where:=xlLocationAsObject, Name:="Feuil1"
ActiveChart.ChartType = xlLineMarkers
ActiveChart.SetSourceData Source:=objRange
End With
End Sub

Cdlmnt
0
Kuartz Messages postés 850 Date d'inscription vendredi 13 février 2015 Statut Membre Dernière intervention 15 février 2019 61
13 oct. 2015 à 15:59
Re,

Cette ligne :

ActiveChart.Location Where:=xlLocationAsObject, Name:="Feuil1"


Plante, j'ai mis le nom "Graphique".

"La méthode 'Location de l'objet_Chart' a échoué"
0
ccm81 Messages postés 10899 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 25 octobre 2024 2 422
Modifié par ccm81 le 13/10/2015 à 16:04
ActiveChart.Location Where:=xlLocationAsObject, Name:="Feuil1"

"Feuil1" est le nom de la feuille qui va recevoir le graphique
Un exemple
http://www.cjoint.com/c/EJnoditNDAt
0
Kuartz Messages postés 850 Date d'inscription vendredi 13 février 2015 Statut Membre Dernière intervention 15 février 2019 61
13 oct. 2015 à 16:16
Le code peut-il créer cette feuille également?
0
ccm81 Messages postés 10899 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 25 octobre 2024 2 422
13 oct. 2015 à 16:22
Oui

Sub gr()
Dim objRange As Range
Sheets.Add
ActiveSheet.Name = "Graphique"
With Sheets("Feuil1")
Set objRange = .Range("A2:B4")
Charts.Add
ActiveChart.Location Where:=xlLocationAsObject, Name:="Graphique"
ActiveChart.ChartType = xlLineMarkers
ActiveChart.SetSourceData Source:=objRange
End With
End Sub

Cdlmnt
0
Kuartz Messages postés 850 Date d'inscription vendredi 13 février 2015 Statut Membre Dernière intervention 15 février 2019 61
Modifié par Kuartz le 13/10/2015 à 16:28
Re,

Merci pour toutes ces informations !

Par contre les données ne sont pas du tout bonnes...

J'ai en A 37, 38, 39, 40.

J'ai en B 18%, 11%, 54%, 19%

Le graphique me donne :

En abscisse : 1, 2, 3, 4, 5

En ordonnée : 0, 5, 10, 15, 20, 25, 30, 35, 40

J'aurais voulu avoir en abscisse 37, 38, 39, 40

En ordonnée : 18% 11% 54% 19%


Cordialement.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
ccm81 Messages postés 10899 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 25 octobre 2024 2 422
13 oct. 2015 à 16:42
Du moment que tes abscisses sont numériques, choisis le type nuage de points (xlXYScatterLines) au lieu du type courbe (xlLineMarkers), tu auras une vraie échelle sur 'axe horizontal

http://www.cjoint.com/c/EJnoQcFTOQt

Là, je plie boutique

Cdlmnt
0
Kuartz Messages postés 850 Date d'inscription vendredi 13 février 2015 Statut Membre Dernière intervention 15 février 2019 61
13 oct. 2015 à 16:45
Merci de votre aide :)

Cordialement.
0