VBA Excel : Besoin d'aide pour l'utilisation du contrôle MsFlexGrid

Signaler
Messages postés
23
Date d'inscription
mercredi 25 février 2004
Statut
Membre
Dernière intervention
5 septembre 2006
-
clamar45
Messages postés
7
Date d'inscription
dimanche 22 octobre 2006
Statut
Membre
Dernière intervention
11 août 2009
-
Bonjour,

Je travaille actuellement sous VBA Excel, avec une feuille Excel comprenant des données, et bien sur plusieurs forms VBA.

Le but du jeu est de copier entèrement ou une partie de la feuille Excel et de coller son contenu dans une form, afin que l'utilisateur ne travaille que sur la form, et non directement sur la feuille Excel (c'est le cahier des charges qui veut ça^^).

J'ai donc parcouru le forum et découvert le contrôle MsFlexGrid (bon g déjà résolu le problème de licence c déjà ça), mais les exemples d'utilisation ne sont, pour la plupart, que pour VB6 ou autre, mais non pour du VBA.

De plus, le proxy de l'entreprise nous empèche d'accèder à des sites perso, ou inutile pour travailler. Par chance, vbfrance est accessible^^

Donc pouvez vous m'expliquer comment copier les données excel dans mon vba, les modifier, puis insérer les modifications dans ma feuille excel.

Si vous connaissez un contrôle plus approprié, y'a pas de problème^^ Par contre, essayez si possible de laisser vos solutions sur ce site et au format vba excel, merci.

Bonne journée à tous !!

4 réponses

Messages postés
17
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
29 octobre 2006

J'ai donc parcouru le forum et découvert le contrôle MsFlexGrid (bon g
déjà résolu le problème de licence c déjà ça), mais les exemples
d'utilisation ne sont, pour la plupart, que pour VB6 ou autre, mais non
pour du VBA.

Comment as tu résolu ton probleme de licence ?

Phbil
Messages postés
215
Date d'inscription
mercredi 2 février 2005
Statut
Membre
Dernière intervention
9 avril 2010
3
Hi
pour ma part j'ai déjà testé cette méthode, bosser uniquement avec un form ... et ce n'est pas évident, car tu devras gérer moulte conditions qui s'imbriqueront les unes dans les autres (sauf ci tes données sont sur une seule et unique ligne) ce qui n'était pas le cas pour moi.

Tu devras aussi utiliser des PUBLIC ... enfin je n'ai pas le tps ... je dois partir ... ma femme m'attends ... mais volontier demain si tu veux.

ChaPaTa.
Messages postés
23
Date d'inscription
mercredi 25 février 2004
Statut
Membre
Dernière intervention
5 septembre 2006

Pour ma part, je travaille sous une machine XP (sp2), et Excel 2000 (sp3). Ainsi les composant VBA Excel ne marchait pas avec l'interface XP.

Il suffit donc d'avoir les bonnes références actualisées, mise à jour. Pour celà, voici ma démarche :

Sous Win Xp :
Démarrer >>Exécuter >> C:\WINDOWS\system32\REGSVR32.EXE /u C:\WINDOWS\system32\msflxgrd.ocx

C:\WINDOWS\system32 >> répertoire dans lequel se trouve REGSVR32.EXE
/u >> je ne sait pas, mais il faut l'écrire
C:\WINDOWS\system32 >> répertoire dans lequel se trouve ton contrôle "non licencié"

Bien sur, effectue une recherche, afin de placer le bon chemin de tes répertoire, ce n'en sera que plus efficace^^

Ensuite tu as 2 options :
- Soit tu installes VisualBasic2005 Express afin que la référence de ton contrôle soit mise à jour (dans mon cas, msflxgrd.ocx pour MsFlexGrid)
http://msdn.microsoft.com/vstudio/express/vb/download/
Puis tu le désinstalle si tu veux^^
- Soit tu trouves un poste XP avec offcice XP et tu copie ta référence msflxgrd.ocx (tjs dans mon cas) et tu la collera à la place de ta réfénce "défecteuse".

Personellement, j'ai utiliser la première solution, ça marche tout seul. Maintenant, il faut savoir ce servir de son contrôle^^

J'espère que ça a pu t'aider !!

Salut !!
Messages postés
7
Date d'inscription
dimanche 22 octobre 2006
Statut
Membre
Dernière intervention
11 août 2009

 bonjour,

Mon probleme c'est que dans je glisse l'icon de msflexgrid sur le forme de VBA il me renvoie une message d'erreur "le sujet n'est pas approuvé pour l'action spécifier"

est ce que vous avez une idée SVP car j'en ai trope besoin
merci d'avance