Accueil > Forum > > > > VBA - ACCESS 2002 SP3 - Création formulaire - Help !!!!!
VBA - ACCESS 2002 SP3 - Création formulaire - Help !!!!!
lundi 8 novembre 2004 à 00:21:36 |
VBA - ACCESS 2002 SP3 - Création formulaire - Help !!!!!

trymeup
|
Bonjour, je suis vraiment novice en VBA et j'ai un soucis que je n'arrive pas à régler. J'ai une requête qui me renvoie des résultats avec un nombre de colonnes qui peut varier. Donc impossible de l'afficher dans un formulaire figé. Aussi, j'ai pas mal recherché de code solutionner ce problème, et dans les sources j'ai trouvé le code suivant : http://www.vbfrance.com/code.aspx?ID=26450 Dans le principe c'est tout à fait ce qu'il me faut. Seulement voila : 1) Je n'ai pas les composants DAO dans mon Access 2002 (normal ?) mais que ADO 2) ctl.DeleteControl "F_AFFICHAGE", ctl.Name ne marche pas chez moi ! Il faudrait adapter ce bout de code en ADO, ce dont je suis incapable, et faire en sorte que cette fonction de suppression des controles du formulaire fonctionne Merci bcp de votre aide
|
|
lundi 8 novembre 2004 à 10:24:32 |
Re : VBA - ACCESS 2002 SP3 - Création formulaire - Help !!!!!

inthecorner
|
Quand tu es dans Microsoft Visual Basic.. Tu vas dans Outils--->Références. Et tu ajoutes Microsoft DAO 3.6 Object Library Amitiés 
|
|
lundi 8 novembre 2004 à 14:22:16 |
Re : VBA - ACCESS 2002 SP3 - Création formulaire - Help !!!!!

trymeup
|
Merci pour le DAO, effectivement j'avais pas du tout cherché ca au bon endroit... Bon j'ai adapté le code mentionné plus haut à mes exigences : Public Function create_form(sql As String) As Boolean Dim frm As Form Dim rst As DAO.Recordset Dim Db As DAO.Database Set Db = Application.CurrentDb Dim ctl As Control Dim i, j As Integer ' --Ouvrir le formulaire en mode modification et caché DoCmd.OpenForm "Forml_X_Etats", acDesign, , , , acHidden ' --suppression de tous les contrôles avant de les créer de nouveau For Each ctl In Forms!Forml_X_Etats.Controls ctl.DeleteControl "Forml_X_Etats", ctl.Name Next ctl ' --Source de données de mon formulaire Forms![Forml_X_Etats].RecordSource = sql Set rst = Db.OpenRecordset(sql) ' --nous ne pensons pas que vous aurez plus de 100 contrôles Dim controle(0 To 100) As Control ' --Création des contrôles If rst.RecordCount <> 0 Then i = 0 j = 1000 While i < rst.Fields.Count ' -- Créer le contrôle i Set controle(i) = CreateControl("Forml_X_Etats", acTextBox) ' --lui affecter un nom controle(i).Name = rst.Fields(i).Name ' --le positionner sur le formulaire controle(i).left = 100 + j ' --Définir sa largeur controle(i).Width = 1150 ' --source de données de ce contrôle controle(i).ControlSource = rst.Fields(i).Name i = i + 1 j = j + 1150 Wend End If
rst.Close Set rst = Nothing Set Db = Nothing ' --Sauvegarder le formulaire DoCmd.Save acForm, "Forml_X_Etats" DoCmd.Close acForm, "Forml_X_Etats" End Function
|
Le code fonctionne si le formulaire initial est vide. Seulement s'il comporte deja des controles, la fonction pour les supprimer ne marche pas : ctl.DeleteControl "Forml_X_Etats", ctl.Name[/i] ne marche pas et me donne une erreur 438 "propriété ou méthode non gérée par cet objet"
Par quoi la remplacer pour vider mon formulaire ?
Deuxième petite chose, j'aimerai que le format des contrôles que j'ajoute soit le format "standard" (nombres avec le séparateur de millier en blanc), mais je ne connais pas la syntaxe a ajouter.
Merci
|
|
lundi 8 novembre 2004 à 15:03:30 |
Re : VBA - ACCESS 2002 SP3 - Création formulaire - Help !!!!!

trymeup
|
heu... je vais me répondre tout seul :-) j'ai résolu mon problème pour effacter les controles existant, il faut simplement modifier la fonction. De plus, j'ajoute qu'utilisée telle quelle, elle ne fait pas ce qu'on lui demande: en effet, le fait de supprimer le controle dans la boucle For Each, fait sauter access au controle suivant. Donc la boucle supprime un controle sur deux. Voici le code que j'ai mis pour corriger tout cela, et qui fonctionne tant bien que mal: ' --suppression de tous les contrôles avant de les créer de nouveau boucle: i = 0
For Each ctl In Forms!Forml_X_Etats.Controls i = 1 DeleteControl "Forml_X_Etats", ctl.Name Next ctl
While i = 1 GoTo boucle: Wend
|
Merci pour ceux qui voudront bien répondre a ma deuxieme question, a savoir comment affecter le format "standard" a un controle.
|
|
Cette discussion est classée dans : vba, access, code, formulaire, sp3
Répondre à ce message
Sujets en rapport avec ce message
Exportation d'un sous formulaire access en HTML [ par Ben ]
Bonjour je désirerais exporter un sous formulaire access au format HTML grace à un bouton de commande placé sur ce formulaire, mais voila je ne connai
PB VBA ACCESS [ par milou ]
Salut a tous,Mon probleme est le suivant :J'ai un formulaire avec un sous formulaire. J'aimerai pouvoir prendre les valeur des controles qu il y a dan
code vba pour lier et afficher jes enregistrements d' un formulaire relationnel [ par micebos ]
amicallement votre collègue programmeur!salut!je voudrais savoir comment écrit_t_on, le code vba destiné à afficher les enregistrements d' un formulai
Code VBA pour Access [ par fakir51 ]
Bonjour,j' ai un formulaire comprennant plusieur champ et j'aimerai faire une procédure évènementielle qui me permette d afficher un enregistrement gr
Probleme d'enregistrement de donnees sous un formulaire Access [ par SPEEDERMENN ]
Slt,J'ai un formulaire possédant des champs, et un date and time picker control.j'ai un bouton enregistrer crée par l'assistant de Access(il génère d'
execution du code vb dans access [ par oni0013 ]
Salut,J'ai mit du code visual basic dans access dans un formulaire, mais je souhaiterai que ce code soit executé à chaque fois qu'un nouvel enregistre
Execution du code vb dans access [ par oni0013 ]
Salut,J'ai mis du code visual basic dans access dans un formulaire, mais je souhaiterai que ce code soit executé à chaque fois qu'un nouvel enregistre
access VBA : ordre de chargement de sous-formulaire [ par supergizmo ]
salut dans un formulaire, j'ai mis plusieurs sous-formulaire (huit au total). Mais la moitié de ces sous-formulaires doivent se chargés après les autr
Dates sous VBA ACCESS [ par Clonk ]
Salut!J'ai un prob sous Access.Certains l'ont peut être remarqué, mais il arrive lorsque mmC facile à régler dans un code tout bête, mais perso j'util
Transformez un formulaire access en état avec VBA [ par francky202 ]
Bonjourj'aimerai savoir si l'un d'entre vous pouvais m'epliquez comment faire pour enregistrer un formulaire en le mettant sous un état le tout de man
Livres en rapport
|
Derniers Blogs
GESTION D'EXCEPTION AVEC LES TASKSGESTION D'EXCEPTION AVEC LES TASKS par richardc
Nous avons vu dans un précédent article comment utiliser Task pour effectuer des opérations dans un autre thread.
Malheureusement, comme tout le monde n'est pas parfait, il se peut que cette exécution se passe mal et qu'une exception se produise.
La...
Cliquez pour lire la suite de l'article par richardc DéMARRONS AVEC LES TASKSDéMARRONS AVEC LES TASKS par richardc
Que vous le vouliez ou non, le développement multi-tâche est maintenant une obligation pour toute nouvelle application. Il est donc vital d'en comprendre les mécanismes et de s'y mettre le plus tôt possible.
En attendant le .NET Framework 4.5 avec le...
Cliquez pour lire la suite de l'article par richardc SLIDE & DéMO TECHDAYS 2012 - FAST & FURIOUS XAML APPSSLIDE & DéMO TECHDAYS 2012 - FAST & FURIOUS XAML APPS par Vko
Retrouvez les slides et les démo de ma session Fast & Furious XAML Apps. A ceux qui se posent la question : "est-ce que le code de la DataGrid est disponible?", je vous répondrais "pas encore". Je vais mettre en place un projet codeplex pour part...
Cliquez pour lire la suite de l'article par Vko XNA IS DEAD!XNA IS DEAD! par richardc
Depuis la semaine dernière (et grâce aux TechDays 2012), je me penche activement sur la nouvelle version de Windows, aka Windows 8. Vous me direz, il était temps puisque la première preview date de Septembre dernier.
OK. Remarquez, on n'en est qu'aux...
Cliquez pour lire la suite de l'article par richardc TECHDAYS PARIS 2012 : WINDOWS SERVER "8" QUOI DE 9 !TECHDAYS PARIS 2012 : WINDOWS SERVER "8" QUOI DE 9 ! par ROMELARD Fabrice
Speakers: Fabrice Meillon et Stanislas Quastana Cette session est basée entièrement sur celle donnée lors de la BUILD cet hiver. Il n'y a pas d'ajout d'information en rapport avec cet évènement passé. Windows 8 Server sera intégralem...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice
Logiciels
DocTranslate (V3.1.0.0)DOCTRANSLATE (V3.1.0.0)DocTranslate est un traducteur de document Microsoft Word, PowerPoint et Excel. Il permet d'autom... Cliquez pour télécharger DocTranslate Tribler (2012)TRIBLER (2012)Tribler est un client pair à pair (P2P/Peer-to-Peer) open source avec la capacité de regarder des... Cliquez pour télécharger Tribler OneSwarm (2012)ONESWARM (2012)Le peer-to-peer qui protège votre vie privée, c'est OneSwarm.
Ce logiciel de peer-to-peer crypté... Cliquez pour télécharger OneSwarm PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA TV DEVIENS HELLLOOO FLASH
LA TV SUR VOTRE ORDINATEUR.
Toute une plateforme Multi... Cliquez pour télécharger PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO Academy System (17.2.1.0)ACADEMY SYSTEM (17.2.1.0)Logiciel de gestion des établissements.
- élèves/étudiants (inscription, dossier, absence...)
-... Cliquez pour télécharger Academy System
|