| Voir le sujet précédent :: Voir le sujet suivant |
| Auteur |
Message |
Frédéric Maître


Inscrit le: 13 Mai 2006 Messages: 590
Points: 11830
|
Posté le: 21 Nov 2006 à 17:56 Sujet du message: Aide excel |
|
|
Salut Tee Shot!
Je suis en train ce céer un petit truc sur excel. Je voudrais savoir si c'est possible que quand on ouvre le document il y a une fenêtre qui s'ouvre et qui demande d'entrer notre nom, prénom, date et qu'une fois inscrit et lorsqu'on clique sur ok ça enregistre les données saisis (nom, prénom...) dans une page du document. Si c'est posssible comment dois-je procéder mettre ce petit truc dans mon document?
J'espère avoir été clair
Tcho _________________
 |
|
| Revenir en haut |
|
 |
|
|
 |
Tee Shot Admin


Inscrit le: 09 Jan 2004 Messages: 2308 Game Trophies: 5 Membre du Hall de Célébrités
Localisation: Bordeaux (St Jean D'illac) Points: 41545
|
Posté le: 21 Nov 2006 à 19:00 Sujet du message: |
|
|
Salut
C'est parfaitement possible avec une macro, je te prépare un bout de code, parce qu'à expliquer c'est pas facile. _________________ Voter pour se site ----->
Merci !! |
|
| Revenir en haut |
|
 |
Frédéric Maître


Inscrit le: 13 Mai 2006 Messages: 590
Points: 11830
|
Posté le: 21 Nov 2006 à 19:06 Sujet du message: |
|
|
Ok merci.
Par contre c'est vrai c'est un peu compliqué les macros, je n'y connais rien là dedans. Une autre petite question (pas longue à expliquer je pense): quel est le code pour créer un url? Car j'ai crée un bouton et je veux que le lien l'envoie sur une page de mon document.
Tcho _________________
 |
|
| Revenir en haut |
|
 |
Tee Shot Admin


Inscrit le: 09 Jan 2004 Messages: 2308 Game Trophies: 5 Membre du Hall de Célébrités
Localisation: Bordeaux (St Jean D'illac) Points: 41545
|
Posté le: 21 Nov 2006 à 19:32 Sujet du message: |
|
|
tu veux dire vers un onglet du classeur ? c'est aussi en vba.
Le mieux est de l'enregistrer, tu fais donc macro, enregistré une macro, tu ne met rien dans touche de raccourci, tu nommes ta macro et tu fais ok. Tu cliques sur l'onglet ou tu veux aller tu fais fin d'enregistrement. Ensuite tu n'as plus qu'à lier ta macro à ton bouton, si c'est une forme sur ta page tu fais clique droit et lié une macro, tu lui indique la macro c'est tout.
Si tu as fais un user form avec vba, tu vas dans ton userform et tu y copie le code en mettant click ou double click en haut à droit suivant ce que tu veux.
ça donnera un truc comme ça :
| Code: | Private Sub UserForm_Click()
Sheets("Feuil2").Select
End Sub
|
attention quand tu feras enregistré les macro, ça prend tout y compris les erreurs, ça prend vraiment tout, alors va doucement.
[edit] je suis pas la ce soir je te ferais donc le code pour demain.
Tcho _________________ Voter pour se site ----->
Merci !!
Dernière édition par Tee Shot le 21 Nov 2006 à 20:13; édité 2 fois |
|
| Revenir en haut |
|
 |
Frédéric Maître


Inscrit le: 13 Mai 2006 Messages: 590
Points: 11830
|
Posté le: 21 Nov 2006 à 19:35 Sujet du message: |
|
|
OK merci. Le code que tu m'as mis c'est pour le lien?
Tcho _________________
 |
|
| Revenir en haut |
|
 |
Tee Shot Admin


Inscrit le: 09 Jan 2004 Messages: 2308 Game Trophies: 5 Membre du Hall de Célébrités
Localisation: Bordeaux (St Jean D'illac) Points: 41545
|
Posté le: 22 Nov 2006 à 12:44 Sujet du message: |
|
|
Oui c'est pour le lien mais vers un onglet de ton classeur excel.
Voila un fichier pour ta boite de dialogue :
http://www.teeshotweb.com/down/teeshotweb.xls
Quand tu l'ouvres il te faudra accepter les macro et il ouvrira une boite de dialogue.
Pour voir le code tu ouvre vba excel et tu auras les code dans Thisworkboock, c'est pour lancer la boite à l'ouverture du document et dans feuilles/ renseignements tu as la boite de dialogue avec le code, c'est commenté, si tu comprends pas quelque chose hésite pas.
Tcho _________________ Voter pour se site ----->
Merci !! |
|
| Revenir en haut |
|
 |
Frédéric Maître


Inscrit le: 13 Mai 2006 Messages: 590
Points: 11830
|
Posté le: 22 Nov 2006 à 14:24 Sujet du message: |
|
|
Merci beaucoup Tee shot!
Juste une petite question. En fait ce n'était pas la date de naissance, mais la date du jour ou on l'ouvre. Ceci dit ça ne fait rien. Est-ce que si je modifie juste "date de naissance" par "date d'aujourd'hui" est-ce que ça fonctionne quand même?
J'ai aussi une autre question. Comment faire pour choisir la page où l'on veut enregistrer les données? Et comment faire pour que les données irons chaque fois à la ligne en dessous?
Tcho _________________
 |
|
| Revenir en haut |
|
 |
Tee Shot Admin


Inscrit le: 09 Jan 2004 Messages: 2308 Game Trophies: 5 Membre du Hall de Célébrités
Localisation: Bordeaux (St Jean D'illac) Points: 41545
|
Posté le: 22 Nov 2006 à 19:02 Sujet du message: |
|
|
Salut
Est ce que tu as regardé le code ? j'ai commenté
| Code: |
Range("A2").Value = prenom.Value
|
A2 est la cellule ou l'information saisie dans la TextBox prenom va aller, tu as juste à dire ou ça va, et à créer les zones texte sur ton UserForm.
Quand tu créés une TextBox dans la partie sur la gauche, tu as la ligne (name) c'est le nom de la TextBox, je te conseille de lui donner un nom (sans accens et sans espace) comme pour la TextBox prenom, sinon elles s'appelleront TextBox1, TextBox2 etc, Etc.... .
Pour la date c'est un peu pareil :
| Code: | | Range("naissance").Value = CDate(date_naissance.Value) |
Il faut juste rajouter CDate avec les parenthèses, pour qu'excel sache que c'est une date. Tu peux donx mettre la date que tu veux, tu n'as qu'à renommer la TextBox et le Label comme tu veux.
Pour lui indiquer sur quel onglet ou l'info doit être mis tu rajoutes le bout e code que je t'ai donné précédemment :
| Code: | Sheets("Feuil2").Select
Range("A2").Value = prenom.Value
|
Ca seletctionne Feuil2, à toi de mettre le nom de ton onglet.
Comme je te l'ai indiqué dans le code, je te conseille de nommer tes cellules ex: A3 =naissance, tu mets dans le code naissance, et ça ira dans naissance quelque soit l'endroit ou ça se trouve.
Ex : Range("A2").Value = prenom.Value va ranger l'info dans A2
Range("prenom").Value = prenom.Value va ranger l'info dans la cellule que tu auras nommer prenom.
Si tu rajoute une ligne entre A1 et A2 la valeur ira dans la cellule A2, il te faudra donc aller dans le vba et renommer la cellule en A3.
Si la cellule est nommé prenom (A2) et que tu rajoutes une migne prenom sera automatiquement en A3 et tu n'auras pas besoin de faire de modif dans le code.
Voila j'espere que c'est clair.
Tcho _________________ Voter pour se site ----->
Merci !! |
|
| Revenir en haut |
|
 |
Frédéric Maître


Inscrit le: 13 Mai 2006 Messages: 590
Points: 11830
|
Posté le: 22 Nov 2006 à 19:04 Sujet du message: |
|
|
Merci c'est bon j'ai regardé le code
Tcho _________________
 |
|
| Revenir en haut |
|
 |
Frédéric Maître


Inscrit le: 13 Mai 2006 Messages: 590
Points: 11830
|
Posté le: 22 Nov 2006 à 19:34 Sujet du message: |
|
|
| Tee Shot a écrit: | Salut
Comme je te l'ai indiqué dans le code, je te conseille de nommer tes cellules ex: A3 =naissance, tu mets dans le code naissance, et ça ira dans naissance quelque soit l'endroit ou ça se trouve.
Ex : Range("A2").Value = prenom.Value va ranger l'info dans A2
Range("prenom").Value = prenom.Value va ranger l'info dans la cellule que tu auras nommer prenom.
Si tu rajoute une ligne entre A1 et A2 la valeur ira dans la cellule A2, il te faudra donc aller dans le vba et renommer la cellule en A3.
Si la cellule est nommé prenom (A2) et que tu rajoutes une migne prenom sera automatiquement en A3 et tu n'auras pas besoin de faire de modif dans le code.
Voila j'espere que c'est clair.
Tcho |
Ok mais le nom... ne se rajoutent pas à la suite. Comment faire pour que ça se rajoute?
Tcho _________________
 |
|
| Revenir en haut |
|
 |
Frédéric Maître


Inscrit le: 13 Mai 2006 Messages: 590
Points: 11830
|
Posté le: 23 Nov 2006 à 18:32 Sujet du message: |
|
|
Je pense que tu n'as pas vu mon dernier message donc je fait un petit up
Tcho _________________
 |
|
| Revenir en haut |
|
 |
Tee Shot Admin


Inscrit le: 09 Jan 2004 Messages: 2308 Game Trophies: 5 Membre du Hall de Célébrités
Localisation: Bordeaux (St Jean D'illac) Points: 41545
|
Posté le: 23 Nov 2006 à 19:32 Sujet du message: |
|
|
effectivement je n'ai pas vu ton message.
Pour que ça se rajoute à la suite, il faut que tu rajoute une ligne dans la macro :
| Code: | Range("A2").Value = prenom.Value
|
"A2" correspond à la cellule ou tu veux que la valeur aille se mettre et prenom correspond au nom de ta Textbox.
Tu as bien créé une TextBox sur le userForm ?
Pour voir le nom de la TextBox tu la selectionnes et tu as la nom dans la partie gauche de VBA ou il y name.
Si tu veux quelque chose d'infini qui met en dessous au fur et à mesure, c'est plus compliqué et je me souviens pas du code exact, mais je peux le trouver. _________________ Voter pour se site ----->
Merci !! |
|
| Revenir en haut |
|
 |
Frédéric Maître


Inscrit le: 13 Mai 2006 Messages: 590
Points: 11830
|
Posté le: 24 Nov 2006 à 06:57 Sujet du message: |
|
|
Merci. En fait c'est la deuxième solution que je"veux". Je voudrais que ça se met en dessous au fur et à mesure. Mais bon si tu sais pas ce n'est pas trop grave
Tcho _________________
 |
|
| Revenir en haut |
|
 |
Tee Shot Admin


Inscrit le: 09 Jan 2004 Messages: 2308 Game Trophies: 5 Membre du Hall de Célébrités
Localisation: Bordeaux (St Jean D'illac) Points: 41545
|
Posté le: 24 Nov 2006 à 07:44 Sujet du message: |
|
|
Il me faut plus de renseignements :
Tu as combien de TextBox sur le UserForm ?
il faut que ça aille dessous à chaque ouverture, ou tu vas saisir plusieurs fois la textbox, ça se met dessous et une fois finie tu fermes le UserForm.
Le mieux c'est que tu me dises tout ou que tu me fasses ton fichier excel et que tu m'indiques exactement ce que tu veux.
Tcho _________________ Voter pour se site ----->
Merci !! |
|
| Revenir en haut |
|
 |
Frédéric Maître


Inscrit le: 13 Mai 2006 Messages: 590
Points: 11830
|
Posté le: 24 Nov 2006 à 12:47 Sujet du message: |
|
|
Je vais essayer de tout te dire, mais je ne pense pas que ça va être évident.
Alors en fait j'ai 4 TextBox, mais je pense juste à un truc peux tu le faire sur les fichier excel que tu m'avais fait auparavent (le fichier avec la macro qui s'ouvre automatiquement au démarrage)?
Tcho _________________
 |
|
| Revenir en haut |
|
 |
|
|
|