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 :

Copier coller des données excel


Sujet :

VB.NET

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

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2019
    Messages : 249
    Points : 145
    Points
    145
    Par défaut Copier coller des données excel
    Bonjour à tous,
    J'ai une forme avec pas mal de TextBox j'aimerais savoir s'il est possible de copier une liste de valeur sur excel (qui peuvent provenir de différentes feuilles) donc faire un copier coller les valeurs dans la textbox ou peut-être avaient vous une autre méthode.

    Merci pour votre aide.

  2. #2
    Membre averti Avatar de Delaney
    Homme Profil pro
    Developpeur VB amateur
    Inscrit en
    Mars 2014
    Messages
    148
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Developpeur VB amateur
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Mars 2014
    Messages : 148
    Points : 372
    Points
    372
    Par défaut
    Bonjour,

    Si j'ai bien compris, tu veux récupérer des valeurs de ton fichier excel et les placer dans une ou plusieurs textbox.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    activesheet = Workbook.Sheets("Feuil1")
    activesheet.Activate()
    activesheet.Cells(1, 1).copy() 'ou activesheet.range("A1","A1")
    TextBox2.Text = Clipboard.GetText
    si tu utilises un range au lieu d'un cells, par exemple : activesheet.range("A1","A4") , cela copiera toutes les données des cellules qui seront concaténées lorsque tu les placera dans ta textbox

  3. #3
    Membre averti Avatar de Delaney
    Homme Profil pro
    Developpeur VB amateur
    Inscrit en
    Mars 2014
    Messages
    148
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Developpeur VB amateur
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Mars 2014
    Messages : 148
    Points : 372
    Points
    372
    Par défaut
    rebonjour,

    par ailleurs si tu veux copier plusieurs données et les placer dans une listbox :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    activesheet.Range("A1", "A4").Copy()
    Dim texts() As String = Clipboard.GetText.Split(New String() {Environment.NewLine}, StringSplitOptions.RemoveEmptyEntries)
    ListBox1.Items.AddRange(texts)
    si au lieu d'une listbox, tu veux les mettre dans plusieurs textbox un petite boucle devrait faire l'affaire

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

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2019
    Messages : 249
    Points : 145
    Points
    145
    Par défaut
    Non pas exactement je veux que l'utilisateur de l'application puisse prendre les données sur n importe quel fichier excel et qu'il puisse soit faire un copier coller soit faire rentrer toutes les valeurs d'une colonne dans les TextBox le fichier ainsi que la colonne peut être variable

    Merci pour ton aide.

  5. #5
    Membre averti Avatar de Delaney
    Homme Profil pro
    Developpeur VB amateur
    Inscrit en
    Mars 2014
    Messages
    148
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Developpeur VB amateur
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Mars 2014
    Messages : 148
    Points : 372
    Points
    372
    Par défaut
    J'ai un peu de mal à comprendre ce que tu veux faire.

    Pour un simple copier/coller d'une case de excel déjà ouvert, tu n'as pas besoin de programmation. Tu te mets sur la case de ta feuille, tu fais soit un CTRL C soit un click droit "copier" et tu colles directement dans ta textbox en sélectionnant la textbox et en faisant CTRL V ou click droit "coller".

    Je suppose que ton fichier excel n'est pas ouvert et que tu sélectionnes tout via ton application VB (fichier, feuille et case ou colonne). Dans ce cas, mon premier exemple fonctionne pour le copier/coller d'une case, et mon deuxième exemple fonctionne pour sélectionner une colonne complète en utilisant
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ActiveSheet.Range("a1", ActiveSheet.Range("a1").End(xldirection.xlDown)).copy() 'copie toutes les cellules de la colonne non vide
    sinon pour la sélection des cases dans excel, ceci pourra t'aider : https://docs.microsoft.com/fr-fr/off...h-visual-basic



    PS: activesheet dans mon exemple, c'est juste le nom de la variable sheet

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

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2019
    Messages : 249
    Points : 145
    Points
    145
    Par défaut
    Je souhaite que l’utilisateur puisse sélectionner une plage de données sur une colonne ex : B1:B100 sur une feuille excel ouvertes et qu'il puisse coller chacune de ses valeurs à une textbox

    le tout en un seul clique sans qu'il est besoin de copier les valeurs une à une.

    Le problème c'est que je souhaite que l'utilisateur puisse choisir le fichier excel et la colonne ( La colonne n'est pas toujours la B et pas sur le même dossier excel que la fois d'avant)

  7. #7
    Membre averti Avatar de Delaney
    Homme Profil pro
    Developpeur VB amateur
    Inscrit en
    Mars 2014
    Messages
    148
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Developpeur VB amateur
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Mars 2014
    Messages : 148
    Points : 372
    Points
    372
    Par défaut
    Ok,

    Je pars du principe que l'utilisateur a sélectionné et copié la plage de cellule qui l'intéresse (en l’occurrence une partie de colonne, peut importe laquelle).

    Dans ce cas plus besoin de faire la copie dans l'application. il y a juste à gérer ce qui est dans le presse-papier

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    
    Dim texts() As String = Clipboard.GetText.Split(New String() {Environment.NewLine}, StringSplitOptions.RemoveEmptyEntries)
    
    For i= 1 to texts.count
     Me.Controls("Textbox" & i.ToString).Text = texts(i-1) 
    Next
    Juste faire attention qu'il y a bien assez de textbox... et à bien numéroter les textbox...

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

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2019
    Messages : 249
    Points : 145
    Points
    145
    Par défaut
    C'est parfait!!!

    Merci beaucoup

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

Discussions similaires

  1. [Python 3.X] Copier/Coller des données d'un fichier Excel à un autre via Python
    Par Chnooow dans le forum Général Python
    Réponses: 2
    Dernier message: 06/07/2018, 11h35
  2. [XL-2007] Copier-coller des données d'excel vers un logiciel
    Par capi81 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 04/07/2012, 13h18
  3. Copier coller des cellules excel ?
    Par Angelssen dans le forum Windows Forms
    Réponses: 1
    Dernier message: 02/02/2010, 12h42
  4. Copier - coller des données entre 2 feuilles d'un même classeur
    Par cati_78 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 29/04/2009, 23h05
  5. Réponses: 2
    Dernier message: 13/06/2007, 12h29

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