Récupération de données excel depuis VB.NET [Résolu/Fermé]

Signaler
Messages postés
56
Date d'inscription
jeudi 15 novembre 2012
Statut
Membre
Dernière intervention
9 mai 2020
-
Messages postés
56
Date d'inscription
jeudi 15 novembre 2012
Statut
Membre
Dernière intervention
9 mai 2020
-
Bonjour,

Voila je cherche une solution pour concevoir un petit "panneau" en VB.Net qui récupérerait des informations présent sur une ligne d'un classeur excel. A chaque fois que l'utilisateur clique sur une nouvelle ligne les infos sur le panneau se mettent à jour.

La fenêtre du panneau aurait la propriété "Top Most" = True

(le fichier excel à beaucoup de colonnes, le but étant de condenser les infos sur ce panneau sans toucher à l'architecture du fichier excel.)

Avez-vous des pistes ?

Cordialement.

3 réponses

Messages postés
15926
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
8 mai 2021
700
Bonjour

https://codes-sources.commentcamarche.net/source/101574-import-excel-dans-datagridview-en-vb-net

Ou encore
https://codes-sources.commentcamarche.net/source/50624-piloter-excel-via-microsoft-office-interop-excel (En c# mais il suffit de passer le code dans un traducteur ligne)

Sinon il existe des solutions avec Linq qui fonctionnent sur les xlxs
1
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 65492 internautes nous ont dit merci ce mois-ci

Messages postés
56
Date d'inscription
jeudi 15 novembre 2012
Statut
Membre
Dernière intervention
9 mai 2020
1
Bonjour Whismeril,

Tout d'abord, mes excuses pour le retard de ma réponse. J'ai déjà quelques notions de communications entre VB.net et Excel, mais je voudrais que mon "panneau" soit en support du fichier excel, que l'utilisateur garde la main sur le fichier ouvert dans excel. le but étant reporter des infos uniquement.

je vais faire des tests mais cela va prendre du temps ... (vie perso oblige.)
en tout cas merci de ton assistance.

Cdt.
Messages postés
15926
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
8 mai 2021
700
Les deux codes que je t'ai proposé utilisent l'automantion, donc ça ouvre le fichier.
Du coup, l'utilisateur peut agir dans le fichier.

Par contre, il faut faire en sorte que ton appli vb.net vérifie régulièrement si les données ont changées.
1
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 65492 internautes nous ont dit merci ce mois-ci

Messages postés
56
Date d'inscription
jeudi 15 novembre 2012
Statut
Membre
Dernière intervention
9 mai 2020
1
Bonsoir Whismeril,

J'ai pu aboutir mon petit programme, il m'a été un peu compliqué de comprendre comment récupérer l'adresse de la cellule active dans excel (petite subtilité ce n'est pas le worksheet mais l'app qui détient cette "fonction") :

Dim appExcel As Excel.Application
Dim wbExcel As Excel.Workbook
Dim wsExcel As Excel.Worksheet

AdresseActiveCell = appExcel.ActiveCell.Row

en tout cas impeccable.

Merci encore.

EDIT : pour le contrôle régulier si l'utilisateur change de cellule active j'ai utilisé un timer avec intervalle à 2000
Messages postés
15926
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
8 mai 2021
700
Pour savoir si la cellule sélectionnée change il y a
https://docs.microsoft.com/en-us/dotnet/api/microsoft.office.tools.excel.namedrange.selectionchange?redirectedfrom=MSDN&view=vsto-2017

Et si le contenu d'une cellule change
https://docs.microsoft.com/en-us/dotnet/api/microsoft.office.tools.excel.namedrange.change?redirectedfrom=MSDN&view=vsto-2017

Ça me parait plus judicieux que le timer.

Je n'ai pas eu l'occasion de tester ces fonctionnalités, car je ne fais qu'exporter des données.

Messages postés
56
Date d'inscription
jeudi 15 novembre 2012
Statut
Membre
Dernière intervention
9 mai 2020
1
je te remercie pour ce complément et m'excuse pour le retard. Je vais me pencher dessus rapidement.

Cdt.