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 :

Petit complement a ma transmission de valeurs de cellule excel [Débutant]


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Juin 2005
    Messages
    608
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Santé

    Informations forums :
    Inscription : Juin 2005
    Messages : 608
    Par défaut Petit complement a ma transmission de valeurs de cellule excel
    J'ai ete un tout petit peu vite pour mettre mon topic precedant en resolu .....
    j'ai juste 3 petites questions pour peaufiner les choses car tout fonctionne a merveille autrement :

    - Si la valeur de la cellule excel est a transmettre non plus dans une textbox mais dans une combobox comment cela se passe ?

    - Je voudrais fermer et "killer le process" excel des que les valeurs sont chargées dans mon form

    - Derniere question, celle la pour ma culture
    puis je travailler, non pas avec un fichier excel contenant une seule feuille mais avec 2 feuilles de calcul ???

    Un gros merci

  2. #2
    Membre extrêmement actif
    Inscrit en
    Avril 2008
    Messages
    2 573
    Détails du profil
    Informations personnelles :
    Âge : 65

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 573
    Par défaut
    bonjour zebrette

    Si la valeur de la cellule excel est a transmettre non plus dans une textbox mais dans une combobox comment cela se passe ?
    Rien de nouveau que tu ne connaisses pas:combox.items.add(item).....

    Je voudrais fermer et "killer le process" excel des que les valeurs sont chargées dans mon form
    Je dirais pareil au meme .Le travail fait par form_closing tu le delegues à une sub de ton cru que tu appelles explicitement apres avoir charge tes combo avec les valeurs desirees.....

    Derniere question, celle la pour ma culture
    puis je travailler, non pas avec un fichier excel contenant une seule feuille mais avec 2 feuilles de calcul ???
    Pareil egalement .
    S'agissant de culture il n' y as pas de limite ....sauf nos capacites....
    Tu peux non seulement lire plusieurs feuilles d'un meme classeur par leur index(attention pas de nom car c'est un simple label).....
    mais meme ouvrir plusieurs applications excel et tansmettre par ton form des valeurs d'une application excel à une autre..........

    le code pour les combo et l'acces à 2 feuilles du classeur:

    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
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
     
    Imports System.Windows.Forms
    Imports OXL = Microsoft.Office.Interop.Excel
    Imports System.IO
    Public Class Form3
        Private AppExcel As OXL.Application
        Private xlWorkbook As OXL.Workbook
        'feuille 1
        Private xlWorkSheetOne As OXL.Worksheet
        'feuille 4
        Private xlWorkSheetTwo As OXL.Worksheet
        Private appPath As String = Directory.GetCurrentDirectory
        Private Sub New()
     
            ' Cet appel est requis par le Concepteur Windows Form.
            InitializeComponent()
     
            ' Ajoutez une initialisation quelconque après l'appel InitializeComponent().
     
     
        End Sub
        Private Sub btnLoadData_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnLoadData.Click
            'ce code est utile si on consulte frequemment le classeur e-mail
            If AppExcel IsNot Nothing Then
                MessageBox.Show("le classeur sera ferme et l'application relance pour mise à jour patienter!...")
                If xlWorkSheetOne IsNot Nothing Then
                    xlWorkSheetOne = Nothing
                    xlWorkSheetTwo = Nothing
                End If
                If xlWorkbook IsNot Nothing Then
                    xlWorkbook = Nothing
                End If
                AppExcel.Quit()
                AppExcel = Nothing
     
            End If
            'fin de ce code
     
            'ouvre l'appli
            AppExcel = New OXL.Application
            xlWorkbook = AppExcel.Workbooks.Open(appPath & "\monClasseur.xls")
            xlWorkSheetOne = xlWorkbook.Worksheets(1)
            xlWorkSheetTwo = xlWorkbook.Worksheets(4)
            AppExcel.Visible = True
     
            'Appel à TopMost  doit etre deporte ici
            Me.TopMost = True
     
            'clear ComboBo
            Me.ComboBox1.Items.Clear()
            Me.ComboBox2.Items.Clear()
            Me.ComboBox3.Items.Clear()
     
     
            'Chargement des data  dans Combo au lieu des TextBox
            Dim rng As OXL.Range = Nothing
     
            rng = Me.xlWorkSheetOne.Cells(1, 1)
            Me.ComboBox1.Items.Add(CType(rng.Value, String))
     
            rng = Me.xlWorkSheetOne.Cells(1, 2)
            Me.ComboBox2.Items.Add(CType(rng.Value, String))
     
            'On peut charger dans le 3 combo la valeur des 
            'cellules.......si l'on veut
            For j As Integer = 1 To 3
                rng = Me.xlWorkSheetTwo.Cells(1, j)
                Me.ComboBox3.Items.Add(CType(rng.Value, String))
            Next
     
            'Rendre immediatemeent le 1er element visible 
            Me.ComboBox1.SelectedIndex = 0
            Me.ComboBox2.SelectedIndex = 0
            Me.ComboBox3.SelectedIndex = 0
            MessageBox.Show("cellules Excel charges dans le Form.......")
     
            'Apres chargement tu appelles la sub CloseAppExcel qui fait
            'exactement le travail de form_closing sauf que 
            'c 'est toi qui l'appelles explicitement.......
            CloseAppExcel()
        End Sub
        'CloseAppExcel
        Private Sub CloseAppExcel()
            MessageBox.Show("le classeur va etre ferme...")
            If xlWorkSheetOne IsNot Nothing Then
                xlWorkSheetOne = Nothing
            End If
            If xlWorkbook IsNot Nothing Then
                xlWorkbook = Nothing
            End If
            If AppExcel IsNot Nothing Then
                AppExcel.Quit()
                AppExcel = Nothing
            End If
     
        End Sub
    End Class
    bon code..............

  3. #3
    Membre éclairé
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Juin 2005
    Messages
    608
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Santé

    Informations forums :
    Inscription : Juin 2005
    Messages : 608
    Par défaut
    merci bien pour tes explications claires et précises MABROUKI.
    Je me sens plus a l'aise dorénavant avec ce genre de manipulations

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

Discussions similaires

  1. Récupéré une valeur d’une cellule Excel
    Par rapdoc dans le forum Langage
    Réponses: 2
    Dernier message: 06/02/2014, 13h56
  2. recherche valeur dans cellule excel depuis un vbs
    Par Gamack dans le forum VBScript
    Réponses: 4
    Dernier message: 07/01/2014, 17h21
  3. [XL-2010] remplir des formulaire avec des valeurs de cellules excel
    Par PolyAmide dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 22/09/2011, 09h30
  4. Recuperation de valeurs de cellules Excel dans Shape
    Par JF001 dans le forum VBA PowerPoint
    Réponses: 1
    Dernier message: 25/07/2007, 05h46
  5. Réponses: 4
    Dernier message: 28/07/2005, 16h10

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