Bonjour,
Une fonction crée un graphique à ligne brisée (illustrant le prix des
actions) sur chacune des 4 pages d'un document Excel. Les données sont
dans les colonnes A et B.
Une autre fonction crée un graphique à colonnes (illustrant le volume
d'actions échangées, et nommé: grVolume) sur les 4 mêmes pages. Les
données sont dans les colonnes A et C.
Jusqu'ici, tout va bien.
À mesure que des données sont ajoutées, j'utilise une troisièm fonction
qui met à jour la source du premier graphique de chaque page. Encore
parfait.
Ensuite une quatrième fonction met à jour les données du graphique des
volumes de chaque page. MAIS impossible de mettre à jour ce graphique
sur la PREMIÈRE page; la source des données de ce graphique reste
toujours la série des données utilisée lors de la création du graphique.
Aucune erreur dans l'exécution de la fonction. La mise à jour s'effectue
sans problème sur les autres pages.
Pourquoi? Comment corriger cette situation?
Merci.
Alain
Voici la fonction. Le paramètre d'appel est transmis correctement.
Public Function RedefSourceVolume(NomPage As String) As Boolean
' redéfinit (redimensionne) la source de données du graphique volume
Dim gr As ChartObject
Dim MinVolume, MaxVolume As Double
Dim volRange As Range
Dim MySheet As Worksheet
Dim ok As Boolean
Dim Nb, i As Integer
Dim txt As String
On Error GoTo errFonction
ok = True
Set MySheet = Worksheets(NomPage)
MySheet.Activate
MySheet.Range("a1").Activate
'Pour éviter que le graphique reste activé
Nb = Application.WorksheetFunction.CountA(Range("a:a"))
Set gr = MySheet.ChartObjects("grVolume")
'définition des valeurs max et min de l'ordonnée
Set volRange = MySheet.Range("C2:C" & Nb)
MinVolume = Application.WorksheetFunction.Min(volRange)
MaxVolume = Application.WorksheetFunction.Max(volRange)
With gr.Chart.Axes(xlValue)
.MinimumScale = 0.9 * MinVolume
.MaximumScale = 1.1 * MaxVolume
End With 'With .Axes(xlValue)
'redéfinition des données source; Nb a la bonne valeur
'mais ça ne change pas la série du graphique de la page 1
Set volRange = MySheet.Range("A1:A" & Nb, "C1:C" & Nb)
gr.Activate
gr.Chart.ChartArea.Select
gr.Chart.SetSourceData Source:=volRange, PlotBy:=xlColumns
gr.Chart.Refresh
Sortie:
RedefSourceVolume = ok
Exit Function
errFonction:
MsgBox ("Erreur no: " & Err.Number & vbCrLf _
& Err.Description)
ok = False
GoTo Sortie
End Function 'RedefSourceVolume
Bonjour,
Une fonction crée un graphique à ligne brisée (illustrant le prix des
actions) sur chacune des 4 pages d'un document Excel. Les données sont
dans les colonnes A et B.
Une autre fonction crée un graphique à colonnes (illustrant le volume
d'actions échangées, et nommé: grVolume) sur les 4 mêmes pages. Les
données sont dans les colonnes A et C.
Jusqu'ici, tout va bien.
À mesure que des données sont ajoutées, j'utilise une troisièm fonction
qui met à jour la source du premier graphique de chaque page. Encore
parfait.
Ensuite une quatrième fonction met à jour les données du graphique des
volumes de chaque page. MAIS impossible de mettre à jour ce graphique
sur la PREMIÈRE page; la source des données de ce graphique reste
toujours la série des données utilisée lors de la création du graphique.
Aucune erreur dans l'exécution de la fonction. La mise à jour s'effectue
sans problème sur les autres pages.
Pourquoi? Comment corriger cette situation?
Merci.
Alain
Voici la fonction. Le paramètre d'appel est transmis correctement.
Public Function RedefSourceVolume(NomPage As String) As Boolean
' redéfinit (redimensionne) la source de données du graphique volume
Dim gr As ChartObject
Dim MinVolume, MaxVolume As Double
Dim volRange As Range
Dim MySheet As Worksheet
Dim ok As Boolean
Dim Nb, i As Integer
Dim txt As String
On Error GoTo errFonction
ok = True
Set MySheet = Worksheets(NomPage)
MySheet.Activate
MySheet.Range("a1").Activate
'Pour éviter que le graphique reste activé
Nb = Application.WorksheetFunction.CountA(Range("a:a"))
Set gr = MySheet.ChartObjects("grVolume")
'définition des valeurs max et min de l'ordonnée
Set volRange = MySheet.Range("C2:C" & Nb)
MinVolume = Application.WorksheetFunction.Min(volRange)
MaxVolume = Application.WorksheetFunction.Max(volRange)
With gr.Chart.Axes(xlValue)
.MinimumScale = 0.9 * MinVolume
.MaximumScale = 1.1 * MaxVolume
End With 'With .Axes(xlValue)
'redéfinition des données source; Nb a la bonne valeur
'mais ça ne change pas la série du graphique de la page 1
Set volRange = MySheet.Range("A1:A" & Nb, "C1:C" & Nb)
gr.Activate
gr.Chart.ChartArea.Select
gr.Chart.SetSourceData Source:=volRange, PlotBy:=xlColumns
gr.Chart.Refresh
Sortie:
RedefSourceVolume = ok
Exit Function
errFonction:
MsgBox ("Erreur no: " & Err.Number & vbCrLf _
& Err.Description)
ok = False
GoTo Sortie
End Function 'RedefSourceVolume
Bonjour,
Une fonction crée un graphique à ligne brisée (illustrant le prix des
actions) sur chacune des 4 pages d'un document Excel. Les données sont
dans les colonnes A et B.
Une autre fonction crée un graphique à colonnes (illustrant le volume
d'actions échangées, et nommé: grVolume) sur les 4 mêmes pages. Les
données sont dans les colonnes A et C.
Jusqu'ici, tout va bien.
À mesure que des données sont ajoutées, j'utilise une troisièm fonction
qui met à jour la source du premier graphique de chaque page. Encore
parfait.
Ensuite une quatrième fonction met à jour les données du graphique des
volumes de chaque page. MAIS impossible de mettre à jour ce graphique
sur la PREMIÈRE page; la source des données de ce graphique reste
toujours la série des données utilisée lors de la création du graphique.
Aucune erreur dans l'exécution de la fonction. La mise à jour s'effectue
sans problème sur les autres pages.
Pourquoi? Comment corriger cette situation?
Merci.
Alain
Voici la fonction. Le paramètre d'appel est transmis correctement.
Public Function RedefSourceVolume(NomPage As String) As Boolean
' redéfinit (redimensionne) la source de données du graphique volume
Dim gr As ChartObject
Dim MinVolume, MaxVolume As Double
Dim volRange As Range
Dim MySheet As Worksheet
Dim ok As Boolean
Dim Nb, i As Integer
Dim txt As String
On Error GoTo errFonction
ok = True
Set MySheet = Worksheets(NomPage)
MySheet.Activate
MySheet.Range("a1").Activate
'Pour éviter que le graphique reste activé
Nb = Application.WorksheetFunction.CountA(Range("a:a"))
Set gr = MySheet.ChartObjects("grVolume")
'définition des valeurs max et min de l'ordonnée
Set volRange = MySheet.Range("C2:C" & Nb)
MinVolume = Application.WorksheetFunction.Min(volRange)
MaxVolume = Application.WorksheetFunction.Max(volRange)
With gr.Chart.Axes(xlValue)
.MinimumScale = 0.9 * MinVolume
.MaximumScale = 1.1 * MaxVolume
End With 'With .Axes(xlValue)
'redéfinition des données source; Nb a la bonne valeur
'mais ça ne change pas la série du graphique de la page 1
Set volRange = MySheet.Range("A1:A" & Nb, "C1:C" & Nb)
gr.Activate
gr.Chart.ChartArea.Select
gr.Chart.SetSourceData Source:=volRange, PlotBy:=xlColumns
gr.Chart.Refresh
Sortie:
RedefSourceVolume = ok
Exit Function
errFonction:
MsgBox ("Erreur no: " & Err.Number & vbCrLf _
& Err.Description)
ok = False
GoTo Sortie
End Function 'RedefSourceVolume
Bonjour,
Si tu as besoin de mettre tes graphiques à jour à mesure que des données
sont ajoutées, pourquoi ne pas tout simplement définir tes séries de
données avec la fonction décaler ? De cette façon tout se fait
automatiquement, sans avoir à faire appel à une fonction. Tu trouveras
des exemples de cette utilisation de décaler sur la page graphiques
d'excelabo (graphique dynamique)
Misange migrateuse http://www.excelabo.net
mail : http://cerbermail.com/?k5Q8Dh2mta
le 01/04/2004 02:43:Bonjour,
Une fonction crée un graphique à ligne brisée (illustrant le prix des
actions) sur chacune des 4 pages d'un document Excel. Les données sont
dans les colonnes A et B.
Une autre fonction crée un graphique à colonnes (illustrant le volume
d'actions échangées, et nommé: grVolume) sur les 4 mêmes pages. Les
données sont dans les colonnes A et C.
Jusqu'ici, tout va bien.
À mesure que des données sont ajoutées, j'utilise une troisièm
fonction qui met à jour la source du premier graphique de chaque page.
Encore parfait.
Ensuite une quatrième fonction met à jour les données du graphique des
volumes de chaque page. MAIS impossible de mettre à jour ce graphique
sur la PREMIÈRE page; la source des données de ce graphique reste
toujours la série des données utilisée lors de la création du
graphique. Aucune erreur dans l'exécution de la fonction. La mise à
jour s'effectue sans problème sur les autres pages.
Pourquoi? Comment corriger cette situation?
Merci.
Alain
Voici la fonction. Le paramètre d'appel est transmis correctement.
Public Function RedefSourceVolume(NomPage As String) As Boolean
' redéfinit (redimensionne) la source de données du graphique volume
Dim gr As ChartObject
Dim MinVolume, MaxVolume As Double
Dim volRange As Range
Dim MySheet As Worksheet
Dim ok As Boolean
Dim Nb, i As Integer
Dim txt As String
On Error GoTo errFonction
ok = True
Set MySheet = Worksheets(NomPage)
MySheet.Activate
MySheet.Range("a1").Activate
'Pour éviter que le graphique reste activé
Nb = Application.WorksheetFunction.CountA(Range("a:a"))
Set gr = MySheet.ChartObjects("grVolume")
'définition des valeurs max et min de l'ordonnée Set
volRange = MySheet.Range("C2:C" & Nb)
MinVolume = Application.WorksheetFunction.Min(volRange)
MaxVolume = Application.WorksheetFunction.Max(volRange)
With gr.Chart.Axes(xlValue)
.MinimumScale = 0.9 * MinVolume
.MaximumScale = 1.1 * MaxVolume
End With 'With .Axes(xlValue)
'redéfinition des données source; Nb a la bonne valeur
'mais ça ne change pas la série du graphique de la page 1
Set volRange = MySheet.Range("A1:A" & Nb, "C1:C" & Nb)
gr.Activate
gr.Chart.ChartArea.Select
gr.Chart.SetSourceData Source:=volRange, PlotBy:=xlColumns
gr.Chart.Refresh
Sortie:
RedefSourceVolume = ok
Exit Function
errFonction:
MsgBox ("Erreur no: " & Err.Number & vbCrLf _
& Err.Description)
ok = False
GoTo Sortie
End Function 'RedefSourceVolume
Bonjour,
Si tu as besoin de mettre tes graphiques à jour à mesure que des données
sont ajoutées, pourquoi ne pas tout simplement définir tes séries de
données avec la fonction décaler ? De cette façon tout se fait
automatiquement, sans avoir à faire appel à une fonction. Tu trouveras
des exemples de cette utilisation de décaler sur la page graphiques
d'excelabo (graphique dynamique)
Misange migrateuse http://www.excelabo.net
mail : http://cerbermail.com/?k5Q8Dh2mta
le 01/04/2004 02:43:
Bonjour,
Une fonction crée un graphique à ligne brisée (illustrant le prix des
actions) sur chacune des 4 pages d'un document Excel. Les données sont
dans les colonnes A et B.
Une autre fonction crée un graphique à colonnes (illustrant le volume
d'actions échangées, et nommé: grVolume) sur les 4 mêmes pages. Les
données sont dans les colonnes A et C.
Jusqu'ici, tout va bien.
À mesure que des données sont ajoutées, j'utilise une troisièm
fonction qui met à jour la source du premier graphique de chaque page.
Encore parfait.
Ensuite une quatrième fonction met à jour les données du graphique des
volumes de chaque page. MAIS impossible de mettre à jour ce graphique
sur la PREMIÈRE page; la source des données de ce graphique reste
toujours la série des données utilisée lors de la création du
graphique. Aucune erreur dans l'exécution de la fonction. La mise à
jour s'effectue sans problème sur les autres pages.
Pourquoi? Comment corriger cette situation?
Merci.
Alain
Voici la fonction. Le paramètre d'appel est transmis correctement.
Public Function RedefSourceVolume(NomPage As String) As Boolean
' redéfinit (redimensionne) la source de données du graphique volume
Dim gr As ChartObject
Dim MinVolume, MaxVolume As Double
Dim volRange As Range
Dim MySheet As Worksheet
Dim ok As Boolean
Dim Nb, i As Integer
Dim txt As String
On Error GoTo errFonction
ok = True
Set MySheet = Worksheets(NomPage)
MySheet.Activate
MySheet.Range("a1").Activate
'Pour éviter que le graphique reste activé
Nb = Application.WorksheetFunction.CountA(Range("a:a"))
Set gr = MySheet.ChartObjects("grVolume")
'définition des valeurs max et min de l'ordonnée Set
volRange = MySheet.Range("C2:C" & Nb)
MinVolume = Application.WorksheetFunction.Min(volRange)
MaxVolume = Application.WorksheetFunction.Max(volRange)
With gr.Chart.Axes(xlValue)
.MinimumScale = 0.9 * MinVolume
.MaximumScale = 1.1 * MaxVolume
End With 'With .Axes(xlValue)
'redéfinition des données source; Nb a la bonne valeur
'mais ça ne change pas la série du graphique de la page 1
Set volRange = MySheet.Range("A1:A" & Nb, "C1:C" & Nb)
gr.Activate
gr.Chart.ChartArea.Select
gr.Chart.SetSourceData Source:=volRange, PlotBy:=xlColumns
gr.Chart.Refresh
Sortie:
RedefSourceVolume = ok
Exit Function
errFonction:
MsgBox ("Erreur no: " & Err.Number & vbCrLf _
& Err.Description)
ok = False
GoTo Sortie
End Function 'RedefSourceVolume
Bonjour,
Si tu as besoin de mettre tes graphiques à jour à mesure que des données
sont ajoutées, pourquoi ne pas tout simplement définir tes séries de
données avec la fonction décaler ? De cette façon tout se fait
automatiquement, sans avoir à faire appel à une fonction. Tu trouveras
des exemples de cette utilisation de décaler sur la page graphiques
d'excelabo (graphique dynamique)
Misange migrateuse http://www.excelabo.net
mail : http://cerbermail.com/?k5Q8Dh2mta
le 01/04/2004 02:43:Bonjour,
Une fonction crée un graphique à ligne brisée (illustrant le prix des
actions) sur chacune des 4 pages d'un document Excel. Les données sont
dans les colonnes A et B.
Une autre fonction crée un graphique à colonnes (illustrant le volume
d'actions échangées, et nommé: grVolume) sur les 4 mêmes pages. Les
données sont dans les colonnes A et C.
Jusqu'ici, tout va bien.
À mesure que des données sont ajoutées, j'utilise une troisièm
fonction qui met à jour la source du premier graphique de chaque page.
Encore parfait.
Ensuite une quatrième fonction met à jour les données du graphique des
volumes de chaque page. MAIS impossible de mettre à jour ce graphique
sur la PREMIÈRE page; la source des données de ce graphique reste
toujours la série des données utilisée lors de la création du
graphique. Aucune erreur dans l'exécution de la fonction. La mise à
jour s'effectue sans problème sur les autres pages.
Pourquoi? Comment corriger cette situation?
Merci.
Alain
Voici la fonction. Le paramètre d'appel est transmis correctement.
Public Function RedefSourceVolume(NomPage As String) As Boolean
' redéfinit (redimensionne) la source de données du graphique volume
Dim gr As ChartObject
Dim MinVolume, MaxVolume As Double
Dim volRange As Range
Dim MySheet As Worksheet
Dim ok As Boolean
Dim Nb, i As Integer
Dim txt As String
On Error GoTo errFonction
ok = True
Set MySheet = Worksheets(NomPage)
MySheet.Activate
MySheet.Range("a1").Activate
'Pour éviter que le graphique reste activé
Nb = Application.WorksheetFunction.CountA(Range("a:a"))
Set gr = MySheet.ChartObjects("grVolume")
'définition des valeurs max et min de l'ordonnée Set
volRange = MySheet.Range("C2:C" & Nb)
MinVolume = Application.WorksheetFunction.Min(volRange)
MaxVolume = Application.WorksheetFunction.Max(volRange)
With gr.Chart.Axes(xlValue)
.MinimumScale = 0.9 * MinVolume
.MaximumScale = 1.1 * MaxVolume
End With 'With .Axes(xlValue)
'redéfinition des données source; Nb a la bonne valeur
'mais ça ne change pas la série du graphique de la page 1
Set volRange = MySheet.Range("A1:A" & Nb, "C1:C" & Nb)
gr.Activate
gr.Chart.ChartArea.Select
gr.Chart.SetSourceData Source:=volRange, PlotBy:=xlColumns
gr.Chart.Refresh
Sortie:
RedefSourceVolume = ok
Exit Function
errFonction:
MsgBox ("Erreur no: " & Err.Number & vbCrLf _
& Err.Description)
ok = False
GoTo Sortie
End Function 'RedefSourceVolume
-----Message d'origine-----
Bonjour Misange Migrateuse,
Tu demandes: «pourquoi ne pas tout simplement définir
tes séries de
données avec la fonction décaler ?» Pourquoi? Simplement
parce que je ne
connaissais pas cette fonctionnalité. Merci de me
l'avoir indiquée.
Cela me pose 2 autres questions:
* On vient de me signaler, sur ce forum, que «VBA parle
anglais»; quel
est l'équivalent VBA de Décaler? (Offset?)
* la fonction que j'utilise doit mettre le graphique à
jour en temps
réel (elle est appelée aux 30 secondes, quand de
nouvelles données sont
ajoutées) et non pas seulement à l'ouverture du fichier.
Est-ce que la
«Mise à jour automatique de graphique» proposée sur
Excelabo permettra
que le graphique se tienne à jour continuellement en
temps réel?
Merci de ta suggestion, et des infos d'Excelabo.
Alain
Misange a écrit:Bonjour,
Si tu as besoin de mettre tes graphiques à jour à
mesure que des données
sont ajoutées, pourquoi ne pas tout simplement définir
tes séries de
données avec la fonction décaler ? De cette façon tout
se fait
automatiquement, sans avoir à faire appel à une
fonction. Tu trouveras
des exemples de cette utilisation de décaler sur la
page graphiques
d'excelabo (graphique dynamique)
Misange migrateuse http://www.excelabo.net
mail : http://cerbermail.com/?k5Q8Dh2mta
le 01/04/2004 02:43:Bonjour,
Une fonction crée un graphique à ligne brisée
(illustrant le prix des
actions) sur chacune des 4 pages d'un document Excel.
Les données sont
dans les colonnes A et B.
Une autre fonction crée un graphique à colonnes
(illustrant le volume
d'actions échangées, et nommé: grVolume) sur les 4
mêmes pages. Les
données sont dans les colonnes A et C.
Jusqu'ici, tout va bien.
À mesure que des données sont ajoutées, j'utilise une
troisièm
fonction qui met à jour la source du premier
graphique de chaque page.
Encore parfait.
Ensuite une quatrième fonction met à jour les données
du graphique des
volumes de chaque page. MAIS impossible de mettre à
jour ce graphique
sur la PREMIÈRE page; la source des données de ce
graphique reste
toujours la série des données utilisée lors de la
création du
graphique. Aucune erreur dans l'exécution de la
fonction. La mise à
jour s'effectue sans problème sur les autres pages.
Pourquoi? Comment corriger cette situation?
Merci.
Alain
Voici la fonction. Le paramètre d'appel est transmis
correctement.
Public Function RedefSourceVolume(NomPage As String)
As Boolean
' redéfinit (redimensionne) la source de données du
graphique volume
Dim gr As ChartObject
Dim MinVolume, MaxVolume As Double
Dim volRange As Range
Dim MySheet As Worksheet
Dim ok As Boolean
Dim Nb, i As Integer
Dim txt As String
On Error GoTo errFonction
ok = True
Set MySheet = Worksheets(NomPage)
MySheet.Activate
MySheet.Range("a1").Activate
'Pour éviter que le graphique reste activé
Nb = Application.WorksheetFunction.CountA(Range
("a:a"))
Set gr = MySheet.ChartObjects("grVolume")
'définition des valeurs max et min de
l'ordonnée Set
volRange = MySheet.Range("C2:C" & Nb)
MinVolume = Application.WorksheetFunction.Min
(volRange)
MaxVolume = Application.WorksheetFunction.Max
(volRange)
With gr.Chart.Axes(xlValue)
.MinimumScale = 0.9 * MinVolume
.MaximumScale = 1.1 * MaxVolume
End With 'With .Axes(xlValue)
'redéfinition des données source; Nb a la bonne
valeur
'mais ça ne change pas la série du graphique de
la page 1
Set volRange = MySheet.Range("A1:A" & Nb, "C1:C"
& Nb)
gr.Activate
gr.Chart.ChartArea.Select
gr.Chart.SetSourceData Source:=volRange,
PlotBy:=xlColumns
gr.Chart.Refresh
Sortie:
RedefSourceVolume = ok
Exit Function
errFonction:
MsgBox ("Erreur no: " & Err.Number & vbCrLf _
& Err.Description)
ok = False
GoTo Sortie
End Function 'RedefSourceVolume
.
-----Message d'origine-----
Bonjour Misange Migrateuse,
Tu demandes: «pourquoi ne pas tout simplement définir
tes séries de
données avec la fonction décaler ?» Pourquoi? Simplement
parce que je ne
connaissais pas cette fonctionnalité. Merci de me
l'avoir indiquée.
Cela me pose 2 autres questions:
* On vient de me signaler, sur ce forum, que «VBA parle
anglais»; quel
est l'équivalent VBA de Décaler? (Offset?)
* la fonction que j'utilise doit mettre le graphique à
jour en temps
réel (elle est appelée aux 30 secondes, quand de
nouvelles données sont
ajoutées) et non pas seulement à l'ouverture du fichier.
Est-ce que la
«Mise à jour automatique de graphique» proposée sur
Excelabo permettra
que le graphique se tienne à jour continuellement en
temps réel?
Merci de ta suggestion, et des infos d'Excelabo.
Alain
Misange a écrit:
Bonjour,
Si tu as besoin de mettre tes graphiques à jour à
mesure que des données
sont ajoutées, pourquoi ne pas tout simplement définir
tes séries de
données avec la fonction décaler ? De cette façon tout
se fait
automatiquement, sans avoir à faire appel à une
fonction. Tu trouveras
des exemples de cette utilisation de décaler sur la
page graphiques
d'excelabo (graphique dynamique)
Misange migrateuse http://www.excelabo.net
mail : http://cerbermail.com/?k5Q8Dh2mta
le 01/04/2004 02:43:
Bonjour,
Une fonction crée un graphique à ligne brisée
(illustrant le prix des
actions) sur chacune des 4 pages d'un document Excel.
Les données sont
dans les colonnes A et B.
Une autre fonction crée un graphique à colonnes
(illustrant le volume
d'actions échangées, et nommé: grVolume) sur les 4
mêmes pages. Les
données sont dans les colonnes A et C.
Jusqu'ici, tout va bien.
À mesure que des données sont ajoutées, j'utilise une
troisièm
fonction qui met à jour la source du premier
graphique de chaque page.
Encore parfait.
Ensuite une quatrième fonction met à jour les données
du graphique des
volumes de chaque page. MAIS impossible de mettre à
jour ce graphique
sur la PREMIÈRE page; la source des données de ce
graphique reste
toujours la série des données utilisée lors de la
création du
graphique. Aucune erreur dans l'exécution de la
fonction. La mise à
jour s'effectue sans problème sur les autres pages.
Pourquoi? Comment corriger cette situation?
Merci.
Alain
Voici la fonction. Le paramètre d'appel est transmis
correctement.
Public Function RedefSourceVolume(NomPage As String)
As Boolean
' redéfinit (redimensionne) la source de données du
graphique volume
Dim gr As ChartObject
Dim MinVolume, MaxVolume As Double
Dim volRange As Range
Dim MySheet As Worksheet
Dim ok As Boolean
Dim Nb, i As Integer
Dim txt As String
On Error GoTo errFonction
ok = True
Set MySheet = Worksheets(NomPage)
MySheet.Activate
MySheet.Range("a1").Activate
'Pour éviter que le graphique reste activé
Nb = Application.WorksheetFunction.CountA(Range
("a:a"))
Set gr = MySheet.ChartObjects("grVolume")
'définition des valeurs max et min de
l'ordonnée Set
volRange = MySheet.Range("C2:C" & Nb)
MinVolume = Application.WorksheetFunction.Min
(volRange)
MaxVolume = Application.WorksheetFunction.Max
(volRange)
With gr.Chart.Axes(xlValue)
.MinimumScale = 0.9 * MinVolume
.MaximumScale = 1.1 * MaxVolume
End With 'With .Axes(xlValue)
'redéfinition des données source; Nb a la bonne
valeur
'mais ça ne change pas la série du graphique de
la page 1
Set volRange = MySheet.Range("A1:A" & Nb, "C1:C"
& Nb)
gr.Activate
gr.Chart.ChartArea.Select
gr.Chart.SetSourceData Source:=volRange,
PlotBy:=xlColumns
gr.Chart.Refresh
Sortie:
RedefSourceVolume = ok
Exit Function
errFonction:
MsgBox ("Erreur no: " & Err.Number & vbCrLf _
& Err.Description)
ok = False
GoTo Sortie
End Function 'RedefSourceVolume
.
-----Message d'origine-----
Bonjour Misange Migrateuse,
Tu demandes: «pourquoi ne pas tout simplement définir
tes séries de
données avec la fonction décaler ?» Pourquoi? Simplement
parce que je ne
connaissais pas cette fonctionnalité. Merci de me
l'avoir indiquée.
Cela me pose 2 autres questions:
* On vient de me signaler, sur ce forum, que «VBA parle
anglais»; quel
est l'équivalent VBA de Décaler? (Offset?)
* la fonction que j'utilise doit mettre le graphique à
jour en temps
réel (elle est appelée aux 30 secondes, quand de
nouvelles données sont
ajoutées) et non pas seulement à l'ouverture du fichier.
Est-ce que la
«Mise à jour automatique de graphique» proposée sur
Excelabo permettra
que le graphique se tienne à jour continuellement en
temps réel?
Merci de ta suggestion, et des infos d'Excelabo.
Alain
Misange a écrit:Bonjour,
Si tu as besoin de mettre tes graphiques à jour à
mesure que des données
sont ajoutées, pourquoi ne pas tout simplement définir
tes séries de
données avec la fonction décaler ? De cette façon tout
se fait
automatiquement, sans avoir à faire appel à une
fonction. Tu trouveras
des exemples de cette utilisation de décaler sur la
page graphiques
d'excelabo (graphique dynamique)
Misange migrateuse http://www.excelabo.net
mail : http://cerbermail.com/?k5Q8Dh2mta
le 01/04/2004 02:43:Bonjour,
Une fonction crée un graphique à ligne brisée
(illustrant le prix des
actions) sur chacune des 4 pages d'un document Excel.
Les données sont
dans les colonnes A et B.
Une autre fonction crée un graphique à colonnes
(illustrant le volume
d'actions échangées, et nommé: grVolume) sur les 4
mêmes pages. Les
données sont dans les colonnes A et C.
Jusqu'ici, tout va bien.
À mesure que des données sont ajoutées, j'utilise une
troisièm
fonction qui met à jour la source du premier
graphique de chaque page.
Encore parfait.
Ensuite une quatrième fonction met à jour les données
du graphique des
volumes de chaque page. MAIS impossible de mettre à
jour ce graphique
sur la PREMIÈRE page; la source des données de ce
graphique reste
toujours la série des données utilisée lors de la
création du
graphique. Aucune erreur dans l'exécution de la
fonction. La mise à
jour s'effectue sans problème sur les autres pages.
Pourquoi? Comment corriger cette situation?
Merci.
Alain
Voici la fonction. Le paramètre d'appel est transmis
correctement.
Public Function RedefSourceVolume(NomPage As String)
As Boolean
' redéfinit (redimensionne) la source de données du
graphique volume
Dim gr As ChartObject
Dim MinVolume, MaxVolume As Double
Dim volRange As Range
Dim MySheet As Worksheet
Dim ok As Boolean
Dim Nb, i As Integer
Dim txt As String
On Error GoTo errFonction
ok = True
Set MySheet = Worksheets(NomPage)
MySheet.Activate
MySheet.Range("a1").Activate
'Pour éviter que le graphique reste activé
Nb = Application.WorksheetFunction.CountA(Range
("a:a"))
Set gr = MySheet.ChartObjects("grVolume")
'définition des valeurs max et min de
l'ordonnée Set
volRange = MySheet.Range("C2:C" & Nb)
MinVolume = Application.WorksheetFunction.Min
(volRange)
MaxVolume = Application.WorksheetFunction.Max
(volRange)
With gr.Chart.Axes(xlValue)
.MinimumScale = 0.9 * MinVolume
.MaximumScale = 1.1 * MaxVolume
End With 'With .Axes(xlValue)
'redéfinition des données source; Nb a la bonne
valeur
'mais ça ne change pas la série du graphique de
la page 1
Set volRange = MySheet.Range("A1:A" & Nb, "C1:C"
& Nb)
gr.Activate
gr.Chart.ChartArea.Select
gr.Chart.SetSourceData Source:=volRange,
PlotBy:=xlColumns
gr.Chart.Refresh
Sortie:
RedefSourceVolume = ok
Exit Function
errFonction:
MsgBox ("Erreur no: " & Err.Number & vbCrLf _
& Err.Description)
ok = False
GoTo Sortie
End Function 'RedefSourceVolume
.
Bonjour Misange Migrateuse,
Tu demandes: «pourquoi ne pas tout simplement définir tes séries de
données avec la fonction décaler ?» Pourquoi? Simplement parce que je ne
connaissais pas cette fonctionnalité. Merci de me l'avoir indiquée.
Cela me pose 2 autres questions:
* On vient de me signaler, sur ce forum, que «VBA parle anglais»; quel
est l'équivalent VBA de Décaler? (Offset?)
* la fonction que j'utilise doit mettre le graphique à jour en temps
réel (elle est appelée aux 30 secondes, quand de nouvelles données sont
ajoutées) et non pas seulement à l'ouverture du fichier. Est-ce que la
«Mise à jour automatique de graphique» proposée sur Excelabo permettra
que le graphique se tienne à jour continuellement en temps réel?
Merci de ta suggestion, et des infos d'Excelabo.
Alain
Misange a écrit:Bonjour,
Si tu as besoin de mettre tes graphiques à jour à mesure que des
données sont ajoutées, pourquoi ne pas tout simplement définir tes
séries de données avec la fonction décaler ? De cette façon tout se
fait automatiquement, sans avoir à faire appel à une fonction. Tu
trouveras des exemples de cette utilisation de décaler sur la page
graphiques d'excelabo (graphique dynamique)
Misange migrateuse http://www.excelabo.net
mail : http://cerbermail.com/?k5Q8Dh2mta
le 01/04/2004 02:43:Bonjour,
Une fonction crée un graphique à ligne brisée (illustrant le prix des
actions) sur chacune des 4 pages d'un document Excel. Les données
sont dans les colonnes A et B.
Une autre fonction crée un graphique à colonnes (illustrant le volume
d'actions échangées, et nommé: grVolume) sur les 4 mêmes pages. Les
données sont dans les colonnes A et C.
Jusqu'ici, tout va bien.
À mesure que des données sont ajoutées, j'utilise une troisièm
fonction qui met à jour la source du premier graphique de chaque
page. Encore parfait.
Ensuite une quatrième fonction met à jour les données du graphique
des volumes de chaque page. MAIS impossible de mettre à jour ce
graphique sur la PREMIÈRE page; la source des données de ce graphique
reste toujours la série des données utilisée lors de la création du
graphique. Aucune erreur dans l'exécution de la fonction. La mise à
jour s'effectue sans problème sur les autres pages.
Pourquoi? Comment corriger cette situation?
Merci.
Alain
Voici la fonction. Le paramètre d'appel est transmis correctement.
Public Function RedefSourceVolume(NomPage As String) As Boolean
' redéfinit (redimensionne) la source de données du graphique volume
Dim gr As ChartObject
Dim MinVolume, MaxVolume As Double
Dim volRange As Range
Dim MySheet As Worksheet
Dim ok As Boolean
Dim Nb, i As Integer
Dim txt As String
On Error GoTo errFonction
ok = True
Set MySheet = Worksheets(NomPage)
MySheet.Activate
MySheet.Range("a1").Activate
'Pour éviter que le graphique reste activé
Nb = Application.WorksheetFunction.CountA(Range("a:a"))
Set gr = MySheet.ChartObjects("grVolume")
'définition des valeurs max et min de l'ordonnée Set
volRange = MySheet.Range("C2:C" & Nb)
MinVolume = Application.WorksheetFunction.Min(volRange)
MaxVolume = Application.WorksheetFunction.Max(volRange)
With gr.Chart.Axes(xlValue)
.MinimumScale = 0.9 * MinVolume
.MaximumScale = 1.1 * MaxVolume
End With 'With .Axes(xlValue)
'redéfinition des données source; Nb a la bonne valeur
'mais ça ne change pas la série du graphique de la page 1
Set volRange = MySheet.Range("A1:A" & Nb, "C1:C" & Nb)
gr.Activate
gr.Chart.ChartArea.Select
gr.Chart.SetSourceData Source:=volRange, PlotBy:=xlColumns
gr.Chart.Refresh
Sortie:
RedefSourceVolume = ok
Exit Function
errFonction:
MsgBox ("Erreur no: " & Err.Number & vbCrLf _
& Err.Description)
ok = False
GoTo Sortie
End Function 'RedefSourceVolume
Bonjour Misange Migrateuse,
Tu demandes: «pourquoi ne pas tout simplement définir tes séries de
données avec la fonction décaler ?» Pourquoi? Simplement parce que je ne
connaissais pas cette fonctionnalité. Merci de me l'avoir indiquée.
Cela me pose 2 autres questions:
* On vient de me signaler, sur ce forum, que «VBA parle anglais»; quel
est l'équivalent VBA de Décaler? (Offset?)
* la fonction que j'utilise doit mettre le graphique à jour en temps
réel (elle est appelée aux 30 secondes, quand de nouvelles données sont
ajoutées) et non pas seulement à l'ouverture du fichier. Est-ce que la
«Mise à jour automatique de graphique» proposée sur Excelabo permettra
que le graphique se tienne à jour continuellement en temps réel?
Merci de ta suggestion, et des infos d'Excelabo.
Alain
Misange a écrit:
Bonjour,
Si tu as besoin de mettre tes graphiques à jour à mesure que des
données sont ajoutées, pourquoi ne pas tout simplement définir tes
séries de données avec la fonction décaler ? De cette façon tout se
fait automatiquement, sans avoir à faire appel à une fonction. Tu
trouveras des exemples de cette utilisation de décaler sur la page
graphiques d'excelabo (graphique dynamique)
Misange migrateuse http://www.excelabo.net
mail : http://cerbermail.com/?k5Q8Dh2mta
le 01/04/2004 02:43:
Bonjour,
Une fonction crée un graphique à ligne brisée (illustrant le prix des
actions) sur chacune des 4 pages d'un document Excel. Les données
sont dans les colonnes A et B.
Une autre fonction crée un graphique à colonnes (illustrant le volume
d'actions échangées, et nommé: grVolume) sur les 4 mêmes pages. Les
données sont dans les colonnes A et C.
Jusqu'ici, tout va bien.
À mesure que des données sont ajoutées, j'utilise une troisièm
fonction qui met à jour la source du premier graphique de chaque
page. Encore parfait.
Ensuite une quatrième fonction met à jour les données du graphique
des volumes de chaque page. MAIS impossible de mettre à jour ce
graphique sur la PREMIÈRE page; la source des données de ce graphique
reste toujours la série des données utilisée lors de la création du
graphique. Aucune erreur dans l'exécution de la fonction. La mise à
jour s'effectue sans problème sur les autres pages.
Pourquoi? Comment corriger cette situation?
Merci.
Alain
Voici la fonction. Le paramètre d'appel est transmis correctement.
Public Function RedefSourceVolume(NomPage As String) As Boolean
' redéfinit (redimensionne) la source de données du graphique volume
Dim gr As ChartObject
Dim MinVolume, MaxVolume As Double
Dim volRange As Range
Dim MySheet As Worksheet
Dim ok As Boolean
Dim Nb, i As Integer
Dim txt As String
On Error GoTo errFonction
ok = True
Set MySheet = Worksheets(NomPage)
MySheet.Activate
MySheet.Range("a1").Activate
'Pour éviter que le graphique reste activé
Nb = Application.WorksheetFunction.CountA(Range("a:a"))
Set gr = MySheet.ChartObjects("grVolume")
'définition des valeurs max et min de l'ordonnée Set
volRange = MySheet.Range("C2:C" & Nb)
MinVolume = Application.WorksheetFunction.Min(volRange)
MaxVolume = Application.WorksheetFunction.Max(volRange)
With gr.Chart.Axes(xlValue)
.MinimumScale = 0.9 * MinVolume
.MaximumScale = 1.1 * MaxVolume
End With 'With .Axes(xlValue)
'redéfinition des données source; Nb a la bonne valeur
'mais ça ne change pas la série du graphique de la page 1
Set volRange = MySheet.Range("A1:A" & Nb, "C1:C" & Nb)
gr.Activate
gr.Chart.ChartArea.Select
gr.Chart.SetSourceData Source:=volRange, PlotBy:=xlColumns
gr.Chart.Refresh
Sortie:
RedefSourceVolume = ok
Exit Function
errFonction:
MsgBox ("Erreur no: " & Err.Number & vbCrLf _
& Err.Description)
ok = False
GoTo Sortie
End Function 'RedefSourceVolume
Bonjour Misange Migrateuse,
Tu demandes: «pourquoi ne pas tout simplement définir tes séries de
données avec la fonction décaler ?» Pourquoi? Simplement parce que je ne
connaissais pas cette fonctionnalité. Merci de me l'avoir indiquée.
Cela me pose 2 autres questions:
* On vient de me signaler, sur ce forum, que «VBA parle anglais»; quel
est l'équivalent VBA de Décaler? (Offset?)
* la fonction que j'utilise doit mettre le graphique à jour en temps
réel (elle est appelée aux 30 secondes, quand de nouvelles données sont
ajoutées) et non pas seulement à l'ouverture du fichier. Est-ce que la
«Mise à jour automatique de graphique» proposée sur Excelabo permettra
que le graphique se tienne à jour continuellement en temps réel?
Merci de ta suggestion, et des infos d'Excelabo.
Alain
Misange a écrit:Bonjour,
Si tu as besoin de mettre tes graphiques à jour à mesure que des
données sont ajoutées, pourquoi ne pas tout simplement définir tes
séries de données avec la fonction décaler ? De cette façon tout se
fait automatiquement, sans avoir à faire appel à une fonction. Tu
trouveras des exemples de cette utilisation de décaler sur la page
graphiques d'excelabo (graphique dynamique)
Misange migrateuse http://www.excelabo.net
mail : http://cerbermail.com/?k5Q8Dh2mta
le 01/04/2004 02:43:Bonjour,
Une fonction crée un graphique à ligne brisée (illustrant le prix des
actions) sur chacune des 4 pages d'un document Excel. Les données
sont dans les colonnes A et B.
Une autre fonction crée un graphique à colonnes (illustrant le volume
d'actions échangées, et nommé: grVolume) sur les 4 mêmes pages. Les
données sont dans les colonnes A et C.
Jusqu'ici, tout va bien.
À mesure que des données sont ajoutées, j'utilise une troisièm
fonction qui met à jour la source du premier graphique de chaque
page. Encore parfait.
Ensuite une quatrième fonction met à jour les données du graphique
des volumes de chaque page. MAIS impossible de mettre à jour ce
graphique sur la PREMIÈRE page; la source des données de ce graphique
reste toujours la série des données utilisée lors de la création du
graphique. Aucune erreur dans l'exécution de la fonction. La mise à
jour s'effectue sans problème sur les autres pages.
Pourquoi? Comment corriger cette situation?
Merci.
Alain
Voici la fonction. Le paramètre d'appel est transmis correctement.
Public Function RedefSourceVolume(NomPage As String) As Boolean
' redéfinit (redimensionne) la source de données du graphique volume
Dim gr As ChartObject
Dim MinVolume, MaxVolume As Double
Dim volRange As Range
Dim MySheet As Worksheet
Dim ok As Boolean
Dim Nb, i As Integer
Dim txt As String
On Error GoTo errFonction
ok = True
Set MySheet = Worksheets(NomPage)
MySheet.Activate
MySheet.Range("a1").Activate
'Pour éviter que le graphique reste activé
Nb = Application.WorksheetFunction.CountA(Range("a:a"))
Set gr = MySheet.ChartObjects("grVolume")
'définition des valeurs max et min de l'ordonnée Set
volRange = MySheet.Range("C2:C" & Nb)
MinVolume = Application.WorksheetFunction.Min(volRange)
MaxVolume = Application.WorksheetFunction.Max(volRange)
With gr.Chart.Axes(xlValue)
.MinimumScale = 0.9 * MinVolume
.MaximumScale = 1.1 * MaxVolume
End With 'With .Axes(xlValue)
'redéfinition des données source; Nb a la bonne valeur
'mais ça ne change pas la série du graphique de la page 1
Set volRange = MySheet.Range("A1:A" & Nb, "C1:C" & Nb)
gr.Activate
gr.Chart.ChartArea.Select
gr.Chart.SetSourceData Source:=volRange, PlotBy:=xlColumns
gr.Chart.Refresh
Sortie:
RedefSourceVolume = ok
Exit Function
errFonction:
MsgBox ("Erreur no: " & Err.Number & vbCrLf _
& Err.Description)
ok = False
GoTo Sortie
End Function 'RedefSourceVolume
Bonsoir Alain,
Tu n'as absolument pas besoin de passer par une macro pour utliser
décaler, tout au contraire. Dès que tes données seront updatées (à la
mimine ou avec un programme externe, peu importe, automatiquement ton
graphique se met à jour en continu.
Tu peux choisir de prendre toutes tes données depuis le début (la plage
de référence utlisée pour cosntruire le graphique augmente) ou tu peux
ne représenter que les 10 12 24 ou 400 dernières valeurs si ça t'arrange
(si tu as de nouvelles données toutes les 30 secondes, à la fin de la
journée ça fait un graphique à rallonge !)
...
Bonsoir Alain,
Tu n'as absolument pas besoin de passer par une macro pour utliser
décaler, tout au contraire. Dès que tes données seront updatées (à la
mimine ou avec un programme externe, peu importe, automatiquement ton
graphique se met à jour en continu.
Tu peux choisir de prendre toutes tes données depuis le début (la plage
de référence utlisée pour cosntruire le graphique augmente) ou tu peux
ne représenter que les 10 12 24 ou 400 dernières valeurs si ça t'arrange
(si tu as de nouvelles données toutes les 30 secondes, à la fin de la
journée ça fait un graphique à rallonge !)
...
Bonsoir Alain,
Tu n'as absolument pas besoin de passer par une macro pour utliser
décaler, tout au contraire. Dès que tes données seront updatées (à la
mimine ou avec un programme externe, peu importe, automatiquement ton
graphique se met à jour en continu.
Tu peux choisir de prendre toutes tes données depuis le début (la plage
de référence utlisée pour cosntruire le graphique augmente) ou tu peux
ne représenter que les 10 12 24 ou 400 dernières valeurs si ça t'arrange
(si tu as de nouvelles données toutes les 30 secondes, à la fin de la
journée ça fait un graphique à rallonge !)
...
Bonjour Misange Migrateuse,
Merci de toute cette information détaillée.
Vérification: Declaler devient Offset en VBA? (Je construis les
graphique en VBA par un appel OLE)
Alain
Misange a écrit:Bonsoir Alain,
Tu n'as absolument pas besoin de passer par une macro pour utliser
décaler, tout au contraire. Dès que tes données seront updatées (à la
mimine ou avec un programme externe, peu importe, automatiquement ton
graphique se met à jour en continu.
Tu peux choisir de prendre toutes tes données depuis le début (la
plage de référence utlisée pour cosntruire le graphique augmente) ou
tu peux ne représenter que les 10 12 24 ou 400 dernières valeurs si ça
t'arrange (si tu as de nouvelles données toutes les 30 secondes, à la
fin de la journée ça fait un graphique à rallonge !)
...
Bonjour Misange Migrateuse,
Merci de toute cette information détaillée.
Vérification: Declaler devient Offset en VBA? (Je construis les
graphique en VBA par un appel OLE)
Alain
Misange a écrit:
Bonsoir Alain,
Tu n'as absolument pas besoin de passer par une macro pour utliser
décaler, tout au contraire. Dès que tes données seront updatées (à la
mimine ou avec un programme externe, peu importe, automatiquement ton
graphique se met à jour en continu.
Tu peux choisir de prendre toutes tes données depuis le début (la
plage de référence utlisée pour cosntruire le graphique augmente) ou
tu peux ne représenter que les 10 12 24 ou 400 dernières valeurs si ça
t'arrange (si tu as de nouvelles données toutes les 30 secondes, à la
fin de la journée ça fait un graphique à rallonge !)
...
Bonjour Misange Migrateuse,
Merci de toute cette information détaillée.
Vérification: Declaler devient Offset en VBA? (Je construis les
graphique en VBA par un appel OLE)
Alain
Misange a écrit:Bonsoir Alain,
Tu n'as absolument pas besoin de passer par une macro pour utliser
décaler, tout au contraire. Dès que tes données seront updatées (à la
mimine ou avec un programme externe, peu importe, automatiquement ton
graphique se met à jour en continu.
Tu peux choisir de prendre toutes tes données depuis le début (la
plage de référence utlisée pour cosntruire le graphique augmente) ou
tu peux ne représenter que les 10 12 24 ou 400 dernières valeurs si ça
t'arrange (si tu as de nouvelles données toutes les 30 secondes, à la
fin de la journée ça fait un graphique à rallonge !)
...
oui oui décaler = offset
Cela dit, pour éviter de tout reconstruire chaque fois, même si
aujourd'hui tu pars d'un classeur complètement vide au départ que tu
construis entièrement par requête OLE regarde si tu peux pas simplifier
le binz :
dans un classeur vide, tu mets des données bidon, tu mets en forme, tu
construis ton graphique, le fait zouli comme tu veux, nomme tes séries.
Ensuite tu effaces les données ayabnt servi à créer ce graphique bidon
(le graphique devient vide). Tu enregistres le tout comme modèle excel.
Avec ta requête, au moment de créer un classeur tu demandes que ce soit
à partir de ce modèle. Tu introduis simplement les données dans les
bonnes colonnes et roule ! Une fois le classeur créé, les requêtes
suivantes n'ont plus du tout besoin de recréer chaque fois les
graphiques, ce qui est facilement très long. Il suffit que les dites
requêtes ajoutent les nouvelles données sous les précédentes, c'est
tout. Mais j'ai surement pas toutes tes données en main.
Si t'es vraiment obligé de crééer à chaque requête (toutes les 30
secondes !) un nouveau classeur avec un nouveau graphique, alors decaler
ou offset ne te sert à rien.
Misange migrateuse http://www.excelabo.net
mail : http://cerbermail.com/?k5Q8Dh2mta
le 01/04/2004 20:57:Bonjour Misange Migrateuse,
Merci de toute cette information détaillée.
Vérification: Declaler devient Offset en VBA? (Je construis les
graphique en VBA par un appel OLE)
Alain
Misange a écrit:Bonsoir Alain,
Tu n'as absolument pas besoin de passer par une macro pour utliser
décaler, tout au contraire. Dès que tes données seront updatées (à la
mimine ou avec un programme externe, peu importe, automatiquement ton
graphique se met à jour en continu.
Tu peux choisir de prendre toutes tes données depuis le début (la
plage de référence utlisée pour cosntruire le graphique augmente) ou
tu peux ne représenter que les 10 12 24 ou 400 dernières valeurs si
ça t'arrange (si tu as de nouvelles données toutes les 30 secondes, à
la fin de la journée ça fait un graphique à rallonge !)
...
oui oui décaler = offset
Cela dit, pour éviter de tout reconstruire chaque fois, même si
aujourd'hui tu pars d'un classeur complètement vide au départ que tu
construis entièrement par requête OLE regarde si tu peux pas simplifier
le binz :
dans un classeur vide, tu mets des données bidon, tu mets en forme, tu
construis ton graphique, le fait zouli comme tu veux, nomme tes séries.
Ensuite tu effaces les données ayabnt servi à créer ce graphique bidon
(le graphique devient vide). Tu enregistres le tout comme modèle excel.
Avec ta requête, au moment de créer un classeur tu demandes que ce soit
à partir de ce modèle. Tu introduis simplement les données dans les
bonnes colonnes et roule ! Une fois le classeur créé, les requêtes
suivantes n'ont plus du tout besoin de recréer chaque fois les
graphiques, ce qui est facilement très long. Il suffit que les dites
requêtes ajoutent les nouvelles données sous les précédentes, c'est
tout. Mais j'ai surement pas toutes tes données en main.
Si t'es vraiment obligé de crééer à chaque requête (toutes les 30
secondes !) un nouveau classeur avec un nouveau graphique, alors decaler
ou offset ne te sert à rien.
Misange migrateuse http://www.excelabo.net
mail : http://cerbermail.com/?k5Q8Dh2mta
le 01/04/2004 20:57:
Bonjour Misange Migrateuse,
Merci de toute cette information détaillée.
Vérification: Declaler devient Offset en VBA? (Je construis les
graphique en VBA par un appel OLE)
Alain
Misange a écrit:
Bonsoir Alain,
Tu n'as absolument pas besoin de passer par une macro pour utliser
décaler, tout au contraire. Dès que tes données seront updatées (à la
mimine ou avec un programme externe, peu importe, automatiquement ton
graphique se met à jour en continu.
Tu peux choisir de prendre toutes tes données depuis le début (la
plage de référence utlisée pour cosntruire le graphique augmente) ou
tu peux ne représenter que les 10 12 24 ou 400 dernières valeurs si
ça t'arrange (si tu as de nouvelles données toutes les 30 secondes, à
la fin de la journée ça fait un graphique à rallonge !)
...
oui oui décaler = offset
Cela dit, pour éviter de tout reconstruire chaque fois, même si
aujourd'hui tu pars d'un classeur complètement vide au départ que tu
construis entièrement par requête OLE regarde si tu peux pas simplifier
le binz :
dans un classeur vide, tu mets des données bidon, tu mets en forme, tu
construis ton graphique, le fait zouli comme tu veux, nomme tes séries.
Ensuite tu effaces les données ayabnt servi à créer ce graphique bidon
(le graphique devient vide). Tu enregistres le tout comme modèle excel.
Avec ta requête, au moment de créer un classeur tu demandes que ce soit
à partir de ce modèle. Tu introduis simplement les données dans les
bonnes colonnes et roule ! Une fois le classeur créé, les requêtes
suivantes n'ont plus du tout besoin de recréer chaque fois les
graphiques, ce qui est facilement très long. Il suffit que les dites
requêtes ajoutent les nouvelles données sous les précédentes, c'est
tout. Mais j'ai surement pas toutes tes données en main.
Si t'es vraiment obligé de crééer à chaque requête (toutes les 30
secondes !) un nouveau classeur avec un nouveau graphique, alors decaler
ou offset ne te sert à rien.
Misange migrateuse http://www.excelabo.net
mail : http://cerbermail.com/?k5Q8Dh2mta
le 01/04/2004 20:57:Bonjour Misange Migrateuse,
Merci de toute cette information détaillée.
Vérification: Declaler devient Offset en VBA? (Je construis les
graphique en VBA par un appel OLE)
Alain
Misange a écrit:Bonsoir Alain,
Tu n'as absolument pas besoin de passer par une macro pour utliser
décaler, tout au contraire. Dès que tes données seront updatées (à la
mimine ou avec un programme externe, peu importe, automatiquement ton
graphique se met à jour en continu.
Tu peux choisir de prendre toutes tes données depuis le début (la
plage de référence utlisée pour cosntruire le graphique augmente) ou
tu peux ne représenter que les 10 12 24 ou 400 dernières valeurs si
ça t'arrange (si tu as de nouvelles données toutes les 30 secondes, à
la fin de la journée ça fait un graphique à rallonge !)
...
Bonjour Misange,
Je ne recrée pas le graphique, je mets à jour les séries de données
...et sur la page 1, impossible: les séries d'UN des graphiques ne se
mettent jamais à jour.
Merci d'offrir le suivi!
Alain
Misange a écrit:oui oui décaler = offset
Cela dit, pour éviter de tout reconstruire chaque fois, même si
aujourd'hui tu pars d'un classeur complètement vide au départ que tu
construis entièrement par requête OLE regarde si tu peux pas
simplifier le binz :
dans un classeur vide, tu mets des données bidon, tu mets en forme, tu
construis ton graphique, le fait zouli comme tu veux, nomme tes
séries. Ensuite tu effaces les données ayabnt servi à créer ce
graphique bidon (le graphique devient vide). Tu enregistres le tout
comme modèle excel. Avec ta requête, au moment de créer un classeur tu
demandes que ce soit à partir de ce modèle. Tu introduis simplement
les données dans les bonnes colonnes et roule ! Une fois le classeur
créé, les requêtes suivantes n'ont plus du tout besoin de recréer
chaque fois les graphiques, ce qui est facilement très long. Il suffit
que les dites requêtes ajoutent les nouvelles données sous les
précédentes, c'est tout. Mais j'ai surement pas toutes tes données en
main.
Si t'es vraiment obligé de crééer à chaque requête (toutes les 30
secondes !) un nouveau classeur avec un nouveau graphique, alors
decaler ou offset ne te sert à rien.
Misange migrateuse http://www.excelabo.net
mail : http://cerbermail.com/?k5Q8Dh2mta
le 01/04/2004 20:57:Bonjour Misange Migrateuse,
Merci de toute cette information détaillée.
Vérification: Declaler devient Offset en VBA? (Je construis les
graphique en VBA par un appel OLE)
Alain
Misange a écrit:Bonsoir Alain,
Tu n'as absolument pas besoin de passer par une macro pour utliser
décaler, tout au contraire. Dès que tes données seront updatées (à
la mimine ou avec un programme externe, peu importe, automatiquement
ton graphique se met à jour en continu.
Tu peux choisir de prendre toutes tes données depuis le début (la
plage de référence utlisée pour cosntruire le graphique augmente) ou
tu peux ne représenter que les 10 12 24 ou 400 dernières valeurs si
ça t'arrange (si tu as de nouvelles données toutes les 30 secondes,
à la fin de la journée ça fait un graphique à rallonge !)
...
Bonjour Misange,
Je ne recrée pas le graphique, je mets à jour les séries de données
...et sur la page 1, impossible: les séries d'UN des graphiques ne se
mettent jamais à jour.
Merci d'offrir le suivi!
Alain
Misange a écrit:
oui oui décaler = offset
Cela dit, pour éviter de tout reconstruire chaque fois, même si
aujourd'hui tu pars d'un classeur complètement vide au départ que tu
construis entièrement par requête OLE regarde si tu peux pas
simplifier le binz :
dans un classeur vide, tu mets des données bidon, tu mets en forme, tu
construis ton graphique, le fait zouli comme tu veux, nomme tes
séries. Ensuite tu effaces les données ayabnt servi à créer ce
graphique bidon (le graphique devient vide). Tu enregistres le tout
comme modèle excel. Avec ta requête, au moment de créer un classeur tu
demandes que ce soit à partir de ce modèle. Tu introduis simplement
les données dans les bonnes colonnes et roule ! Une fois le classeur
créé, les requêtes suivantes n'ont plus du tout besoin de recréer
chaque fois les graphiques, ce qui est facilement très long. Il suffit
que les dites requêtes ajoutent les nouvelles données sous les
précédentes, c'est tout. Mais j'ai surement pas toutes tes données en
main.
Si t'es vraiment obligé de crééer à chaque requête (toutes les 30
secondes !) un nouveau classeur avec un nouveau graphique, alors
decaler ou offset ne te sert à rien.
Misange migrateuse http://www.excelabo.net
mail : http://cerbermail.com/?k5Q8Dh2mta
le 01/04/2004 20:57:
Bonjour Misange Migrateuse,
Merci de toute cette information détaillée.
Vérification: Declaler devient Offset en VBA? (Je construis les
graphique en VBA par un appel OLE)
Alain
Misange a écrit:
Bonsoir Alain,
Tu n'as absolument pas besoin de passer par une macro pour utliser
décaler, tout au contraire. Dès que tes données seront updatées (à
la mimine ou avec un programme externe, peu importe, automatiquement
ton graphique se met à jour en continu.
Tu peux choisir de prendre toutes tes données depuis le début (la
plage de référence utlisée pour cosntruire le graphique augmente) ou
tu peux ne représenter que les 10 12 24 ou 400 dernières valeurs si
ça t'arrange (si tu as de nouvelles données toutes les 30 secondes,
à la fin de la journée ça fait un graphique à rallonge !)
...
Bonjour Misange,
Je ne recrée pas le graphique, je mets à jour les séries de données
...et sur la page 1, impossible: les séries d'UN des graphiques ne se
mettent jamais à jour.
Merci d'offrir le suivi!
Alain
Misange a écrit:oui oui décaler = offset
Cela dit, pour éviter de tout reconstruire chaque fois, même si
aujourd'hui tu pars d'un classeur complètement vide au départ que tu
construis entièrement par requête OLE regarde si tu peux pas
simplifier le binz :
dans un classeur vide, tu mets des données bidon, tu mets en forme, tu
construis ton graphique, le fait zouli comme tu veux, nomme tes
séries. Ensuite tu effaces les données ayabnt servi à créer ce
graphique bidon (le graphique devient vide). Tu enregistres le tout
comme modèle excel. Avec ta requête, au moment de créer un classeur tu
demandes que ce soit à partir de ce modèle. Tu introduis simplement
les données dans les bonnes colonnes et roule ! Une fois le classeur
créé, les requêtes suivantes n'ont plus du tout besoin de recréer
chaque fois les graphiques, ce qui est facilement très long. Il suffit
que les dites requêtes ajoutent les nouvelles données sous les
précédentes, c'est tout. Mais j'ai surement pas toutes tes données en
main.
Si t'es vraiment obligé de crééer à chaque requête (toutes les 30
secondes !) un nouveau classeur avec un nouveau graphique, alors
decaler ou offset ne te sert à rien.
Misange migrateuse http://www.excelabo.net
mail : http://cerbermail.com/?k5Q8Dh2mta
le 01/04/2004 20:57:Bonjour Misange Migrateuse,
Merci de toute cette information détaillée.
Vérification: Declaler devient Offset en VBA? (Je construis les
graphique en VBA par un appel OLE)
Alain
Misange a écrit:Bonsoir Alain,
Tu n'as absolument pas besoin de passer par une macro pour utliser
décaler, tout au contraire. Dès que tes données seront updatées (à
la mimine ou avec un programme externe, peu importe, automatiquement
ton graphique se met à jour en continu.
Tu peux choisir de prendre toutes tes données depuis le début (la
plage de référence utlisée pour cosntruire le graphique augmente) ou
tu peux ne représenter que les 10 12 24 ou 400 dernières valeurs si
ça t'arrange (si tu as de nouvelles données toutes les 30 secondes,
à la fin de la journée ça fait un graphique à rallonge !)
...