IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Windows Forms Discussion :

Camambert 3D en VB.NET ?


Sujet :

Windows Forms

  1. #41
    Membre à l'essai
    Inscrit en
    Novembre 2006
    Messages
    47
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 47
    Points : 22
    Points
    22
    Par défaut
    Pour les derniers codes, même erreur

    L'index de cette collection est en dehors des limites

  2. #42
    Membre régulier Avatar de Silvers
    Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2007
    Messages
    83
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2007
    Messages : 83
    Points : 89
    Points
    89
    Par défaut
    Ecoute je vien de faire un essay et malheureusement sa marche du feu de dieu

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
            Dim l_objexcel As Excel.Application
            Dim l_objworkbook As Excel.Workbook
            l_objexcel = New Excel.Application
            l_objworkbook = l_objexcel.Workbooks.Add
            l_objexcel.Visible = True
            Dim i As Integer = 0
     
            l_objexcel.Range("A1").Value = 1
            l_objexcel.Range("B1").Value = 2
            l_objexcel.Range("A2").Value = 1
            l_objexcel.Range("B2").Value = 2
            l_objexcel.Range("A3").Value = 1
            l_objexcel.Range("B3").Value = 2
     
            l_objexcel.Range("A1:B3").Select()
            l_objexcel.ActiveSheet.Shapes.AddChart.Select()
            l_objexcel.ActiveChart.ChartType = Excel.XlChartType.xl3DPieExploded
            l_objexcel.ActiveChart.ChartStyle = 26
            l_objexcel.ActiveChart.ClearToMatchStyle()
            l_objexcel.ActiveChart.ApplyLayout(2)
            l_objexcel.ActiveChart.SeriesCollection(1).Select()
            l_objexcel.ActiveSheet.ChartObjects(1).Activate()
            l_objexcel.ActiveChart.ChartTitle.Text = "MON TITRE"
            l_objexcel.ActiveChart.ApplyDataLabels(XlDataLabelsType.xlDataLabelsShowPercent)
            l_objexcel.Sheets(1).Shapes(1).ScaleWidth(0.5, 0, 0)
    regarde tu vera ton graphe ce reduire de moitier.
    Vient te battre si tu es un homme ! ! ! : http://Silver-Chacal.labrute.fr

  3. #43
    Membre régulier Avatar de Silvers
    Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2007
    Messages
    83
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2007
    Messages : 83
    Points : 89
    Points
    89
    Par défaut
    J AI TROUVER TON PROBLEME !!!

    Tu fait un ActiveSheet.chart.add !!!!!

    C'est pour sa !! ce n'est pas un shapes !!!

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    l_objexcel.ActiveSheet.Shapes.AddChart.Select()
    La mon graphe devien un shape !!!
    Vient te battre si tu es un homme ! ! ! : http://Silver-Chacal.labrute.fr

  4. #44
    Membre à l'essai
    Inscrit en
    Novembre 2006
    Messages
    47
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 47
    Points : 22
    Points
    22
    Par défaut
    Je viens d'essayer et j'ai tjrs une erreur au niveau de :
    l_objexcel.ActiveSheet.Chart.Add()

    L'erreur est : Le membre public 'Chart' du type 'worksheet' est introuvable

  5. #45
    Membre régulier Avatar de Silvers
    Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2007
    Messages
    83
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2007
    Messages : 83
    Points : 89
    Points
    89
    Par défaut
    IL ne faut pas mettre sa !

    il faut mettre : l_objexcel.ActiveSheet.Shapes.AddChart.Select()

    Tu selectionne la zone et tu créer non pas ton graphe mais un shape :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    l_objexcel.Range("A1:B3").Select()
            l_objexcel.ActiveSheet.Shapes.AddChart.Select()
    Vient te battre si tu es un homme ! ! ! : http://Silver-Chacal.labrute.fr

  6. #46
    Membre à l'essai
    Inscrit en
    Novembre 2006
    Messages
    47
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 47
    Points : 22
    Points
    22
    Par défaut
    Même erreur
    Le membre 'AddChart' de type 'Shapes' est introuvable

  7. #47
    Membre régulier Avatar de Silvers
    Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2007
    Messages
    83
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2007
    Messages : 83
    Points : 89
    Points
    89
    Par défaut
    Honnetement moi sa fonctionne très bien avec le code que je t'ai mis, mais la methode doit etre vraiment different avec Office 2003, essay des macros ou sinon install le 2007 !

    Je suis sincerement dsl de ne pas pouvoir plus t'aider

    sinon crée ton graphe comme avant et copie le dans un shapes.

    Ou sinon fai comme je t dit resize le dans un picture box.
    Vient te battre si tu es un homme ! ! ! : http://Silver-Chacal.labrute.fr

  8. #48
    Membre à l'essai
    Inscrit en
    Novembre 2006
    Messages
    47
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 47
    Points : 22
    Points
    22
    Par défaut
    Merci bcp " Silvers " , vous m'avez apporté une aide précieuse.

    Je pense que je vais installer office 2007 pour éviter tous ces pbs.

    Encore une fois

  9. #49
    Membre régulier Avatar de Silvers
    Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2007
    Messages
    83
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2007
    Messages : 83
    Points : 89
    Points
    89
    Par défaut
    Une fois 2007 installer nous pourrons reprendre cette discution, en attendant je regrette de ne pas avoir pu t aider comme je l aurai souhaiter.

    Chao, a bientot

    Vient te battre si tu es un homme ! ! ! : http://Silver-Chacal.labrute.fr

  10. #50
    Membre régulier Avatar de Silvers
    Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2007
    Messages
    83
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2007
    Messages : 83
    Points : 89
    Points
    89
    Par défaut
    Je vien d'essayer en 2003 avec vs 2005 et sa marche comme sa :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
                l_objexcel.Range("A1:B3").Select()
                l_objexcel.charts.add
                l_objexcel.ActiveChart.ChartType = Excel.XlChartType.xl3DPieExploded
                l_objexcel.ActiveChart.SeriesCollection(1).Select()
                l_objexcel.ActiveChart.Location(Where:=xlLocationAsObject, Name:="Feuil1")
                l_objexcel.ActiveSheet.Shapes(1).ScaleWidth(0.5,0,0)
                l_objexcel.ActiveSheet.Shapes(1).ScaleHeight(0.5,0,0)
    Vient te battre si tu es un homme ! ! ! : http://Silver-Chacal.labrute.fr

  11. #51
    Membre à l'essai
    Inscrit en
    Novembre 2006
    Messages
    47
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 47
    Points : 22
    Points
    22
    Par défaut Merci
    Bonjour ' Silvers '

    Je viens de lire votre solution, je l'ai essayé mais malheureusement J'ai tjs la même erreur.
    J'ai trouvé une solution qui n'est pas trés "optimale" (mais je vais l'adopté car j suis limitée par le temps), en fait j'ai redimentionné mon camambert.
    J'envoie comem le code "CHART"

    Je tiens vraiment à vous remercier du fond du coeur 'Silvers' pour avoir répondu à mes questions, vous m'avez aidé à résoudre un PB que je trouvais insolvable, encore une fois MERCI
    Fichiers attachés Fichiers attachés

  12. #52
    Membre régulier Avatar de Silvers
    Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2007
    Messages
    83
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2007
    Messages : 83
    Points : 89
    Points
    89
    Par défaut
    C'est tout à fait normal Je pense que tout le monde en aurai fait autant.

    A+
    Vient te battre si tu es un homme ! ! ! : http://Silver-Chacal.labrute.fr

  13. #53
    Membre régulier Avatar de Silvers
    Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2007
    Messages
    83
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2007
    Messages : 83
    Points : 89
    Points
    89
    Par défaut
    Bonjour Edouard,


    Pour fair sa c'est simple tu copie ton graphe:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    objexcel.ActiveChart.ChartArea.Copy
    et tu colle dans le PictureBox:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Dim objbmp As Object
                objbmp = Clipboard.GetImage
                PictureBox1.Image = objbmp
    Vient te battre si tu es un homme ! ! ! : http://Silver-Chacal.labrute.fr

  14. #54
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    31
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 31
    Points : 24
    Points
    24
    Par défaut
    Bonjour,

    J'avais le même problème c'est à dire que je cherchais comment créer des graphes avec VB.net. La solution que tu propose me pose problème silvers, car à la compilation j'ai des erreurs du type "Type Excel.Application is not defined".
    J'ai pourtant bien cocher Excel library dans projet -> References. J'ai Visual studio 2005 et Excel 2007.
    Peut être dois je faire un imports quelquechose?

    Merci de votre aide

  15. #55
    Membre régulier Avatar de Silvers
    Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2007
    Messages
    83
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2007
    Messages : 83
    Points : 89
    Points
    89
    Par défaut
    A tu mis dans ton code le import Excel ?
    Vient te battre si tu es un homme ! ! ! : http://Silver-Chacal.labrute.fr

  16. #56
    Membre régulier Avatar de Silvers
    Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2007
    Messages
    83
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2007
    Messages : 83
    Points : 89
    Points
    89
    Par défaut
    Enfait tu doit ajouter dans tes références Microsoft Excel 12 (pour 2007)
    et Microsoft.interop dans l'espace de nom importés
    Vient te battre si tu es un homme ! ! ! : http://Silver-Chacal.labrute.fr

  17. #57
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    31
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 31
    Points : 24
    Points
    24
    Par défaut
    Non je n'ai pas mis de import excel. Ou faut il que je le mette exactement ?
    De plus qu'est ce que Microsoft.interop? SQ'agit il d'une reference à ajouter?

    Sinon, ou pourrais trouver une documentation complète et précise de toutes les possibilités qu'offre Excel en VB?

    Merci

  18. #58
    Membre régulier Avatar de Silvers
    Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2007
    Messages
    83
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2007
    Messages : 83
    Points : 89
    Points
    89
    Par défaut
    il faut que tu ajout dans tes reférences Microsoft.office12
    Puis tu fait un Import Microsoft.interop dans ta class
    Vient te battre si tu es un homme ! ! ! : http://Silver-Chacal.labrute.fr

  19. #59
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    31
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 31
    Points : 24
    Points
    24
    Par défaut
    ok, je viens de rajouter le imports et cela fonctionne.

    Cependant il y a quelquechose que je voudrasi te demander : si je veux faire la meme chose mais avec un histogramme, ou bien une courbe classique abscisses ordonnées etc, quel type de chart faut-il que j'indique ? Tu utilise le nom " l_objexcel.ActiveChart.ChartType = Excel.XlChartType.xl3DPieExploded", mais ou trouver le nom des autres types de graphiques?

    De plus, pourrais tu me détailler chaque ligne de code de ce bloc s'il te plait, car je ne vois pas bien quelles valeurs et quelles cases Excel utilise pour tracer son graphique... Merci d'avance silvers !!

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
     For i = 1 To 5
                l_objexcel.Range("A" & i).Value = i
                l_objexcel.Range("B" & i).Value = i
            Next
     
            l_objexcel.Range("A1:B" & i - 1).Select()
            l_objexcel.ActiveSheet.Shapes.AddChart.Select()
            l_objexcel.ActiveChart.SetSourceData(Source:=l_objexcel.Range("A1:B" & i - 1))
            l_objexcel.ActiveChart.ChartType = Excel.XlChartType.xl3DPieExploded
            l_objexcel.ActiveChart.ChartStyle = 26
            l_objexcel.ActiveChart.ClearToMatchStyle()
            l_objexcel.ActiveChart.ApplyLayout(2)
            l_objexcel.ActiveChart.SeriesCollection(1).Select()
            l_objexcel.ActiveSheet.ChartObjects("Graphique 1").Activate()
            l_objexcel.ActiveChart.ChartTitle.Text = "MON TITRE"

  20. #60
    Membre régulier Avatar de Silvers
    Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2007
    Messages
    83
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2007
    Messages : 83
    Points : 89
    Points
    89
    Par défaut
    OK c'est partie

    Premierement :
    Pour avoir les types de graphe tu tape Apres avoir mis ce dernier "." il te proposera tout les types de graphe.

    Sinon va dans l'explorateur d'objet et tape dans rechercher : XlChartType

    Deuxiemement :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    For i = 1 To 5
                l_objexcel.Range("A" & i).Value = i
                l_objexcel.Range("B" & i).Value = i
            Next
    Cette boucle rempli les cellules de valeurs utile pour le graphe

    Traduction :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    De i = 1 Jusque 5
                la cellule("A" & i).Value = i
                la cellule("B" & i).Value = i
            Suivant
    Exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    De i = 1 Jusque 5
                la cellule("A" & 1).Value = 1 'soit la cellule A1 = 1
                la cellule("B" & 1).Value = 1 'soit la cellule B1 = 1
            Suivant
    Ensuite on selectionne la plage de données :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    l_objexcel.Range("A1:B" & i - 1).Select()
    Traduction :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Les cellules("A1:B4").Select()
    Puis on insere notre graphe par rapport à la selection:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    l_objexcel.ActiveSheet.Shapes.AddChart.Select()

    Tout le reste son les parametres du graphe, mais si tu t'arrete ici ton graphe aura une allure par defaut.

    J'ai été assez claire ? Le cas échéant n'ésite pas à demander.
    Vient te battre si tu es un homme ! ! ! : http://Silver-Chacal.labrute.fr

+ Répondre à la discussion
Cette discussion est résolue.
Page 3 sur 4 PremièrePremière 1234 DernièreDernière

Discussions similaires

  1. [Débat] Technologie .NET vs JAVA
    Par neo.51 dans le forum Débats sur le développement - Le Best Of
    Réponses: 1047
    Dernier message: 14/01/2019, 16h15
  2. [Débat] Expériences au sujet de .NET
    Par DevX dans le forum Débats sur le développement - Le Best Of
    Réponses: 46
    Dernier message: 25/05/2014, 11h16
  3. A ceux qui ont migré de VB6 vers VB.Net
    Par Fox dans le forum VB 6 et antérieur
    Réponses: 81
    Dernier message: 21/05/2008, 14h56
  4. utiliser les tag [MFC] [Win32] [.NET] [C++/CLI]
    Par hiko-seijuro dans le forum Visual C++
    Réponses: 8
    Dernier message: 08/06/2005, 15h57
  5. Fichier PDOXUSRS.NET
    Par yannick dans le forum Paradox
    Réponses: 5
    Dernier message: 05/04/2002, 09h45

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo