Position bouton
Résolu
niny@
Messages postés
107
Date d'inscription
Statut
Membre
Dernière intervention
-
niny@ Messages postés 107 Date d'inscription Statut Membre Dernière intervention -
niny@ Messages postés 107 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
j'ai encore des soucis avec mes boutons :
mes boutons sont générés automatiquement à partir d'un bouton qui va parcourir un fichier excel dans lequel se trouve un tableau. ce tableau à un certains nombres de cases remplies avec des caractéristiques. suivant ces caractéristiques le bouton est de vouleur différente = ca c'est fait.
mon pb est que j'aimerai qu'en fonction de la ligne du tableau les boutons se place sur le userform en fonction de ce tableau.
c'est à dire si L1 posséde 4 boutons avec des caractéristiques différentes mais étant sur la L1 les mettrent sur la même rangée du userform.
pour l'instant je fais un truc qui me les mets tous les uns à la suite des autres et je ne sais pas comment faire pour changer celà.
est ce quelqu'un pourrait m'éclairer sur ce point ??
merci
j'ai encore des soucis avec mes boutons :
mes boutons sont générés automatiquement à partir d'un bouton qui va parcourir un fichier excel dans lequel se trouve un tableau. ce tableau à un certains nombres de cases remplies avec des caractéristiques. suivant ces caractéristiques le bouton est de vouleur différente = ca c'est fait.
mon pb est que j'aimerai qu'en fonction de la ligne du tableau les boutons se place sur le userform en fonction de ce tableau.
c'est à dire si L1 posséde 4 boutons avec des caractéristiques différentes mais étant sur la L1 les mettrent sur la même rangée du userform.
pour l'instant je fais un truc qui me les mets tous les uns à la suite des autres et je ne sais pas comment faire pour changer celà.
est ce quelqu'un pourrait m'éclairer sur ce point ??
merci
A voir également:
- Position bouton
- Ma position - Guide
- Suivi position google - Guide
- Bouton reinitialisation pc - Guide
- Diagnostic bouton photo - Accueil - Outils
- Bouton on/off comment savoir ✓ - Forum Matériel & Système
1 réponse
Re,
If faut calculer leur postion à chaque création
Admettons que tu veuilles placer 10 boutons et qu'une rangée ne puisse contenir plus de 3 boutons
dh=20 ' décalage initial par rapport au bord gauche
dv=20 ' décalage initial par rapport au haut de feuille
ih=60 ' intervalle horizontal entre les points d'insertion de 2 boutons sur la meme rangée
iv=30 ' intervalle vertical entre les points d'insertion de 2 boutons sur la meme colonne
maxb=3 ' nbre maxi de boutons par rangées
nb=10 ' nbre de boutons à placer
ib=1 'indice bouton
ir=0 'compteur de rangée
'ic compteur de colonnes
do
for ic=0 to maxb-1
if ib>nb then exit for
left = dh+(ic*ih)
top = dv+(ir*dv)
'definir le bouton
'
'
ib=ib+1
next
ir=ir+1
loop until ib>nb
Sauf erreur, cette procedure crée 3 rangées de trois boutons + i rangée de 1 bouton.
Salut.
If faut calculer leur postion à chaque création
Admettons que tu veuilles placer 10 boutons et qu'une rangée ne puisse contenir plus de 3 boutons
dh=20 ' décalage initial par rapport au bord gauche
dv=20 ' décalage initial par rapport au haut de feuille
ih=60 ' intervalle horizontal entre les points d'insertion de 2 boutons sur la meme rangée
iv=30 ' intervalle vertical entre les points d'insertion de 2 boutons sur la meme colonne
maxb=3 ' nbre maxi de boutons par rangées
nb=10 ' nbre de boutons à placer
ib=1 'indice bouton
ir=0 'compteur de rangée
'ic compteur de colonnes
do
for ic=0 to maxb-1
if ib>nb then exit for
left = dh+(ic*ih)
top = dv+(ir*dv)
'definir le bouton
'
'
ib=ib+1
next
ir=ir+1
loop until ib>nb
Sauf erreur, cette procedure crée 3 rangées de trois boutons + i rangée de 1 bouton.
Salut.
je vais essayer d ele mettre dans mon code , je te tiens au courant si j'ai un problème.
merci @+
dsl te t'embeter autant, e n plus c'est pas la première fois que j'ai besoin de tes connaissances.
je ne sais pas ou mettre els boucles dans mon code :
Dim deport As Integer
Dim inter As Integer
deportinit = 4
For lig = 1 To 2
For col = 1 To 5
If Cells(lig, col).Value = "base" Then
deport = deport + 20 * deportinit
Set Bouton = AutoBe.Controls.Add("Forms.CommandButton.1", "Bouton" & lig & col, True)
MsgBox ("colbase" & col)
MsgBox ("ligbase" & lig)
MsgBox Bouton.Name
With Bouton
.Left = deportinit + deport
.Top = 10
.BackColor = RGB(0, 255, 255)
.Height = 40
.width = 40
End With
Auto.Add Bouton, col
End If
If Cells(lig, col).Value = "optionnel" Then
'deport = deport + 20 * deportinit
Set Bouton = AutoBe.Controls.Add("Forms.CommandButton.1", "Bouton" & lig & col, True)
MsgBox ("coloptio" & col)
MsgBox ("ligoptio" & lig)
With Bouton
'.Left = deportinit + deport
'.Top = 20
.BackColor = RGB(255, 0, 255)
.Height = 40
.width = 40
End With
Auto.Add Bouton, col
End If
If Cells(lig, col).Value = "perso" Then
Set Bouton = AutoBe.Controls.Add("Forms.CommandButton.1", "Bouton" & lig & col, True)
MsgBox ("colperso" & col)
MsgBox ("ligperso" & lig)
With Bouton
' .Left = deportinit + deport
' .Top = 45
.BackColor = RGB(255, 255, 0)
.Height = 40
.width = 40
End With
Auto.Add Bouton, col
End If
Next col
Next lig
j'ai bien mais différents cas possible, mais le fait que ceux ci peuvent se trouver à n'importe quel endroit du tableau je ne vois pas ou mettre la boucle .
fallait juste faire des case avec un select pour améliorer le code et faire en sorte qu'il n'y est plus de problème avec la position des boutons !
merci @µ+