Pert d'une variable dans module
Résolu
julien
-
Pierre1310 Messages postés 8564 Date d'inscription Statut Membre Dernière intervention -
Pierre1310 Messages postés 8564 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
J'ai consulté pleins de sujets qui me parle de déclarer en public et patati et patata mais j'ai tout essayé et sois je suis bêbête sois il n'y a pas la solution a ma problématique , qui je suis sûr est simple.
Voila , j'ai un code avec 24 fonction if succésives ( j'en met que 4 en exemple) et à la sortie de ces condition je voudrais appeler une variable qui est contenu dans ces fonctions ..
PROBLEME : la variable est vide !!! PK ??
Code :
'Ce programme permet de fussionner deux graphique
Public nom1 As String
Public nom2 As String Sub Fusionner_graph()
Dim graphiquef As String
Dim graphiquec As String
graphiquef = InputBox(prompt:="Indiquer le nom du paramètre à fusionner ")
graphiquec = InputBox(prompt:=" Indiquer le nom du paramètre à conserver ")
If graphiquef = TRA Then
graphiquef = "Graphique 1"
nom1 = Sheets("Sélection_données").Cells(1, 28) ' La variable nom prend la valeur de AB1 ( nom du paramètre)
Else
If graphiquef = NL Then
graphiquef = "Graphique 2"
nom1 = Sheets("Sélection_données").Range("AC1").Value ' La variable nom prend la valeur de AB1 ( nom du paramètre)
End If
End If
If graphiquec = TRA Then
graphiquec = "Graphique 1"
nom2 = Sheets("Sélection_données").Range("AM1").Value ' La variable nom prend la valeur de AB1 ( nom du paramètre)
Else
If graphiquec = NL Then
graphiquec = "Graphique 2"
nom2 = Sheets("Sélection_données").Range("AM1").Value ' La variable nom prend la valeur de AB1 ( nom du paramètre)
End If
End If
ActiveSheet.ChartObjects("Graphique 2").Activate
ActiveChart.Parent.Cut
ActiveSheet.ChartObjects("Graphique 1").Activate
ActiveChart.Paste
With ActiveChart ' Avec le graphique actif ( 1)
.FullSeriesCollection(2).Select 'Sélection de la deuxième série
.FullSeriesCollection(2).AxisGroup = 2
.SetElement (msoElementSecondaryValueAxisTitleAdjacentToAxis)
.SetElement (msoElementPrimaryValueAxisTitleAdjacentToAxis)
With ActiveChart.FullSeriesCollection(1)
.ApplyDataLabels ' Mise en place d'étiquettes
.DataLabels.Select ' Selection des étiquettes
Selection.Position = xlLabelPositionAbove ' Position des étiquettes au dessus du point
.DataLabels.Format.TextFrame2.TextRange.InsertChartField msoChartFieldRange, "=Sélection_données!O2:O400 ", 0 ' La valeur des etiquette = O2:0400 ( FMC)
.DataLabels.Select ' Selection des étiquettes
Selection.ShowRange = True '
Selection.ShowValue = False ' Enlever la valeur du point
.HasLeaderLines = False
.DataLabels.Select ' Selection des étiquettes
Selection.Orientation = 4 ' Inversion de l'angle d'orientation
Selection.Orientation = 45 ' Incliner le texte de 45 ° ( Ecriture oblique )
End With
With .Axes(xlValue, xlPrimary) ' Sur l'axe vertical
.HasTitle = True ' Mis en place d'un titre
.AxisTitle.Characters.Text = nom2 ' Le titre est le nom du paramètre
End With
With .Axes(xlValue, xlSecondary) ' Sur l'axe vertical
.HasTitle = True ' Mis en place d'un titre
.AxisTitle.Characters.Text = nom1 ' Le titre est le nom du paramètre
End With
End With
End Sub
J'ai consulté pleins de sujets qui me parle de déclarer en public et patati et patata mais j'ai tout essayé et sois je suis bêbête sois il n'y a pas la solution a ma problématique , qui je suis sûr est simple.
Voila , j'ai un code avec 24 fonction if succésives ( j'en met que 4 en exemple) et à la sortie de ces condition je voudrais appeler une variable qui est contenu dans ces fonctions ..
PROBLEME : la variable est vide !!! PK ??
Code :
'Ce programme permet de fussionner deux graphique
Public nom1 As String
Public nom2 As String Sub Fusionner_graph()
Dim graphiquef As String
Dim graphiquec As String
graphiquef = InputBox(prompt:="Indiquer le nom du paramètre à fusionner ")
graphiquec = InputBox(prompt:=" Indiquer le nom du paramètre à conserver ")
If graphiquef = TRA Then
graphiquef = "Graphique 1"
nom1 = Sheets("Sélection_données").Cells(1, 28) ' La variable nom prend la valeur de AB1 ( nom du paramètre)
Else
If graphiquef = NL Then
graphiquef = "Graphique 2"
nom1 = Sheets("Sélection_données").Range("AC1").Value ' La variable nom prend la valeur de AB1 ( nom du paramètre)
End If
End If
If graphiquec = TRA Then
graphiquec = "Graphique 1"
nom2 = Sheets("Sélection_données").Range("AM1").Value ' La variable nom prend la valeur de AB1 ( nom du paramètre)
Else
If graphiquec = NL Then
graphiquec = "Graphique 2"
nom2 = Sheets("Sélection_données").Range("AM1").Value ' La variable nom prend la valeur de AB1 ( nom du paramètre)
End If
End If
ActiveSheet.ChartObjects("Graphique 2").Activate
ActiveChart.Parent.Cut
ActiveSheet.ChartObjects("Graphique 1").Activate
ActiveChart.Paste
With ActiveChart ' Avec le graphique actif ( 1)
.FullSeriesCollection(2).Select 'Sélection de la deuxième série
.FullSeriesCollection(2).AxisGroup = 2
.SetElement (msoElementSecondaryValueAxisTitleAdjacentToAxis)
.SetElement (msoElementPrimaryValueAxisTitleAdjacentToAxis)
With ActiveChart.FullSeriesCollection(1)
.ApplyDataLabels ' Mise en place d'étiquettes
.DataLabels.Select ' Selection des étiquettes
Selection.Position = xlLabelPositionAbove ' Position des étiquettes au dessus du point
.DataLabels.Format.TextFrame2.TextRange.InsertChartField msoChartFieldRange, "=Sélection_données!O2:O400 ", 0 ' La valeur des etiquette = O2:0400 ( FMC)
.DataLabels.Select ' Selection des étiquettes
Selection.ShowRange = True '
Selection.ShowValue = False ' Enlever la valeur du point
.HasLeaderLines = False
.DataLabels.Select ' Selection des étiquettes
Selection.Orientation = 4 ' Inversion de l'angle d'orientation
Selection.Orientation = 45 ' Incliner le texte de 45 ° ( Ecriture oblique )
End With
With .Axes(xlValue, xlPrimary) ' Sur l'axe vertical
.HasTitle = True ' Mis en place d'un titre
.AxisTitle.Characters.Text = nom2 ' Le titre est le nom du paramètre
End With
With .Axes(xlValue, xlSecondary) ' Sur l'axe vertical
.HasTitle = True ' Mis en place d'un titre
.AxisTitle.Characters.Text = nom1 ' Le titre est le nom du paramètre
End With
End With
End Sub
A voir également:
- Pert d'une variable dans module
- Igfxtray module ✓ - Forum Virus
- Pas de module ci - Forum TV & Vidéo
- Manque cam module - Forum TNT / Satellite / Réception
- Homday x-pert mode d'emploi - Forum Enceintes / HiFi
- Persistence module - Forum logiciel systeme
Merci de ta réponse , mais cela ne change rien ..
Je pense que la variable à une valeur affectée seulement pendant la condition et qu'après le END IF elle est effacer ..