essai à distance pour comprendre

Philippe63000

XLDnaute Junior
bonjour,

ce programme fonctionne sur mon pc (windows xp excel 2007) mais semble ne pas fonctionner sur celui pour lequel il est destiné (pc windows 7, excel 2010 - 64 bits).

Pourriez-vous me dire s'il vous pla$it, si ce programme tourne sur votre machine (avec excel2010 ).

Merci d'avance.

PHP:
Sub tracer_courbe() 

Dim TD(10, 2) 

For j = 1 To 2 
For i = 1 To 10 
TD(i, j) = i + j 
Next 
Next 

' définition du graphique comme objet 
'--------------------------------------------------- 
    Dim Graph As ChartObject 

   
     With sheets("Feuil1") 
      Dim tableau() As Variant, Tableau3() As Variant, tableau2() As Variant 
     

    ' redimentionnement  des tableaux utilisés 
'------------------------------------------------------ 
     ReDim Preserve tableau(UBound(TD)) 
     ReDim Preserve Tableau3(UBound(TD)) 
     ReDim Preserve tableau2(UBound(TD)) 
      
    'Création du tableau pour les Abscisses et ordonnées 
'----------------------------------------------------- 
   seuil = "2,7" 
    seuil = Replace(seuil, ".", ",") 
     seuil1 = Val(seuil) 
      
   For i = 1 To UBound(TD) 
    tableau(i) = i 
    tableau2(i) = TD(i, 2) 
    Tableau3(i) = seuil1 
    Next i 
     
      '----------------------------------------------------------- 
      Set Graph = .ChartObjects.Add(100, 80, 640, 300) 
      End With 
    

   With Graph.Chart 
      .ChartType = xlLine    ' type de graphique 

      .SeriesCollection.NewSeries 
             
               ' définition de l'habillage de la courbe 2 
                '--------------------------------------------------------------------------------- 
                .SeriesCollection(2).Border.Color = RGB(0, 100, 0) ' 255,0,0 = rouge '0,0,0=noire 
               .SeriesCollection(2).Border.Weight = xlThick 'ligne epaisse 
                 .SeriesCollection(2).Border.LineStyle = xlDashDotDot 'xlContinuous 'ligne continu 
                    
                  ' les données sont tirées des trois tableaux 
                  '--------------------------------------------------------------- 
                   .SeriesCollection(1).XValues = tableau() 'Abscisses 
                    .SeriesCollection(1).Values = tableau2() 'Ordonnées 
                   .SeriesCollection(2).Values = Tableau3() 'Ordonnées 

        '----------------------------------- 
       Graph.Chart.HasLegend = False 
   
    End With 
          
' affichage de l'étiquette sur la  droite à la suite du dernier point 
-------------------------------------------------------------- 
    With ActiveSheet.ChartObjects(1).Chart.SeriesCollection(2) 
        .ApplyDataLabels AutoText:=True, _ 
            LegendKey:=False, _ 
            ShowSeriesName:=False, _ 
            ShowCategoryName:=False, _ 
            ShowValue:=False, _ 
            ShowPercentage:=False, _ 
            ShowBubbleSize:=False             
      .Points(.Points.Count).ApplyDataLabels ShowValue:=True 
      .Points(.Points.Count).DataLabel.Text = "Seuil sélectionné" 
   

       End With 
End Sub
 

camarchepas

XLDnaute Barbatruc
Re : essai à distance pour comprendre

Bonjour Philippe,

Juste quelques modifs et voilà :

Code:
Sub tracer_courbe()

Dim TD(10, 2)

For j = 1 To 2
For i = 1 To 10
TD(i, j) = i + j
Next
Next

' définition du graphique comme objet
'---------------------------------------------------
    Dim Graph As ChartObject

    
     With Sheets("Feuil1")
      Dim tableau() As Variant, Tableau3() As Variant, tableau2() As Variant
      

    ' redimentionnement  des tableaux utilisés
'------------------------------------------------------
     ReDim Preserve tableau(UBound(TD))
     ReDim Preserve Tableau3(UBound(TD))
     ReDim Preserve tableau2(UBound(TD))
       
    'Création du tableau pour les Abscisses et ordonnées
'-----------------------------------------------------
   seuil = "2,7"
    seuil = Replace(seuil, ".", ",")
     seuil1 = Val(seuil)
       
   For i = 1 To UBound(TD)
    tableau(i) = i
    tableau2(i) = TD(i, 2)
    Tableau3(i) = seuil1
    Next i
      
      '-----------------------------------------------------------
      Set Graph = .ChartObjects.Add(100, 80, 640, 300)
      End With
     

   With Graph.Chart
      .ChartType = xlLine    ' type de graphique

      .SeriesCollection.NewSeries
      .SeriesCollection.NewSeries
        
      ' définition de l'habillage de la courbe 2
      '---------------------------------------------------------------------------------
       .SeriesCollection(2).Border.Color = RGB(0, 100, 0) ' 255,0,0 = rouge '0,0,0=noire
       .SeriesCollection(2).Border.Weight = xlThick 'ligne epaisse
       .SeriesCollection(2).Border.LineStyle = xlDashDotDot 'xlContinuous 'ligne continu
                     
      ' les données sont tirées des trois tableaux
      '---------------------------------------------------------------
       .SeriesCollection(1).XValues = tableau() 'Abscisses
       .SeriesCollection(1).Values = tableau2() 'Ordonnées
       .SeriesCollection(2).Values = Tableau3() 'Ordonnées

      '-----------------------------------
       .HasLegend = False


       With .SeriesCollection(2)
        .ApplyDataLabels AutoText:=True, _
            LegendKey:=False, _
            ShowSeriesName:=False, _
            ShowCategoryName:=False, _
            ShowValue:=False, _
            ShowPercentage:=False, _
            ShowBubbleSize:=False
        .Points(.Points.Count).ApplyDataLabels ShowValue:=True
        .Points(.Points.Count).DataLabel.Text = "Seuil sélectionné"
      End With
    End With
End Sub
 

Discussions similaires

Réponses
19
Affichages
2 K

Statistiques des forums

Discussions
312 216
Messages
2 086 351
Membres
103 195
dernier inscrit
martel.jg