Nuage à points etiquette au vol de la souris
Fermé
hortensette34
Messages postés
4
Date d'inscription
jeudi 22 octobre 2015
Statut
Membre
Dernière intervention
27 octobre 2015
-
23 oct. 2015 à 17:56
hortensette34 Messages postés 4 Date d'inscription jeudi 22 octobre 2015 Statut Membre Dernière intervention 27 octobre 2015 - 27 oct. 2015 à 08:21
hortensette34 Messages postés 4 Date d'inscription jeudi 22 octobre 2015 Statut Membre Dernière intervention 27 octobre 2015 - 27 oct. 2015 à 08:21
A voir également:
- Nuage de points excel avec étiquette
- Liste déroulante excel - Guide
- Créer une carte avec des points - Guide
- Si et excel - Guide
- Points de suite word - Guide
- Aller à la ligne excel - Guide
2 réponses
JvDo
Messages postés
1978
Date d'inscription
mercredi 27 juillet 2005
Statut
Membre
Dernière intervention
28 septembre 2020
858
24 oct. 2015 à 08:56
24 oct. 2015 à 08:56
Bonjour,
regarde ce sujet : https://forums.commentcamarche.net/forum/affich-31218345-modifier-infobulle-sur-nuage-de-points-excel-2003
il y a peut-être des choses à utiliser.
cordialement
regarde ce sujet : https://forums.commentcamarche.net/forum/affich-31218345-modifier-infobulle-sur-nuage-de-points-excel-2003
il y a peut-être des choses à utiliser.
cordialement
hortensette34
Messages postés
4
Date d'inscription
jeudi 22 octobre 2015
Statut
Membre
Dernière intervention
27 octobre 2015
27 oct. 2015 à 08:21
27 oct. 2015 à 08:21
Merci. J'ai utilisé des choses. Je n'arrive pas à contrôler deux graphiques de séries différentes avec la gestion des événements dans un module de classe et la spécification de mon objet dans un open workbook. Quelqu'un pourrait corriger cela ou m'indiquer où je fais fausse route. Merci bien. Je mets dans un module de classe, classe chart.
Option Explicit
Public WithEvents chart1 As Chart
'*** Utilisation des évènements *********
Private Sub chart1_MouseMove(ByVal Button As Long, ByVal Shift As Long, _
ByVal x As Long, ByVal y As Long)
Dim ElementID As Long
Dim Arg1 As Long, Arg2 As Long
On Error Resume Next
ChartObjects(1).GetChartElement x, y, ElementID, Arg1, Arg2
If Arg2 = 0 Then
ActiveChart.Shapes("Rectangle 1").Visible = msoFalse
Else
With ActiveChart.Shapes("Rectangle 1")
.Visible = msoTrue
.TextFrame.Characters.Text = _
Range("C1").Offset(Arg2, -2) & vbCrLf & _
Range("C1").Offset(Arg2, -1) & vbCrLf & _
Range("C1").Offset(Arg2, 0)
.Left = x - (x * 0.4)
.Top = y - (y * 0.4)
End With
End If
End Sub
Option Explicit
Public WithEvents chart2 As Chart
'*** Utilisation des évènements *********
Private Sub chart2_MouseMove(ByVal Button As Long, ByVal Shift As Long, _
ByVal x As Long, ByVal y As Long)
Dim ElementID As Long
Dim Arg1 As Long, Arg2 As Long
On Error Resume Next
ChartObjects(2).GetChartElement x, y, ElementID, Arg1, Arg2
If Arg2 = 0 Then
ActiveChart.Shapes("Rectangle 1").Visible = msoFalse
Else
With ActiveChart.Shapes("Rectangle 1")
.Visible = msoTrue
.TextFrame.Characters.Text = _
Range("C1").Offset(Arg2, -2) & vbCrLf & _
Range("C1").Offset(Arg2, -1) & vbCrLf & _
Range("C1").Offset(Arg2, 0)
.Left = x - (x * 0.4)
.Top = y - (y * 0.4)
End With
End If
End Sub
Dans une autre module de classe Appli
Option Explicit
Public WithEvents XL As Excel.Application
Dim ClTabChart() As ClasseChart
'Permet d'intègrer les graphiques incorporés de la feuille active
Public Sub XL_SheetActivate(ByVal Feuille As Object)
Dim i As Integer
'Vérifie qu'il s'agit d'une feuille de calcul
If TypeOf Sheet3("Y.S Densité") Is Worksheet Then
'Vérifie s'il y a des graphiques dans la feuille
If Sheet3("Y.S Densité").ChartObjects.Count = 0 Then Exit Sub
'S'il y a des graphiques,
'boucle pour les intégrer dans le module de classe
For i = 1 To Sheet3("Y.S Densité").ChartObjects.Count
ReDim Preserve ClTabChart(i)
Set ClTabChart(i) = New ClasseChart
Set ClTabChart(i).Graph = Sheet3("Y.S Densité").ChartObjects(i).Chart
Next i
End If
End Sub
'Permet de vider la classe lors de la désactivation de la feuille
Private Sub XL_SheetDeactivate(ByVal Feuille As Object)
Dim j As Integer
On Error Resume Next
For j = 1 To UBound(ClTabChart)
Set ClTabChart(j).Graph = Nothing
Next
End Sub
Dans This workbook:
Option Explicit
Dim ClTabChart1 As ClasseChart
Dim ClTabChart2 As ClasseChart
Dim XlAppli As New ClasseAppli
Private Sub Workbook_Open()
Set XlAppli.XL = Excel.Application
Sheets("Y.S Densité").Activate
Set ClTabChart1 = New ClasseChart
Set ClTabChart2 = New ClasseChart
Set ClTabChart1.Graph = Worksheets("Y.S Densité").ChartObjects(1).Chart
Set ClTabChart2.Graph = Worksheets("Y.S Densité").ChartObjects(2).Chart
'désactive les intitulés et les valeurs
Application.ShowChartTipNames = False
Application.ShowChartTipValues = False
End Sub
Private Sub Workbook_BeforeClose(Cancel As Boolean)
'réactive les intitulés et les valeurs
Application.ShowChartTipNames = True
Application.ShowChartTipValues = True
End Sub
erreur de compilation attribut incorrect
Option Explicit
Public WithEvents chart1 As Chart
'*** Utilisation des évènements *********
Private Sub chart1_MouseMove(ByVal Button As Long, ByVal Shift As Long, _
ByVal x As Long, ByVal y As Long)
Dim ElementID As Long
Dim Arg1 As Long, Arg2 As Long
On Error Resume Next
ChartObjects(1).GetChartElement x, y, ElementID, Arg1, Arg2
If Arg2 = 0 Then
ActiveChart.Shapes("Rectangle 1").Visible = msoFalse
Else
With ActiveChart.Shapes("Rectangle 1")
.Visible = msoTrue
.TextFrame.Characters.Text = _
Range("C1").Offset(Arg2, -2) & vbCrLf & _
Range("C1").Offset(Arg2, -1) & vbCrLf & _
Range("C1").Offset(Arg2, 0)
.Left = x - (x * 0.4)
.Top = y - (y * 0.4)
End With
End If
End Sub
Option Explicit
Public WithEvents chart2 As Chart
'*** Utilisation des évènements *********
Private Sub chart2_MouseMove(ByVal Button As Long, ByVal Shift As Long, _
ByVal x As Long, ByVal y As Long)
Dim ElementID As Long
Dim Arg1 As Long, Arg2 As Long
On Error Resume Next
ChartObjects(2).GetChartElement x, y, ElementID, Arg1, Arg2
If Arg2 = 0 Then
ActiveChart.Shapes("Rectangle 1").Visible = msoFalse
Else
With ActiveChart.Shapes("Rectangle 1")
.Visible = msoTrue
.TextFrame.Characters.Text = _
Range("C1").Offset(Arg2, -2) & vbCrLf & _
Range("C1").Offset(Arg2, -1) & vbCrLf & _
Range("C1").Offset(Arg2, 0)
.Left = x - (x * 0.4)
.Top = y - (y * 0.4)
End With
End If
End Sub
Dans une autre module de classe Appli
Option Explicit
Public WithEvents XL As Excel.Application
Dim ClTabChart() As ClasseChart
'Permet d'intègrer les graphiques incorporés de la feuille active
Public Sub XL_SheetActivate(ByVal Feuille As Object)
Dim i As Integer
'Vérifie qu'il s'agit d'une feuille de calcul
If TypeOf Sheet3("Y.S Densité") Is Worksheet Then
'Vérifie s'il y a des graphiques dans la feuille
If Sheet3("Y.S Densité").ChartObjects.Count = 0 Then Exit Sub
'S'il y a des graphiques,
'boucle pour les intégrer dans le module de classe
For i = 1 To Sheet3("Y.S Densité").ChartObjects.Count
ReDim Preserve ClTabChart(i)
Set ClTabChart(i) = New ClasseChart
Set ClTabChart(i).Graph = Sheet3("Y.S Densité").ChartObjects(i).Chart
Next i
End If
End Sub
'Permet de vider la classe lors de la désactivation de la feuille
Private Sub XL_SheetDeactivate(ByVal Feuille As Object)
Dim j As Integer
On Error Resume Next
For j = 1 To UBound(ClTabChart)
Set ClTabChart(j).Graph = Nothing
Next
End Sub
Dans This workbook:
Option Explicit
Dim ClTabChart1 As ClasseChart
Dim ClTabChart2 As ClasseChart
Dim XlAppli As New ClasseAppli
Private Sub Workbook_Open()
Set XlAppli.XL = Excel.Application
Sheets("Y.S Densité").Activate
Set ClTabChart1 = New ClasseChart
Set ClTabChart2 = New ClasseChart
Set ClTabChart1.Graph = Worksheets("Y.S Densité").ChartObjects(1).Chart
Set ClTabChart2.Graph = Worksheets("Y.S Densité").ChartObjects(2).Chart
'désactive les intitulés et les valeurs
Application.ShowChartTipNames = False
Application.ShowChartTipValues = False
End Sub
Private Sub Workbook_BeforeClose(Cancel As Boolean)
'réactive les intitulés et les valeurs
Application.ShowChartTipNames = True
Application.ShowChartTipValues = True
End Sub
erreur de compilation attribut incorrect