Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Excel > Macros et VBA Excel
Macros et VBA Excel Vos questions relatives aux macros Excel, à l'utilisation de VBA et à l'automatisation de vos classeurs Excel.
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 04/10/2011, 12h36   #1
Invité de passage
 
Inscription : septembre 2008
Messages : 121
Détails du profil
Informations forums :
Inscription : septembre 2008
Messages : 121
Points : 4
Points : 4
Par défaut Largeur TexBox sur USF

Bonjour

Voila j'aimerais savoir s'il était possible de changer la largeur de plusieurs textBox se trouvant sur un USF a l'aide d'un CheckBox, les textBox mesurant actuellement a "60" j'aimerais les passer a 100 via le checkBox?

Un très grand merci à tout ceux qui pourront m'aider..

Cordialement

Max
apdf1 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/10/2011, 13h06   #2
Membre Expert
 
Avatar de Jean-Pierre49
 
Homme J-Pierre Catherine
Conception Calcul
Inscription : juillet 2007
Messages : 659
Détails du profil
Informations personnelles :
Nom : Homme J-Pierre Catherine
Âge : 57
Localisation : France, Maine et Loire (Pays de la Loire)

Informations professionnelles :
Activité : Conception Calcul
Secteur : Industrie

Informations forums :
Inscription : juillet 2007
Messages : 659
Points : 1 856
Points : 1 856
Bonjour

A améliorer

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
Private Sub CheckBox1_Click()
    If Me.CheckBox1.Value = True Then
        Me.TextBox1.Width = 100
        Me.TextBox2.Width = 100
        Me.TextBox3.Width = 100
        Me.TextBox4.Width = 100
    Else
        Me.TextBox1.Width = 60
        Me.TextBox2.Width = 60
        Me.TextBox3.Width = 60
        Me.TextBox4.Width = 60
    End If
End Sub
Par exemple
__________________
Jean-Pierre Pensez à Voter pour les réponses qui vous ont aidés, d'avance merci
---------Et n'oubliez pas de mettre : ..quand c'est le cas !---------
Jean-Pierre49 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/10/2011, 14h19   #3
Invité de passage
 
Inscription : septembre 2008
Messages : 121
Détails du profil
Informations forums :
Inscription : septembre 2008
Messages : 121
Points : 4
Points : 4
Bonjour Jean Pierre

Je te remercie beaucoup de ton aide, si je peut abusé comment déplacer les textBox, je m'explique.
Si je prend 8 textBox je vais réduire grasse a ton code les textBox Impair à "60" j'aimerais si possible bien sur rapprocher les textBox l'une contre l'autre.
Je ne sais si ces possible !

Un grand merci d'avance

@+
Max
apdf1 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/10/2011, 14h33   #4
Membre Expert
 
Avatar de Jean-Pierre49
 
Homme J-Pierre Catherine
Conception Calcul
Inscription : juillet 2007
Messages : 659
Détails du profil
Informations personnelles :
Nom : Homme J-Pierre Catherine
Âge : 57
Localisation : France, Maine et Loire (Pays de la Loire)

Informations professionnelles :
Activité : Conception Calcul
Secteur : Industrie

Informations forums :
Inscription : juillet 2007
Messages : 659
Points : 1 856
Points : 1 856
Cela peut donner ceci

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
Private Sub CheckBox1_Click()
Dim depart As Integer
Dim CompA As Byte
depart = 24 ' le left du premier
 
    If Me.CheckBox1.Value = True Then
        For CompA = 1 To 4
            Me.Controls("TextBox" & CompA).Width = 100
        Next
    Else
        For CompA = 1 To 4
            Me.Controls("TextBox" & CompA).Width = 60
        Next
    End If
 
    For CompA = 1 To 4
        If CompA = 1 Then
            Me.Controls("TextBox" & CompA).Left = 24
        Else
            depart = depart + Me.Controls("TextBox" & CompA).Width
            Me.Controls("TextBox" & CompA).Left = depart
        End If
    Next
End Sub
A adapter

Bon courage
__________________
Jean-Pierre Pensez à Voter pour les réponses qui vous ont aidés, d'avance merci
---------Et n'oubliez pas de mettre : ..quand c'est le cas !---------
Jean-Pierre49 est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 04/10/2011, 14h33   #5
Invité de passage
 
Inscription : septembre 2008
Messages : 121
Détails du profil
Informations forums :
Inscription : septembre 2008
Messages : 121
Points : 4
Points : 4
Re,

Voila j'ai ceci y a t-il pas plus simple ?
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
Private Sub CheckBox1_Click()
    If Me.CheckBox1.Value = True Then
 
        Me.TextBox1.Width = 100
             Me.TextBox2.Left = 132
             Me.TextBox3.Left = 240
             Me.TextBox4.Left = 342
        Me.TextBox5.Width = 100
             Me.TextBox6.Left = 132
             Me.TextBox7.Left = 240
             Me.TextBox8.Left = 342
        Me.TextBox9.Width = 100
             Me.TextBox10.Left = 132
             Me.TextBox11.Left = 240
             Me.TextBox12.Left = 342
        Me.TextBox13.Width = 100
             Me.TextBox14.Left = 132
             Me.TextBox15.Left = 240
             Me.TextBox16.Left = 342
        Me.TextBox3.Width = 100
        Me.TextBox7.Width = 100
        Me.TextBox11.Width = 100
        Me.TextBox15.Width = 100
    Else
 
        Me.TextBox1.Width = 60
             Me.TextBox2.Left = 96
             Me.TextBox3.Left = 198
             Me.TextBox4.Left = 264
        Me.TextBox5.Width = 60
             Me.TextBox6.Left = 96
             Me.TextBox7.Left = 198
             Me.TextBox8.Left = 264
        Me.TextBox9.Width = 60
             Me.TextBox10.Left = 96
             Me.TextBox11.Left = 198
             Me.TextBox12.Left = 264
        Me.TextBox13.Width = 60
             Me.TextBox14.Left = 96
             Me.TextBox15.Left = 198
             Me.TextBox16.Left = 264
        Me.TextBox3.Width = 60
        Me.TextBox7.Width = 60
        Me.TextBox11.Width = 60
        Me.TextBox15.Width = 60
    End If
End Sub
@+

Max
apdf1 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/10/2011, 14h35   #6
Membre Expert
 
Avatar de Jean-Pierre49
 
Homme J-Pierre Catherine
Conception Calcul
Inscription : juillet 2007
Messages : 659
Détails du profil
Informations personnelles :
Nom : Homme J-Pierre Catherine
Âge : 57
Localisation : France, Maine et Loire (Pays de la Loire)

Informations professionnelles :
Activité : Conception Calcul
Secteur : Industrie

Informations forums :
Inscription : juillet 2007
Messages : 659
Points : 1 856
Points : 1 856
Regarde plus haut
__________________
Jean-Pierre Pensez à Voter pour les réponses qui vous ont aidés, d'avance merci
---------Et n'oubliez pas de mettre : ..quand c'est le cas !---------
Jean-Pierre49 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/10/2011, 14h59   #7
Invité de passage
 
Inscription : septembre 2008
Messages : 121
Détails du profil
Informations forums :
Inscription : septembre 2008
Messages : 121
Points : 4
Points : 4
re,

Oui ces cela, sauf qu'il faudrait que les textbox quand il se resserre entre eux garde toujours leurs largeur c'est-à-dire
1°)60 2°) 100 3°) 60 4°) 100

@+

Max
apdf1 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/10/2011, 15h09   #8
Membre Expert
 
Avatar de Jean-Pierre49
 
Homme J-Pierre Catherine
Conception Calcul
Inscription : juillet 2007
Messages : 659
Détails du profil
Informations personnelles :
Nom : Homme J-Pierre Catherine
Âge : 57
Localisation : France, Maine et Loire (Pays de la Loire)

Informations professionnelles :
Activité : Conception Calcul
Secteur : Industrie

Informations forums :
Inscription : juillet 2007
Messages : 659
Points : 1 856
Points : 1 856
Après modif

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
Private Sub CheckBox1_Click()
Dim depart As Integer
Dim CompA As Byte
depart = 24 ' le left du premier
 
    If Me.CheckBox1.Value = True Then
        For CompA = 1 To 4 Step 2
            Me.Controls("TextBox" & CompA).Width = 100
        Next
    End If
 
    For CompA = 1 To 4
        If CompA = 1 Then
            Me.Controls("TextBox" & CompA).Left = 24
        Else
            Me.Controls("TextBox" & CompA).Left = depart
        End If
        depart = depart + Me.Controls("TextBox" & CompA).Width
    Next
End Sub
__________________
Jean-Pierre Pensez à Voter pour les réponses qui vous ont aidés, d'avance merci
---------Et n'oubliez pas de mettre : ..quand c'est le cas !---------
Jean-Pierre49 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/10/2011, 09h13   #9
Invité de passage
 
Inscription : septembre 2008
Messages : 121
Détails du profil
Informations forums :
Inscription : septembre 2008
Messages : 121
Points : 4
Points : 4
Bonjour Jean Pierre,

Je te remercie et te souhaite une bonne journée

@+

Max
apdf1 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 04h05.


 
 
 
 
Partenaires

Hébergement Web