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

Macros et VBA Excel Discussion :

Remplir une cellule excel avec VB.net


Sujet :

Macros et VBA Excel

  1. #1
    Membre éclairé
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2019
    Messages
    249
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2019
    Messages : 249
    Par défaut Remplir une cellule excel avec VB.net
    Bonjour,

    Je débute en Visual Basic et voici mon problème, j'essaye de remplir une cellule excel avec VB.net sans que le fichier excel s'ouvre et je veux aussi faire l'inverse.

    par exemple quand je remplis ma Textbox1 la cellule A1 se remplit une fois que j'appuie sur le button1 ensuite mon dossier excel effectue les calculs puis la Textbox2 prend la valeur de la cellule B2.

    Pour l'instant avec mes recherches j'ai ce code

    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
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
     
            excel.Visible = False 'la fenêtre excel est visible 
     
            Workbook = excel.Workbooks.Add("C:\Users\BUC\Desktop\Nouveau dossier\test VBA.xlsx")
     
            Worksheet = Workbook.Worksheets("Feuil2") 'on ouvre une feuille dans le classeur excel
     
     
            Dim cells As String
            With Workbook.Worksheets("Feuil2")
     
                Workbook.Worksheets("Feuil2").Range("A1").Value = Me.TextBox1.Text
     
     
            End With
    ce qui ouvre une feuille excel mais pas la bonne et qui n'écrit pas dans la cellule A1 le texte qui est dans ma TextBox1

    Merci d'avance pour votre aide

  2. #2
    Membre éclairé Avatar de Vba14
    Homme Profil pro
    Retraité
    Inscrit en
    Janvier 2019
    Messages
    440
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Janvier 2019
    Messages : 440
    Par défaut
    Bonjour Sorbetframboise et bienvenue sur le forum,

    Tu trouveras une solution dans ce tutoriel de silkyroad que je remercie et salut au passage.

  3. #3
    Membre éclairé
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2019
    Messages
    249
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2019
    Messages : 249
    Par défaut
    Merci pour cette réponse et cette réactivité je vais voir ce tutoriel et vous tenir informé de mon avancement.

    (c'est ma première fois sur un Forum la réactivité m’impressionne) ^^

  4. #4
    Membre éclairé Avatar de Vba14
    Homme Profil pro
    Retraité
    Inscrit en
    Janvier 2019
    Messages
    440
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Janvier 2019
    Messages : 440
    Par défaut
    Je suis certain que tu trouveras toute l'aide nécessaire sur ce forum. Les différents intervenants sont d'une très grande compétence.
    Ils m'ont souvent sortis du pétrin.

  5. #5
    Membre éclairé
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2019
    Messages
    249
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2019
    Messages : 249
    Par défaut
    Sur mon Visual Basic je n'ai pas de fonction SET je ne comprend pas quand j'ecris set il me propose SetAttr est ce normal ?

  6. #6
    Membre éclairé
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2019
    Messages
    249
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2019
    Messages : 249
    Par défaut
    ";Extended Properties=Excel 8.0;"
    .Open
    End With

    'Extended Properties=Excel 8.0 est utilisé pour les versions d'Excel 97, 2000 et 2002

    et que doit-on faire avec excel 2016 ?
    désolé si les questions vous paraissent idiotes je n'avais utilisé visual basic avant la semaine dernière.

    merci pour la réponse.

  7. #7
    Membre éclairé Avatar de Vba14
    Homme Profil pro
    Retraité
    Inscrit en
    Janvier 2019
    Messages
    440
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Janvier 2019
    Messages : 440
    Par défaut
    Désolé d'avoir tardé à répondre, mais j'étais en soins médicaux.

    J'utilise Excel 2016 et je n'ai pas de problème avec SET... Je vais essayé de trouver un début de réponse à ta question.

  8. #8
    Expert confirmé
    Homme Profil pro
    aucune
    Inscrit en
    Avril 2016
    Messages
    7 563
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 84
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Avril 2016
    Messages : 7 563
    Par défaut
    Bonjour
    Je ne vois rien, dans le code montré, qui ne correspondrait pas à des instructions comprises par VBA/Excel (bien que des blocs With inutiles ... et inutilisés soient là)
    Il y a donc probablement des défaillances et ou imprécisions dans le code vb.net pour agir en automation.
    VB.Net fait l'objet d'un autre forum. Je t'invite à y poser ta question. Tu peux en attendant lire ceci :
    http://blogopale.blogspot.com/2010/0...vec-excel.html

  9. #9
    Membre éclairé
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2019
    Messages
    249
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2019
    Messages : 249
    Par défaut
    d'accord bon courage pour vos soins.

    je vous remercie pour votre aide je ne savais pas que VBA et VB.net etait différent je pense etre sur VB.net et que la fonction SET n'existe pas sur ce dernier...

    je vais regarder ce site merci pour l'aide précieuse que vous m'apporter.

  10. #10
    Inactif  

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

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

    Informations forums :
    Inscription : Janvier 2012
    Messages : 4 903
    Billets dans le blog
    36
    Par défaut
    Bonjour.

    'Extended Properties=Excel 8.0 est utilisé pour les versions d'Excel 97, 2000 et 2002

    et que doit-on faire avec excel 2016 ?
    À partir d'Excel 2007. c'est au minimum Excel 12.0 et le moteur ACE au lieu du moteur JET. Va voir là pour les chaînes de connexion

    Sur mon Visual Basic je n'ai pas de fonction SET je ne comprend pas quand j'ecris set il me propose SetAttr est ce normal ?
    Donc, tu utilises probablement VB.net. Si tu es dans un environnement qui utilise plusieurs versions d'Office; c'est un meilleur choix que VBA. Mais tu as (presque) besoin des Primary Interop Assemblies d'Office, correspondant à ta version d'Office. Si c'est juste pour ton Excel, chez-toi, VBA suffit comme le dit unparia

    Tu peux aussi essayer avec le SDK Open XML. mais c'est plus complexe.

    Tu peux aller fouiller dans cette page pour des exemples de manipulation d'Excel avec VB.net

  11. #11
    Membre éclairé
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2019
    Messages
    249
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2019
    Messages : 249
    Par défaut
    Oui je pense que j'utilise bien VB.net il y a t'il un moyen de le savoir?

    Je n'ai toujours pas réussi à réaliser ce dont je souhaite comment pouvoir incorporer les Primary Interop Assemblies dans Visual Basic?

    Merci beaucoup pour vos réponses petit a petit je fais mon chemin.

  12. #12
    Inactif  

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

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

    Informations forums :
    Inscription : Janvier 2012
    Messages : 4 903
    Billets dans le blog
    36
    Par défaut
    Bonjour,

    Pour utiliser VBA, tu dois d'abord ouvrir l'application Office (Excel Word PowerPoint etc) et lancer l'éditeur à partir de l'application. L'éditeur ressemble à cela:

    Nom : VBA.jpg
Affichages : 1405
Taille : 82,0 Ko

    Pour VB.net, c'est l'icône de VisualStudio, et l'exécutable du programme se nomme deven.exe. On peut jouer énormément avec les fenêtres, mais cela devrait ressembler à cela.

    Nom : vbnet.jpg
Affichages : 1507
Taille : 375,4 Ko


    Je n'ai toujours pas réussi à réaliser ce dont je souhaite comment pouvoir incorporer les Primary Interop Assemblies dans Visual Basic?
    Une fois qu'ils sont installés, tu devrais les trouver dans les références. Selon ta version de VisualStudio, ils sont soit directement dans les boîtes de dialogue; soit qu'il faut les retrouver en cliquant sur le bouton Parcourir…

    Ou au pire, depuis VS2010 ou VS2012, tu peux cocher la référence à Excel XX Object Reference Library dans les composants COM et Visual Studio devrait se débrouiller avec le reste.

    Nom : Références.jpg
Affichages : 1293
Taille : 201,4 Ko

  13. #13
    Membre éclairé Avatar de Vba14
    Homme Profil pro
    Retraité
    Inscrit en
    Janvier 2019
    Messages
    440
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Janvier 2019
    Messages : 440
    Par défaut
    Bonsoir,

    Voici un lien qui pourra te permettre d'avancer

    Par contre je ne comprends pas ce que tu veux ici :
    Je n'ai toujours pas réussi à réaliser ce dont je souhaite comment pouvoir incorporer les Primary Interop Assemblies dans Visual Basic?
    On peut trouver des procédures d'ajout ici :

  14. #14
    Membre éclairé
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2019
    Messages
    249
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2019
    Messages : 249
    Par défaut
    Moi ça ressemble àça donc + du VB net :

    Nom : VB.PNG
Affichages : 1318
Taille : 76,0 Ko

    Nom : Cavb.PNG
Affichages : 1298
Taille : 110,7 Ko

    Et le problème c'est que j'ai téléchargé les fichiers dll etc et malgré cela je ne trouve pas les référence et il ne me propose pas de parcourir mes documents

    Nom : Capture.PNG
Affichages : 1271
Taille : 35,0 Ko

    Y'a t-il une grosse différence entre visual studio et visual basic ?


    Je suis désolé d'autant galérer.

  15. #15
    Membre éclairé Avatar de Vba14
    Homme Profil pro
    Retraité
    Inscrit en
    Janvier 2019
    Messages
    440
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Janvier 2019
    Messages : 440
    Par défaut
    Bonjour sorbetframboise,

    Voici une réponse qui a été donné à la même question :

    Cordialement

  16. #16
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    si un modérateur pouvait transférer cette discution en VB.net !

  17. #17
    Inactif  

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

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

    Informations forums :
    Inscription : Janvier 2012
    Messages : 4 903
    Billets dans le blog
    36
    Par défaut
    Citation Envoyé par sorbetframboise Voir le message
    Moi ça ressemble àça donc + du VB net :
    Exact



    Y'a t-il une grosse différence entre visual studio et visual basic ?


    Je suis désolé d'autant galérer.
    L'idée de base, c'est que Visual Studio supporte plusieurs langages. De base, Microsoft fournit Visual Basic, C#, F#, TypeScript et JavaScript. Et plusieurs autres sont disponibles sous forme d'extension.

    Et le problème c'est que j'ai téléchargé les fichiers dll etc et malgré cela je ne trouve pas les référence et il ne me propose pas de parcourir mes documents
    Regarde dans l'onglet .net, le plus à gauche de ton image au lieu de l'onglet COM

    P.S. Si tu utilises les Primary Interop Assemblies (la méthode la plus facile) tu dois ouvrir ton fichier Excel. Mais l'opération peut se faire de manière invisible à l'écran.

  18. #18
    Inactif  

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

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

    Informations forums :
    Inscription : Janvier 2012
    Messages : 4 903
    Billets dans le blog
    36
    Par défaut
    Citation Envoyé par dysorthographie Voir le message
    Bonjour,

    si un modérateur pouvait transférer cette discution en VB.net !
    Elle a déjà pris les devants. Je pense que l'on est plus rendu à fusionner deux discussions.

    Pour l'instant, j'ai mis un lien dans l'autre vers celle-ci. Cela va permettre de naviguer entre les deux en attendant la fusion éventuelle.

  19. #19
    Membre éclairé
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2019
    Messages
    249
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2019
    Messages : 249
    Par défaut
    Bonjour,

    Oui effectivement j'ai lancé la discussion sur VB.net.

    Ce week end j'ai réussi quelques trucs merci pour les références j'arrive à les ajoutés maintenant je programme un peu.

    Merci pour votre aide je pense que le problème ne tardera pas à être résolue.

    Merci

  20. #20
    Membre éclairé
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2019
    Messages
    249
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2019
    Messages : 249
    Par défaut
    Oui c'est bien cela merci à tous pour votre aide précieuse voici le code final :

    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
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
            Dim XlApp As Microsoft.Office.Interop.Excel.Application = New Microsoft.Office.Interop.Excel.Application()
            Dim XLDestBook As Microsoft.Office.Interop.Excel.Workbook
            Dim XLSheet As Microsoft.Office.Interop.Excel.Worksheet
            Dim XlRange As Microsoft.Office.Interop.Excel.Range
     
            XLDestBook = XlApp.Workbooks.Open("C:\Users\Asus\Desktop\TEST.xls")
            XLSheet = XLDestBook.Sheets(1) 'Indique le numéro de la feuille souhaitée
            XlRange = XLSheet.Cells(1, 2)
            XlRange.Value = TextBox1.Text
            XlRange = XLSheet.Cells(1, 1)
            TextBox2.Text = XlRange.Value
     
            Xlapp.DisplayAlerts = False
            XLDestBook.Save()
            XLDestBook.Close()
            XlApp.DisplayAlerts = True
            XlApp.Quit()
     
     
     
        End Sub

    A bientôt.

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

Discussions similaires

  1. Remplir une cellule Excel avec une condition sous vb
    Par enibris dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 14/01/2008, 13h47
  2. Réponses: 2
    Dernier message: 13/01/2008, 21h33
  3. remplir une cellule excel a partir d'un combobox en userform
    Par rocofolie dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 07/09/2007, 15h54
  4. Comment lire le contenu en arabe d'une cellule excel avec
    Par deneche dans le forum Bases de données
    Réponses: 1
    Dernier message: 17/03/2006, 10h01
  5. Remplir les cellules Excel avec des variables VB
    Par rupeni dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 21/11/2005, 09h31

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