Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Access > VBA Access
VBA Access Le forum pour les questions relatives au code VBA sous Access, et à son environnement de développement VBE.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 11/12/2011, 19h51   #1
Membre habitué
 
Inscription : août 2005
Messages : 365
Détails du profil
Informations personnelles :
Âge : 44
Localisation : France, Gironde (Aquitaine)

Informations professionnelles :
Secteur : Santé

Informations forums :
Inscription : août 2005
Messages : 365
Points : 105
Points : 105
Par défaut Boucle sur textBox

Bonjour à tous

Mon sous formulaire contient une trentaine de champs de type texte. J'aimerai qu'à l'ouverture du formulaire contenant le sous formulaire, des etiquettes soient visible si le champ n'est pas vide ou non visible si le champ contient des données. Mais le champ peut avoir été effacé auqeul cas il n'est pas null mais contient la valeur "". Le but est que l'étiquette est une croix rouge qui permet d'effacer le champ sur clic. J'ai nommé l'étiquette du même nom que le champ mais avec le préfixe "suppr_".
voici le code que j'essaie:

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
 
Private Sub Form_Open(Cancel As Integer)
 
    Dim ctl As Control
    Dim monchamp As String
    For Each ctl In Me.Controls
        If ctl.ControlType = acTextBox Then
            If IsNull(ctl.Value) Or ctl.Value = "" Then
              Me.Controls("Suppr_" & ctl.Name).Visible = False
            End If
        End If
    Next ctl
End Sub
J'ai bien essayé d'autre combinaisons mais aucune ne fonctionne.
Avez-vous une suggestions
Merci d'avance
docjo est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/12/2011, 20h59   #2
Expert Confirmé
 
Avatar de vodiem
 
Homme Diem VO
Vivre
Inscription : avril 2006
Messages : 2 644
Détails du profil
Informations personnelles :
Nom : Homme Diem VO
Âge : 40
Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

Informations professionnelles :
Activité : Vivre
Secteur : Conseil

Informations forums :
Inscription : avril 2006
Messages : 2 644
Points : 3 895
Points : 3 895
salut docjo,
ce n'est pas très clair:
Citation:
Envoyé par docjo
soient visible si le champ n'est pas vide ou non visible si le champ contient des données
je comprends: visible si champ pas vide ou invisible si champ pas vide...
ni ce que fait "la croix rouge" dans cette histoire...

ton code étant fonctionnel, si tu veux t'adresser du formulaire au sous formulaire il faut changer Me.Controls par [sous form].Form.Controls
si c'est ça le soucis...
vodiem est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/12/2011, 21h39   #3
Membre habitué
 
Inscription : août 2005
Messages : 365
Détails du profil
Informations personnelles :
Âge : 44
Localisation : France, Gironde (Aquitaine)

Informations professionnelles :
Secteur : Santé

Informations forums :
Inscription : août 2005
Messages : 365
Points : 105
Points : 105
C'est vrai que ce n'est pas clair mon truc !
Je veux qu'une petite croix rouge apparaisse à droite de chaque champ que l'utilisateur aura rempli. La fonction de cette croix rouge est de supprimer le contenu du champ sur clic plutot que de selectionner le champ et supprimer son contenu. Une fois le contenu supprimé, la croix disparait.
J'essaie de changer Me.controls.
docjo est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/12/2011, 15h16   #4
Membre du Club
 
Développeur informatique
Inscription : décembre 2008
Messages : 43
Détails du profil
Informations personnelles :
Âge : 49

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : décembre 2008
Messages : 43
Points : 46
Points : 46
Salut,

Où as-tu mis le code ci-dessus ?
Dans Le formulaire ou dans le sous-formulaire ?
Je pense qu'il faut le mettre dans OnOpen du sous-formulaire.
NguyenRD est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 01h23.


 
 
 
 
Partenaires

Hébergement Web