| |
Consulter les messages sans réponse | Consulter les sujets actifs
|
Page 1 sur 1
|
[ 8 message(s) ] |
|
| Auteur |
Message |
|
EinsteinBQAT
|
Publié: 16 Août 2002, 19:50 |
|
Inscription : 17 Mars 2002, 00:32 Message(s) : 613 Localisation : Montréal
|
|
En fait, c'est du code VB pour les applications (le VBA).
Je n'y connais pas grand chose dans ce langage (mais je me débrouille) et je voudrais, néanmoins, faire en sorte que, dans Excel, l'utilisateur fournisse la date selon le format de date courte du système, et qu'Excel, avec la date entrée, calcule lui-même le reste du calendrier.
Le hic, la date qui doit apparaître doit correspondre uniquement au jour. En d'autres mots, le mois et l'année ne sont pas affichés, étant cependant nécessaire pour faire un calcul exact des dates. Si seul le jour est entré, le mois et l'année correspondront à [janvier 1900] ou [janvier 1901], tout dépendant de la configuration que vous avez opté dans Excel.
Par exemple, sur mon système, le format de date courte est la suivante: [JJ.MM.AAAA] Donc, la date d'aujourd'hui serait affichée comme étant [16.08.2002].
Ainsi, disons que j'ouvre [fichier.xls]. Une fois l'ouverture faite, une boîte de dialogue s'ouvre automatiquement et demande à l'utilisateur d'entrer la date en utilisant le format de courte date de son système. Il valide son entrée et Excel calcul le reste. Le problème est que j'arrive à faire tout cela, mais Excel m'affiche la date du premier jour, et uniquement le premier jour, dans le même format qu'il a été entré dans la boîte de dialogue.
Prenons le mois de juillet, par exemple. Dans la boîte de dialogue, j'entrerais [01.07.2002] et validerais l'entrée. Excel va affichier que le [2] est un mardi, le 3 un mercredi, etc. Cependant, à la place d'afficher le [1] comme lundi, il va afficher le [01.07.2002] comme étant lundi. La date n'est pas mauvaise en tant que telle, mais c'est le fait que la date est affichée au complet à la place de n'afficher que le [1].
Quelqu'un aurait une idée du comment je pourrais régler le problème?
Une autre restriction... les samedis et dimanches ne sont pas affichés.
_________________ EinsteinBQAT, Membre des forums Micro.Info
Étudiant à temps plein à l'Université de Montréal en doctorat en médecine dentaire (DMD). PowerBook 17" WS- 1,5 GHz PowerPC G4 - 2 GB DDR SDRAM - Mac OS X 10.4.x (Tiger) - ATI Mobility Radeon 9700 128 MB DDR iPod 3G - 20 GB
|
|
| Haut |
|
 |
|
Gervais
|
Publié: 16 Août 2002, 21:30 |
|
Inscription : 07 Jan 2002, 20:36 Message(s) : 637 Localisation : Côte-Nord, Québec
|
Bonjour,
Il y a Sicaire qui ma déjà aidé pour du code VB dans Excel. Il a l'air de bien le maitriser. Moi j'avais poser ma question dans la section logiciel. Fait une recherche avec l'auteur Sicaire Au pire envoie lui un message privé.
Bonne chance. 
|
|
| Haut |
|
 |
|
Sicaire
|
Publié: 20 Août 2002, 15:22 |
|
Inscription : 08 Jan 2002, 11:08 Message(s) : 575
|
Je ne suis pas certain ce que tu veux faire exactement ????
Envoie mon ton code pour que je puisse le regarder...
J'ai fait un petit bout de code qui peut peut-être t'intéresser.
Tu lui donne une date "2002-08-20" et il écrit le reste du mois dans une cellule correspondant au jour de la semaine du dimanche au samedi.
Exemple:
-- -- 20 21 22 23 24
25 26 27 28 29 30 31
Code : Private Sub cmdButton_Click()
Dim ValeurDate As Date Dim iRow As Integer Dim iColumn As Integer ValeurDate = frmMain.txtDate iRow = 1 iColumn = Weekday(ValeurDate) CurrentMonth = Month(ValeurDate) Do Until CurrentMonth < Month(ValeurDate) Sheet1.Cells(iRow, iColumn) = Day(ValeurDate) iColumn = iColumn + 1 If Weekday(ValeurDate) = 7 Then iRow = iRow + 1 iColumn = 1 End If ValeurDate = ValeurDate + 1 Loop End Sub
Dans mon exemple ton formulaire doit ce nommé frmMain, ton textbox txtDate et ton bouton cmdButton.
|
|
| Haut |
|
 |
|
EinsteinBQAT
|
Publié: 20 Août 2002, 21:41 |
|
Inscription : 17 Mars 2002, 00:32 Message(s) : 613 Localisation : Montréal
|
|
Donne-moi jusqu'à ce weekend et je te réponds. Je n'ai pas vraiment beaucoup de temps présentement.
_________________ EinsteinBQAT, Membre des forums Micro.Info
Étudiant à temps plein à l'Université de Montréal en doctorat en médecine dentaire (DMD). PowerBook 17" WS- 1,5 GHz PowerPC G4 - 2 GB DDR SDRAM - Mac OS X 10.4.x (Tiger) - ATI Mobility Radeon 9700 128 MB DDR iPod 3G - 20 GB
Dernière édition par EinsteinBQAT le 24 Août 2002, 17:11, édité 1 fois.
|
|
| Haut |
|
 |
|
EinsteinBQAT
|
Publié: 24 Août 2002, 17:11 |
|
Inscription : 17 Mars 2002, 00:32 Message(s) : 613 Localisation : Montréal
|
|
Salut!
Ton affaire fonctionne, je l'ai un peu modifié pour qu'elle sied à ce dont j'ai besoin. Merci beaucoup.
Maintenant, j'essaie de faire en sorte que lorsque l'utilisateur cllique sur OK à la fin pour terminer, Excel lui demande d'enregistrer le fichier sous un nom quelconque.
Tout ce que j'arrive à faire, c'est de créer un nouveau document XLS et demander à ce que ce nouveau document sous enregistrer sous un nom donné par l'utilisateur.
Or, je VEUX un ENREGISTRER SOUS (Save As) pour un document déjà existant.
Comment fais-je?
Merci beaucoup.
_________________ EinsteinBQAT, Membre des forums Micro.Info
Étudiant à temps plein à l'Université de Montréal en doctorat en médecine dentaire (DMD). PowerBook 17" WS- 1,5 GHz PowerPC G4 - 2 GB DDR SDRAM - Mac OS X 10.4.x (Tiger) - ATI Mobility Radeon 9700 128 MB DDR iPod 3G - 20 GB
|
|
| Haut |
|
 |
|
Jump
|
Publié: 24 Août 2002, 17:22 |
|
Inscription : 07 Jan 2002, 00:24 Message(s) : 5834
|
EinsteinBQAT a écrit: Salut!
Ton affaire fonctionne, je l'ai un peu modifié pour qu'elle sied à ce dont j'ai besoin. Merci beaucoup.
Maintenant, j'essaie de faire en sorte que lorsque l'utilisateur cllique sur OK à la fin pour terminer, Excel lui demande d'enregistrer le fichier sous un nom quelconque.
Tout ce que j'arrive à faire, c'est de créer un nouveau document XLS et demander à ce que ce nouveau document sous enregistrer sous un nom donné par l'utilisateur.
Or, je VEUX un ENREGISTRER SOUS (Save As) pour un document déjà existant.
Comment fais-je?
Merci beaucoup.
Je fais pas de VBA, mais pour la fenêtre de dialogue tu peux utiliser le contrôle common dialog, il est pas disponible par défaut, clic de la droite sur la boite d'outil et fait add component, sélectionne Microsoft Common dialog. Va voir dans le MSDN pour plus d'info sur son utilisation tout est là. Sinon tu peux aussi le faire avec les API... mais là va falloir faire tes recherches toi même ( http://www.allapi.net, http://www.mvps.org/vbnet)
_________________ This posting is provided "AS IS" with no warranties, and confers no rights! ©2006 - 2014 Jump
|
|
| Haut |
|
 |
|
Sicaire
|
Publié: 26 Août 2002, 09:48 |
|
Inscription : 08 Jan 2002, 11:08 Message(s) : 575
|
La meilleur méthode selon moi c'est comme Jump a dit !!!
C'est utiliser le "Microsoft Common dialog" c'est beaucoup plus "user friendly"....
Mais si tu veux une méthode simple :
Code : Dim sFilePath As String Dim FileFormat FileFormat = xlNormal sFilePath = "C:\test.xls" ActiveWorkbook.SaveAs Filename:=sFilePath, FileFormat:=FileFormat, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False, CreateBackup:=False
|
|
| Haut |
|
 |
|
EinsteinBQAT
|
Publié: 27 Août 2002, 08:29 |
|
Inscription : 17 Mars 2002, 00:32 Message(s) : 613 Localisation : Montréal
|
Merci à vous deux!!! C'est très apprécié. 
_________________ EinsteinBQAT, Membre des forums Micro.Info
Étudiant à temps plein à l'Université de Montréal en doctorat en médecine dentaire (DMD). PowerBook 17" WS- 1,5 GHz PowerPC G4 - 2 GB DDR SDRAM - Mac OS X 10.4.x (Tiger) - ATI Mobility Radeon 9700 128 MB DDR iPod 3G - 20 GB
|
|
| Haut |
|
 |
|
Page 1 sur 1
|
[ 8 message(s) ] |
|
Qui est en ligne ? |
Utilisateur(s) parcourant ce forum : Aucun utilisateur inscrit et 1 invité |
|
Vous ne pouvez pas publier de nouveaux sujets dans ce forum Vous ne pouvez pas répondre aux sujets dans ce forum Vous ne pouvez pas éditer vos messages dans ce forum Vous ne pouvez pas supprimer vos messages dans ce forum
|
|
|
|