***************************************************
Fichiers en pièce jointe pour plus de compréhension au message 3
***************************************************
Bonjour,
OBJECTIF : Crée un graphique pour tout l'étage E01 et lorsque la colonne 1 indique FAUX.
J'essaie de créer un graphique puis d'ajouter des séries en fonction d'un SI mais je galère un peu.
Je vous présenter mon cas, dans un premier temps le code :
Le while me permet de balayer les lignes.
Ensuite j'effectue mon Mon 1er si, il test si la condition est bonne.
Le 2ème si, je l'oblige à rentrer pour la création du graphique sinon il crée une courbe supplémentaire.
Comment je dois définir mon 1er test au niveau du VRAI/FAUX ?
ca bloque aussi à la 2ème série souvent alors je ne sais pas si il aime bien que je lui envoie ceci avec b en tant que variable :ActiveChart.SeriesCollection(b)
Est-ce que vous avez une idée ?
Est-ce que c'est réalisable ? peut-etre que non
Sinon une autre petit question est-ce que quelqu'un connait le code pour un IF avec 2 conditions sous VBA ?
Désolé pour la présentation c'est difficile de repérer les différentes boucles .
MErci d'avance pour votre aide
johann
Fichiers en pièce jointe pour plus de compréhension au message 3
***************************************************
Bonjour,
OBJECTIF : Crée un graphique pour tout l'étage E01 et lorsque la colonne 1 indique FAUX.
J'essaie de créer un graphique puis d'ajouter des séries en fonction d'un SI mais je galère un peu.
Je vous présenter mon cas, dans un premier temps le code :
Sub G_tousUG_par_etage()
'
Dim a, Num_UG As Integer
Dim etage As String
Dim b As Integer
'Initialisation
a = 1 '1ère colonne
b = 2
Num_Ligne_Fin = 100 'nb app
Test = FAUX
nom_etage = "E01"
' Identifiant des premières et dernières lignes de données à afficher
z = 172 'dernière colonne pour les températures d'UG
While a < Num_Ligne_Fin 'balayage des lignes
UGm = Sheets("données_T").Cells(a + 1, 1).Value 'valeur à tester ici c'est un affichage VRAI ou FAUX que je récupère
If Test = UGm Then
If b = 2 Then 'dès qu'il a trouvé une valeur bonne je l'oblige à rentrer dans cette boucle pour créer le graphique
'*************************** 1ère courbe ********************
Charts.Add
ActiveChart.ApplyCustomType ChartType:=xlBuiltIn, TypeName:= _
"Courbes à deux axes"
'Température extérieur
ActiveChart.SeriesCollection.NewSeries
ActiveChart.SeriesCollection(1).XValues = "=Données_T!R2C6:R2C[" & z & "]" '*FIXE
ActiveChart.SeriesCollection(1).Values = "=T_ext!R3C6:R3C173" '*
ActiveChart.SeriesCollection(1).Name = "=""T ext""" '*
'Température de l'UG
ActiveChart.SeriesCollection.NewSeries
ActiveChart.SeriesCollection(b).Name = "=Données_T!R[" & a & "]C2"
ActiveChart.SeriesCollection(b).XValues = "=Données_T!R2C6:R2C[" & z & "]" '*FIXE
ActiveChart.SeriesCollection(b).Values = "=Données_T!R[" & a & "]C6:R[" & a & "]C[" & z & "]"
ActiveChart.Location Where:=xlLocationAsNewSheet
Num_UG = Sheets("données_T").Cells(a + 1, 2).Value
ActiveChart.Location Where:=xlLocationAsNewSheet, Name:=nom_etage
b = b + 1
Else
'*************************** courbe additionnel ********************
'Température de l'UG
ActiveChart.SeriesCollection.NewSeries
ActiveChart.SeriesCollection(b).Name = "=Données_T!R[" & a & "]C2"
ActiveChart.SeriesCollection(b).XValues = "=Données_T!R2C6:R2C[" & z & "]" '*FIXE
ActiveChart.SeriesCollection(b).Values = "=Données_T!R[" & a & "]C6:R[" & a & "]C[" & z & "]"
'********************************incrémentation*********************
b = b + 1
End If
Else
a = a + 1
End If
Wend
End Sub
Le while me permet de balayer les lignes.
Ensuite j'effectue mon Mon 1er si, il test si la condition est bonne.
Le 2ème si, je l'oblige à rentrer pour la création du graphique sinon il crée une courbe supplémentaire.
Comment je dois définir mon 1er test au niveau du VRAI/FAUX ?
ca bloque aussi à la 2ème série souvent alors je ne sais pas si il aime bien que je lui envoie ceci avec b en tant que variable :ActiveChart.SeriesCollection(b)
Est-ce que vous avez une idée ?
Est-ce que c'est réalisable ? peut-etre que non
Sinon une autre petit question est-ce que quelqu'un connait le code pour un IF avec 2 conditions sous VBA ?
Désolé pour la présentation c'est difficile de repérer les différentes boucles .
MErci d'avance pour votre aide
johann
Dernière édition: