Lecture des propriétés des atributs

Résolu
Mahdiiag Messages postés 34 Date d'inscription lundi 9 mai 2011 Statut Membre Dernière intervention 21 mai 2012 - 17 mai 2012 à 12:13
NHenry Messages postés 15112 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 13 avril 2024 - 21 mai 2012 à 18:57
j'ai une tableau excel qui contion 3 colonnes
(1) form: contient les composants de form par exmple label1.caption,label2.caption
(2) Arabe:contient le caption de cet label en arabe
(3)français:contient le caption de cet label en français
Mon tache est de trouver une solution pour concaténé ces valeur sans ecrire dans vb labelX.caption=...
je dois ecrire Form.(colonne1)=(colonne2)
j'ai essayé avec cet exemple mais j'ai une erreur :(
Private Sub DataCombo1_Click(Area As Integer)
Dim xls As New Class1
Dim l, la, k, R As String


xls.DBConnect "C:\Users\mourad\Documents\langue.xls", True

Text1.Text = DataCombo1.Text




' select sur 1ère colonne
xls.RSExecute "SELECT form , [" & DataCombo1.BoundText & "]FROM [Arabe$];"


k = xls.RS.Fields(0).Value
R = xls.RS.Fields(1).Value

Form1.k = R

xls.RS.MoveNext

'Label2.Caption = xls.RS.Fields(1).Value


'affiche le 1e enregistrement
'MsgBox xls.RS.Fields(0).Value
Set xls = Nothing

End Sub

14 réponses

NHenry Messages postés 15112 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 13 avril 2024 159
17 mai 2012 à 15:55
Bonjour,

Tu n'as vraiment pas cherché, car même en regardant dans la donc, tout est dit :
Private Sub Form_Load()
    SetValue Me, "Form1.LblTest.Caption", "Réussi"
End Sub

Private Sub SetValue(ByVal pForm As Form, ByVal pName As String, ByVal pValue As String)
    Dim ltNames() As String
    ltNames = Split(pName, ".")
    
    If pForm.Name <> ltNames(0) Then
        Exit Sub
    End If
    
    Dim lCtl As Control
    Set lCtl = pForm.Controls(ltNames(1))
    
    CallByName lCtl, ltNames(2), VbLet, pValue
End Sub


---------------------------------------------------------------------
[list=ordered][*]Pour poser correctement une question et optimiser vos chances d'obtenir des réponses, pensez à lire le règlement CS, celui-ci pour bien poser votre question ou encore celui-ci pour les PFE et autres exercices[*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : )
[*]En VB.NET pensez à activer Option Explicit et Option Strict (propriété du projet) et à retirer l'import automatique de l'espace de nom Microsoft.VisualVasic (onglet Références dans les propriétés du projet).
[*]Si votre problème est résolu (et uniquement si c'est le cas), pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés./list
---
Mon site
3
NHenry Messages postés 15112 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 13 avril 2024 159
17 mai 2012 à 17:38
Bonjour,

Il faut appeler cette méthode lors du chargement de la form, donc, modifier une form fermée n'a pas de sens.

---------------------------------------------------------------------
[list=ordered][*]Pour poser correctement une question et optimiser vos chances d'obtenir des réponses, pensez à lire le règlement CS, celui-ci pour bien poser votre question ou encore celui-ci pour les PFE et autres exercices[*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : )
[*]En VB.NET pensez à activer Option Explicit et Option Strict (propriété du projet) et à retirer l'import automatique de l'espace de nom Microsoft.VisualVasic (onglet Références dans les propriétés du projet).
[*]Si votre problème est résolu (et uniquement si c'est le cas), pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés./list
---
Mon site
3
Mahdiiag Messages postés 34 Date d'inscription lundi 9 mai 2011 Statut Membre Dernière intervention 21 mai 2012
17 mai 2012 à 13:20
pas de soulution :(( !!!!
0
NHenry Messages postés 15112 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 13 avril 2024 159
17 mai 2012 à 14:45
Bonjour,

Saches qu'ici, on est des bénévoles, donc les réponses peuvent mettre un peu de temps pour arriver.

Concernant ton problème, tu parles de Label, puis de DataGrid.
Cela choque un peu.

Ce que tu peux faire, par exemple, c'est faire :
3 colonnes, NomComposant, Français, Arabe.

Ensuite, tu parcours MaForm.Controls et pour chaque control si le nom de ce composant est connu, alors, tu lui assigne la bonne valeur.

---------------------------------------------------------------------
[list=ordered][*]Pour poser correctement une question et optimiser vos chances d'obtenir des réponses, pensez à lire le règlement CS, celui-ci pour bien poser votre question ou encore celui-ci pour les PFE et autres exercices[*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : )
[*]En VB.NET pensez à activer Option Explicit et Option Strict (propriété du projet) et à retirer l'import automatique de l'espace de nom Microsoft.VisualVasic (onglet Références dans les propriétés du projet).
[*]Si votre problème est résolu (et uniquement si c'est le cas), pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés./list
---
Mon site
0

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

Posez votre question
Mahdiiag Messages postés 34 Date d'inscription lundi 9 mai 2011 Statut Membre Dernière intervention 21 mai 2012
17 mai 2012 à 15:19
je pense mon ami qui tu n'a pas bien compris mon problème et j'ai pas utilisé dataGRID
mon problème que je veux à partir de fichier excel changer mon langue c'est à dire l’utilisateur s'il choisi la langue arabe ou france je dois changer la langue de tous les controls de form et je cherche une solution très simple
qui permet charger à partir d'un excel le nom des form et ces controls ainsi c'est valeur selon le langue choisi
donc pour mon exemple j'ai essayé
k = xls.RS.Fields(0).Value 'exemple contient label1.caption
R = xls.RS.Fields(1).Value 'contient valeur de set label exp xxxxx

Form1.k = R 'c'est à dire form1.label1.caption=xxxx
tu m'as compris??
0
NHenry Messages postés 15112 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 13 avril 2024 159
17 mai 2012 à 15:29
Bonjour,

D'accord, tu utilises Excel comme base de données.

Concernant le nom de la form, tu peucx le récupérer race à Me.Name, je pense.
Pour les controles, tu as la liste dans Me.Controls.
Ensuite, pour la propriété, peut être avec CallByName ou similaire.

---------------------------------------------------------------------
[list=ordered][*]Pour poser correctement une question et optimiser vos chances d'obtenir des réponses, pensez à lire le règlement CS, celui-ci pour bien poser votre question ou encore celui-ci pour les PFE et autres exercices[*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : )
[*]En VB.NET pensez à activer Option Explicit et Option Strict (propriété du projet) et à retirer l'import automatique de l'espace de nom Microsoft.VisualVasic (onglet Références dans les propriétés du projet).
[*]Si votre problème est résolu (et uniquement si c'est le cas), pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés./list
---
Mon site
0
Mahdiiag Messages postés 34 Date d'inscription lundi 9 mai 2011 Statut Membre Dernière intervention 21 mai 2012
17 mai 2012 à 15:41
Merci pour ton aide mais SVP mon ami tu peux mieux préciser c.a.d donner une exemple
0
Mahdiiag Messages postés 34 Date d'inscription lundi 9 mai 2011 Statut Membre Dernière intervention 21 mai 2012
17 mai 2012 à 15:45
mais moi je ne veux pas récupérer les paramètres mais je veux charger les paramétres contoles(bouton ou labelou...) et les frames à partir de fichier excel
0
Mahdiiag Messages postés 34 Date d'inscription lundi 9 mai 2011 Statut Membre Dernière intervention 21 mai 2012
17 mai 2012 à 15:58
Vraiment Merci beaucoupppp frère
0
Mahdiiag Messages postés 34 Date d'inscription lundi 9 mai 2011 Statut Membre Dernière intervention 21 mai 2012
17 mai 2012 à 16:34
Est ce que c'est pas possible de modifier les propriétés d'une form fermer c'est une autre form !!!
0
Mahdiiag Messages postés 34 Date d'inscription lundi 9 mai 2011 Statut Membre Dernière intervention 21 mai 2012
21 mai 2012 à 11:30
SVP est ce que c'est possible de changer avec la méthode " CallByName" les msgBox , les zone de text ou nom de la form et merci d'avance
0
NHenry Messages postés 15112 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 13 avril 2024 159
21 mai 2012 à 13:07
Bonjour,

As-tu lu la doc concernant CallByName ?
As-tu compris pourquoi cette instruction était utilisée ?

---------------------------------------------------------------------
[list=ordered][*]Pour poser correctement une question et optimiser vos chances d'obtenir des réponses, pensez à lire le règlement CS, celui-ci pour bien poser votre question ou encore celui-ci pour les PFE et autres exercices[*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : )
[*]En VB.NET pensez à activer Option Explicit et Option Strict (propriété du projet) et à retirer l'import automatique de l'espace de nom Microsoft.VisualBasic (onglet Références dans les propriétés du projet).
[*]Si votre problème est résolu (et uniquement si c'est le cas), pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés./list
---
Mon site
0
Mahdiiag Messages postés 34 Date d'inscription lundi 9 mai 2011 Statut Membre Dernière intervention 21 mai 2012
21 mai 2012 à 14:00
oui :(
0
NHenry Messages postés 15112 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 13 avril 2024 159
21 mai 2012 à 18:57
Bonjour,

Pour les MsgBox, pas besoin de CallByName, tu prends directement la traduction.

---------------------------------------------------------------------
[list=ordered][*]Pour poser correctement une question et optimiser vos chances d'obtenir des réponses, pensez à lire le règlement CS, celui-ci pour bien poser votre question ou encore celui-ci pour les PFE et autres exercices[*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : )
[*]En VB.NET pensez à activer Option Explicit et Option Strict (propriété du projet) et à retirer l'import automatique de l'espace de nom Microsoft.VisualBasic (onglet Références dans les propriétés du projet).
[*]Si votre problème est résolu (et uniquement si c'est le cas), pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés./list
---
Mon site
0
Rejoignez-nous