Microsoft 365 masquer textbox à l'ouverture d'un userform

wrap food

XLDnaute Occasionnel
Bonjour à tous,
j'ai encore un problème que je n'arrive pas résoudre..

Je souhaiterais afficher ou masquer un textbox à l'ouverture d'un userform et cela si la cellule BU158 est vide ou remplie .

J'ai mis le code ci-dessous dans le code d'un bouton qui me permet d'ouvrir mon userform " CA_VENTE"

Private Sub CommandButton1_Click()
choix_saisie.Hide
CA_VENTE.Show
If Range("BU158").Value = "" Then
PLATEAUXCHOIX1.Visible = False 'True
Else
PLATEAUXCHOIX1.Visible = False
End If
End Sub

Auriez-vous une solution à m'apporter .

Par avance merci de votre aide

Cdt
 

JBARBE

XLDnaute Barbatruc
Bonjour à tous, toutes,
Peut-être ceci en l'absence de fichier ( je présume que textBox est PLATEAUXCHOIX1:
If Range("BU158").Value = "" or Range("BU158").Value <> "" Then
PLATEAUXCHOIX1.Visible = False
end if
bonne journée !
 

Staple1600

XLDnaute Barbatruc
Bonjour le fil, wrapfood, JBARBE

wrapfood
Essaie en adaptant la syntaxe ci-dessous à ton code.
(en renommant ce qui doit être renommé dans le code que je poste ci-dessous)
VB:
Private Sub UserForm_Initialize()
TextBox1.Visible = Not IsEmpty(Sheets(1).[A1])
End Sub
 

Staple1600

XLDnaute Barbatruc
Re

En relisant ton premier message, tu ecris : si celluele BU158 vide ou remplie
Donc dans les deux cas, on masque le textbox?
Ou tu voulais dire :
Si BU158 vide alors on masque le textbox
Si BU158 pas vide alors on affiche le textbox

Si c'est cela alors mon premier code ou celui-ci font cela
Code:
Private Sub UserForm_Initialize()
'Mettre le nom de la feuille où se situe BU158
'ex: Sheets("Feuil2").[BU158] si BU158 est celui de la feuille nommée Feuil2
'ci-dessous on teste le BU158 de la feuille 1 du classeur
TextBox1.Visible = Len(Sheets(1).[BU158])
End Sub
 

JBARBE

XLDnaute Barbatruc
Re, Bonjour Staple 1600
Un exemple :
Code:
Private Sub UserForm_Initialize()
Sheets("Feuil1").Select
X = ActiveCell.Row '158
Y = ActiveCell.Column ' 73
If X = 158 And Y = 73 And Cells(X, Y).Value = "" Or Cells(X, Y).Value <> "" Then
MsgBox " Cellule BU158 selectionnée "
TextBox1.Visible = False
Else
TextBox1.Visible = True
End If
End Sub
 

Pièces jointes

  • Classeur1.xls
    65.5 KB · Affichages: 5
Dernière édition:

Staple1600

XLDnaute Barbatruc
Re,

Wrapfood
Une dernière pour la route (et pour le fun ;) )
VB:
Private Sub UserForm_Initialize()
Dim flag As Boolean
flag = Len(Sheets(1).[BU158])
With TextBox1
.Enabled = flag
.BackStyle = IIf(flag, fmBackStyleOpaque, fmBackStyleTransparent)
End With
End Sub
 

Discussions similaires

Statistiques des forums

Discussions
312 172
Messages
2 085 936
Membres
103 051
dernier inscrit
briyan75