Formulaire macro sous Excel VBA

cs_thanatos67 Messages postés 51 Date d'inscription vendredi 3 décembre 2004 Statut Membre Dernière intervention 13 novembre 2008 - 14 juin 2005 à 17:40
ricomiracle Messages postés 195 Date d'inscription vendredi 19 novembre 2004 Statut Membre Dernière intervention 30 novembre 2009 - 17 juin 2005 à 12:25
Bonjour, je suis en 1ere année de BTS IRIS( informatique), et j'ai un
formulaire sous excel à faire durant mon stage. Dans cette boite, les
employés utilisent un progiciel appelé textow pour saisir les données,
mais souhaitent une macro sous excel pour avoir une meilleur
présentation, car ces données sont consultables par toute personne
exterieur venant ici pour faire une recherche.



J'ai apris en cour le C et un peut d'objet avec C++ et JAVA. Mais là je suis perdu.




J'ai mis en place les zones de texte, et apres avoir ouvert textox,
j'ai lancé l'enregistrement, puis j'ai copié/collé à partir de chaque
champs de textow le texte devant aller dans le bon champ de mon
formulaire. Puis je stoppe l'enregistrement... et rien n'a changé dans
le code! Pourtant j'avais cru comprendre que durant l'enregistrement,
la macro enregistrait toutes les actions, jusqu'à l'arret de
l'enregistrement.

Bien sûr j'ai renommé les champs sous excel.
Ceux-ci sont en "private". Je n'ai pas modifié en pensant que VBA le
ferait de lui même.

J'ai fait des recherches, et il semblerai qu'il
faille que j'utilise les fonctions DDERequest et DDEInitiate. Ca fait
deux jours que je cherche sur internet, mais rien. Et mon livre sur
VB6.0 ne sert à RIEN(grrrrrr).



Pourriez-vous me guider s'il vous plait?



Merci infiniment.

au bout du clavier...

14 réponses

ricomiracle Messages postés 195 Date d'inscription vendredi 19 novembre 2004 Statut Membre Dernière intervention 30 novembre 2009
14 juin 2005 à 23:28
Que veut tu dire par "rien n'a changé dans le code!"? tu as déja du
code (si oui montre à quoi ca ressemble) la zone de texte est placée
dans un userform ou sur une fuille du classeur?
0
cs_thanatos67 Messages postés 51 Date d'inscription vendredi 3 décembre 2004 Statut Membre Dernière intervention 13 novembre 2008
15 juin 2005 à 08:34
Voici le code :



Sub essai2()

'

' essai2 Macro

' Macro enregistrée le 14/06/2005 par drac drac

'



'

Range("AC13").Select

End Sub


Le Range vient du faite que j'ai cliqué sur cette case à la fin, mais c'est la seule chose enregistré.


au bout du clavier...
0
cs_thanatos67 Messages postés 51 Date d'inscription vendredi 3 décembre 2004 Statut Membre Dernière intervention 13 novembre 2008
15 juin 2005 à 08:51
En faite je peux créer à partir du logiciel "textow" un fichier texte
en mettant en place les tabulations (déjà ça de gagné). Mais pour le
reste...



au bout du clavier...
0
ricomiracle Messages postés 195 Date d'inscription vendredi 19 novembre 2004 Statut Membre Dernière intervention 30 novembre 2009
15 juin 2005 à 13:08
Je comprend pas trees bien ton problème.

Tu veux faire un userform dans lequel l'utilisateur rentre des info et les mettre ds la feuille excel c ca???
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_thanatos67 Messages postés 51 Date d'inscription vendredi 3 décembre 2004 Statut Membre Dernière intervention 13 novembre 2008
15 juin 2005 à 15:04
Non. En faite il y a un progiciel pour la saisie qui est utilisé pour
rentrer les données( ville, nom des chercheurs et des photographes...).
Quand la saisie est terminé, un fichier texte est généré, avec la
tabulation entre chaque terme. J'arrive à importer le fichier texte,
avec une donnée par cellule( grace aux tabulations qui sont pris en
compte), mais maintenant je souhaiterai déplacer chacune de ces données
dans une zone de texte différent.



J'ai crée une macro incluant l'importation du fichier texte dans des
cellules de ce userform, et ensuite j'ai fais manuellement un
copié/collé de chaque cellule vers sa zone de texte, en esperant qu'il
enregistrerai l'action( c'est à dire en esperant qu'il comprendrait à
quel zone de texte corespond quel cellule). Malheureusement seule
l'importation a fonctionné.

au bout du clavier...
0
ricomiracle Messages postés 195 Date d'inscription vendredi 19 novembre 2004 Statut Membre Dernière intervention 30 novembre 2009
15 juin 2005 à 23:46
essaye en sélectionnant la zone de texte: bouton droit propriété.

tu dois avoir la propriété "LinkedCell" , tu renseignes l'adresse de la cellule

Et voila!
0
cs_thanatos67 Messages postés 51 Date d'inscription vendredi 3 décembre 2004 Statut Membre Dernière intervention 13 novembre 2008
16 juin 2005 à 10:24
Effectivement, ça fonctionne. Mais le pb c'est que lorsque je vide les
cellules, les données ne restent pas dans les zone de texte( ce qui est
normal). C'est pourquoi je souhaiterai copier non pas les coordonnées
des cellules, mais leurs contenus.

au bout du clavier...
0
ricomiracle Messages postés 195 Date d'inscription vendredi 19 novembre 2004 Statut Membre Dernière intervention 30 novembre 2009
16 juin 2005 à 10:43
Ouais mais alors quel intérêt d'utiliser des zones de texte sur ta feuille Excel???

Tu peux pas mettre ces valeurs ds des cellules tout bêtement?

Explique exactement ce que tu veux faire, donne un exemple je vois pas comment t'aider avec ca...
0
cs_thanatos67 Messages postés 51 Date d'inscription vendredi 3 décembre 2004 Statut Membre Dernière intervention 13 novembre 2008
16 juin 2005 à 13:58
J'ai mis des zones de texte pour avoir une meilleur présentation. Il y a aussi des intitulés.

Bien sûr l'idéal serait de transferer les données du fichier texte directement dans les zones de texte, mais je n'y arrive pas.

La seule chose que j'ai réussis à faire c'est l'importation dans des
cellules. Mais ce que je veux c'est importer dans les zones de textes,
soit directement, soit en les fesant transiter par les cellules(
importer dans les cellules, puis un sorte de copié/collé dans les zones
de texte).

Donc au final, il ne doit plus y avoir de données dans les cellules. Uniquement dans les zones.
0
ricomiracle Messages postés 195 Date d'inscription vendredi 19 novembre 2004 Statut Membre Dernière intervention 30 novembre 2009
16 juin 2005 à 15:19
Et les zones de textes peuvent etre modifiable ou non

Si elle sont non modifiable, utilise la propriété linkedCell et masque les cellules contenant les valeurs...
0
cs_thanatos67 Messages postés 51 Date d'inscription vendredi 3 décembre 2004 Statut Membre Dernière intervention 13 novembre 2008
16 juin 2005 à 16:38
Merci beaucoup, ça marche avec LinkedCell et en masquant les autres cellules!!



J'aurais encore une dernière question : la propriété AutoSize permet à
ma zone de texte de s'agrandir sur la longueur si besoin est. Mais est
ce qu'il y a une propriété pour lui demander d'augmenter sa hauteur?

au bout du clavier...
0
ricomiracle Messages postés 195 Date d'inscription vendredi 19 novembre 2004 Statut Membre Dernière intervention 30 novembre 2009
16 juin 2005 à 17:55
Je suis pas sure mais il me semble aue autosize fait la largeur ET la hauteur.

Si il y a plusieurs ligne ds la zone, mettre la propriété multiLine a "true"
0
cs_thanatos67 Messages postés 51 Date d'inscription vendredi 3 décembre 2004 Statut Membre Dernière intervention 13 novembre 2008
17 juin 2005 à 09:13
J'ai essayé les differentes possibilités avec les deux, et il s'est
passé une chose etrange. Si j'utilise ces deux propriétés en même temps
dans la macro, ma ZDN(zone de texte) garde une petite largeur(1cm à
peut pres) mais sa hauteur augmente( 10cm à peut pres). Je remet false
pour les deux et la ZDN retrouve sa taille d'origine, mais lorsque je
remet ensuite uniquement MultiLine en True, rien ne change....

au bout du clavier...
0
ricomiracle Messages postés 195 Date d'inscription vendredi 19 novembre 2004 Statut Membre Dernière intervention 30 novembre 2009
17 juin 2005 à 12:25
Multiline a true signidie que tu peut faire des retour à la lignes ds
ta zone de text. Si tu as plusieurs lignes et que que tu mets autosize
à true, la hauteur est modifier. Si tu n'as qu'une seul ligne, ce sera
la largeur... LOGIQUE.

Je comprends toujours pas tu utilises des zone de texte sur ta feuille
Excel. Sais tu que l'on peut dimensionner automatiquement les cellules
en fonction de la taille du texte, leur attribuer des couleurs, des
bordures...?
0
Rejoignez-nous