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

VB.NET Discussion :

Pilotage Excel avec .NET


Sujet :

VB.NET

  1. #1
    Membre à l'essai
    Inscrit en
    Avril 2008
    Messages
    18
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 18
    Points : 11
    Points
    11
    Par défaut Pilotage Excel avec .NET
    Salut,

    Je souhaite piloter Excel avec du VB.NET.
    J'ai trouvé des infos ici et là sur la création d'un fichier Excel, le remplissage de cellules...

    Mais je suis bloqué sur un problème.
    J'ouvre un fichier Excel (toujours par .NET) et sur ce fichier Excel, j'ai des CheckBox.
    Je voudrais activer ces checkbox par le soft VB.NET.

    Si vous avez des exemples ou un site complet sur ce pilotage.

    Merci
    A+

  2. #2
    Membre éclairé Avatar de r.morel
    Homme Profil pro
    Dessinateur CAO
    Inscrit en
    Août 2014
    Messages
    336
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Dessinateur CAO
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Août 2014
    Messages : 336
    Points : 667
    Points
    667
    Merci de ainsi que d'utiliser les boutons et

  3. #3
    Membre à l'essai
    Inscrit en
    Avril 2008
    Messages
    18
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 18
    Points : 11
    Points
    11
    Par défaut
    Citation Envoyé par r.morel Voir le message
    Ce post ne va pas assez loin pour ce que je veux faire.

  4. #4
    Membre éclairé Avatar de r.morel
    Homme Profil pro
    Dessinateur CAO
    Inscrit en
    Août 2014
    Messages
    336
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Dessinateur CAO
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Août 2014
    Messages : 336
    Points : 667
    Points
    667
    Par défaut
    Citation Envoyé par bbor99 Voir le message
    Ce post ne va pas assez loin pour ce que je veux faire.
    Le problème est le même car tu ne nous dit pas de quelle façon tu pilotes Excel. Il est donc difficile de t'aider.
    Merci de ainsi que d'utiliser les boutons et

  5. #5
    Membre à l'essai
    Inscrit en
    Avril 2008
    Messages
    18
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 18
    Points : 11
    Points
    11
    Par défaut
    Sorry,

    Pour ouvrir Excel :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
            'Create an Excel session
            Try
                xlApp = CreateObject("Excel.Application")
                xlApp.Visible = bVisible
                startExcel = messMsg & "Start [Excel] OK"
            Catch ex As Exception
                startExcel = messErr & "[startExcel] " & ex.Message
                myReturnValue = -10
                MsgBox("Error Excel" & Chr(10) & ex.Message, MsgBoxStyle.Critical, "Error")
                Exit Function
            End Try
    Pour ouvrir un document existant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     'Open the document
            Try
                xlBook = xlApp.Workbooks.Open(outPath, [ReadOnly]:=False)
                openDocumentExcel = messMsg & "Open document [Excel]"
            Catch ex As Exception
                openDocumentExcel = messErr & "[openDocument] " & ex.Message
                myReturnValue = -10
                MsgBox("Error open Excel Document" & Chr(10) & ex.Message, MsgBoxStyle.Critical, "Error")
                Exit Function
            End Try
    je crois que cela s'appelle Automation.

  6. #6
    Membre éclairé Avatar de r.morel
    Homme Profil pro
    Dessinateur CAO
    Inscrit en
    Août 2014
    Messages
    336
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Dessinateur CAO
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Août 2014
    Messages : 336
    Points : 667
    Points
    667
    Par défaut
    Pour une meilleure lecture utilises les balises de code # à l'aide du bouton : Nom : Capture.PNG
Affichages : 491
Taille : 990 octets

    Comment sont créées tes checkbox dans ton formulaire ?
    Merci de ainsi que d'utiliser les boutons et

  7. #7
    Membre à l'essai
    Inscrit en
    Avril 2008
    Messages
    18
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 18
    Points : 11
    Points
    11
    Par défaut
    J'utilise un fichier déjà créé avec les checkbox déjà posés.
    Ils sont tous renommé.

  8. #8
    Membre éclairé Avatar de r.morel
    Homme Profil pro
    Dessinateur CAO
    Inscrit en
    Août 2014
    Messages
    336
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Dessinateur CAO
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Août 2014
    Messages : 336
    Points : 667
    Points
    667
    Par défaut
    Je voulais savoir s'il s'agissait bien de contrôle Active X.
    Regarde ceci : https://msdn.microsoft.com/en-us/lib....checkbox.aspx
    Merci de ainsi que d'utiliser les boutons et

  9. #9
    Membre à l'essai
    Inscrit en
    Avril 2008
    Messages
    18
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 18
    Points : 11
    Points
    11
    Par défaut
    Je n'avais pas compris la question.
    Ce sont bien des ActiveX

  10. #10
    Inactif  

    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2012
    Messages
    4 904
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2012
    Messages : 4 904
    Points : 10 168
    Points
    10 168
    Billets dans le blog
    36
    Par défaut
    Bonjour,

    À mon avis, cela n'a pas grand, même aucun, intérêt. Tu peux utiliser une Form VB.net avec ses propres contrôles pour agir sur Excel. Au final, c'est plus logique et probablement plus simple.

    Ceci dit, pour agir sur des contrôles sur un UserForm VBA; tu passer la collection Controls de l'UserForm.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    User_Form1.controls(checkbox1.value) = true
    Sans oublier de mettre en début de la ligne les objets .net appropriés

    Et puis, si tes checkboxes (ou n'importe quel autre Activex), sont sur une feuille, tu dois agir sur les OLEObjects de la feuille, au lieu des contrôles de L'UserForm. Et si tu as des contrôles sur plusieurs feuilles, tu dois prendre les OLEObjects de chaque feuille impliquée.

    Ou tu peux toujours mettre un indicateur quelconque dans la propriété Tag et vérifier les tags, toujours en bouclant sur l'ensemble des contrôles.

    Ou bien, tu mets une macro dans le WorkBook_Open de ton classeur Excel, et la macro peut cocher tes cases pour toi.

    Bref, si cela plante cela laisse présager une utilisation intensive du langage religieux
    À ma connaissance, le seul personnage qui a été diagnostiqué comme étant allergique au mot effort. c'est Gaston Lagaffe.

    Ô Saint Excel, Grand Dieu de l'Inutile.

    Excel n'a jamais été, n'est pas et ne sera jamais un SGBD, c'est pour cela que Excel s'appelle Excel et ne s'appelle pas Access junior.

  11. #11
    Membre à l'essai
    Inscrit en
    Avril 2008
    Messages
    18
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 18
    Points : 11
    Points
    11
    Par défaut
    Les checkbox ne sont pas sur un userform, mais sur la sheet Excel, c'est pour faire un fichier PDF. Donc la première solution ne fonctionne pas.

    Par contre j'ai utilisé la solution de créer une macro et de la lancer depuis mon soft .NET et c'est beaucoup plus simple.
    C'est la solution que j'ai retenue.

    Merci de ta patience.
    Bye

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Pilotage d'Excel avec VB.NET : problème paramètre xlDown
    Par Paenitentia dans le forum Windows Forms
    Réponses: 4
    Dernier message: 09/12/2009, 15h03
  2. pilotage excel avec VB 2008 express
    Par micheljoseph dans le forum VB.NET
    Réponses: 3
    Dernier message: 23/03/2009, 23h58
  3. Lancement EXCEL avec .Net
    Par atlassia dans le forum ASP.NET
    Réponses: 6
    Dernier message: 16/11/2007, 20h56
  4. [VB.NET]Pb avec le pilotage Excel
    Par Hakki dans le forum VB.NET
    Réponses: 5
    Dernier message: 01/09/2006, 15h02
  5. [VB.NET] font.colorindex pour excel avec .NET
    Par beegees dans le forum Windows Forms
    Réponses: 2
    Dernier message: 23/07/2006, 16h17

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