Bonjour Golf,
Tu veux dire que tu as un combobox qui est dans la feuille de calcul et
qui provient de la barre d'outils "Contrôle".
Ta question n'est pas claire
"avoir sélectionné une ligne et après clic sur ce bouton, les éléments de
la 3 et 4 colonnes s'effacent."
Qu'est-ce qui doit s'effacer ?
A ) les valeurs qui sont inscrites dans la liste du combobox lui-même ?
OU
B ) Les valeurs dans la plage de cellules qui correspondent aux éléments 3
et 4 de la ligne sélectionnée dans le
combobox.
'*************************************
Pour Répondre à la question A : Suppression des données seulement de la
liste du combobox.
'*************************************
1- ) Tu ne dois pas utiliser la propriété ListFillRange pour définir le
contenu de la liste de ton combobox.
2-) Pour remplir la liste de ton combobox, j'ai choisi l'événement
"Activation de la feuille " où est situé le combobox,
Selon ton application, d'autres événements peuvent mieux appropriés pour
cette tâche.
'------------------------------------
Private Sub Worksheet_Activate()
Dim Tblo As Variant
Tblo = Range("E1:H11")
Me.ComboBox1.Clear
Me.ComboBox1.List = Tblo
End Sub
'------------------------------------
3 - ) Pour supprimer les éléments 3 et 4 de la liste de ton combobox (
cela ne va pas supprimer le contenu des cellules
de la plage de cellules ayant servi de référence, seulement modifier
l'affichage du contenu de ton combobobox.), J'ai
utilisé et préféré l'événement LostFocus du combobox plutôt que l'événemet
Change ... car il y a suppression de données
de la liste ...!
'------------------------------------
Private Sub ComboBox1_LostFocus()
With ComboBox1.List
.List(.ListIndex, 2) = ""
.List(.ListIndex, 3) = ""
End With
End Sub
'------------------------------------
Réponse 2.
'*************************************
Supprimer les données de la plage de cellules qui correspondent aux
éléments 3 et 4 de la lignes sélectionnées du
combobox
'*************************************
1 ) Tu renseignes ton combobox par la propriété "ListFillRange"
directement en mode création dans la fenêtre des
propriétés et tu renseignes aussi les propriétés "ColumnCount" = 4 ,
ColumnWidths = 49,95 pt;49,95 pt;49,95 pt;49,95 pt
2 ) Choisi l'événement qui répond le mieux à ce que tu désires et utilise
ces lignes de code :
'----------------------------
Private Sub ComboBox1_Change()
Dim Rg As Range
On Error Resume Next
With Me.ComboBox1
Set Rg = Range(.ListFillRange)
If .ListIndex <> -1 Then
Application.EnableEvents = False
Rg(.ListIndex, 3).ClearContents
Rg(.ListIndex, 4).ClearContents
Application.EnableEvents = True
End If
End With
End Sub
'----------------------------
Et si tu désires autres chose, tu apportes les précisions nécessaires.
Salutations!
"Golf" a écrit dans le message de
news:
Bonjour
J'ai un combobox qui provient d'une feuille de calcul.
Il contient 4 colonnes E1:H11 j'ai créer un bouton sur le
combobox.
je souhaite qu'après avoir sélectionné une ligne et
après clic sur ce bouton, les éléments de la 3 et 4
colonnes s'effacent.
Je butte sur l'écriture.
Merci beaucoup
Bonjour Golf,
Tu veux dire que tu as un combobox qui est dans la feuille de calcul et
qui provient de la barre d'outils "Contrôle".
Ta question n'est pas claire
"avoir sélectionné une ligne et après clic sur ce bouton, les éléments de
la 3 et 4 colonnes s'effacent."
Qu'est-ce qui doit s'effacer ?
A ) les valeurs qui sont inscrites dans la liste du combobox lui-même ?
OU
B ) Les valeurs dans la plage de cellules qui correspondent aux éléments 3
et 4 de la ligne sélectionnée dans le
combobox.
'*************************************
Pour Répondre à la question A : Suppression des données seulement de la
liste du combobox.
'*************************************
1- ) Tu ne dois pas utiliser la propriété ListFillRange pour définir le
contenu de la liste de ton combobox.
2-) Pour remplir la liste de ton combobox, j'ai choisi l'événement
"Activation de la feuille " où est situé le combobox,
Selon ton application, d'autres événements peuvent mieux appropriés pour
cette tâche.
'------------------------------------
Private Sub Worksheet_Activate()
Dim Tblo As Variant
Tblo = Range("E1:H11")
Me.ComboBox1.Clear
Me.ComboBox1.List = Tblo
End Sub
'------------------------------------
3 - ) Pour supprimer les éléments 3 et 4 de la liste de ton combobox (
cela ne va pas supprimer le contenu des cellules
de la plage de cellules ayant servi de référence, seulement modifier
l'affichage du contenu de ton combobobox.), J'ai
utilisé et préféré l'événement LostFocus du combobox plutôt que l'événemet
Change ... car il y a suppression de données
de la liste ...!
'------------------------------------
Private Sub ComboBox1_LostFocus()
With ComboBox1.List
.List(.ListIndex, 2) = ""
.List(.ListIndex, 3) = ""
End With
End Sub
'------------------------------------
Réponse 2.
'*************************************
Supprimer les données de la plage de cellules qui correspondent aux
éléments 3 et 4 de la lignes sélectionnées du
combobox
'*************************************
1 ) Tu renseignes ton combobox par la propriété "ListFillRange"
directement en mode création dans la fenêtre des
propriétés et tu renseignes aussi les propriétés "ColumnCount" = 4 ,
ColumnWidths = 49,95 pt;49,95 pt;49,95 pt;49,95 pt
2 ) Choisi l'événement qui répond le mieux à ce que tu désires et utilise
ces lignes de code :
'----------------------------
Private Sub ComboBox1_Change()
Dim Rg As Range
On Error Resume Next
With Me.ComboBox1
Set Rg = Range(.ListFillRange)
If .ListIndex <> -1 Then
Application.EnableEvents = False
Rg(.ListIndex, 3).ClearContents
Rg(.ListIndex, 4).ClearContents
Application.EnableEvents = True
End If
End With
End Sub
'----------------------------
Et si tu désires autres chose, tu apportes les précisions nécessaires.
Salutations!
"Golf" <Golf@titi.fr> a écrit dans le message de
news:uSiHCaTXEHA.4020@TK2MSFTNGP09.phx.gbl...
Bonjour
J'ai un combobox qui provient d'une feuille de calcul.
Il contient 4 colonnes E1:H11 j'ai créer un bouton sur le
combobox.
je souhaite qu'après avoir sélectionné une ligne et
après clic sur ce bouton, les éléments de la 3 et 4
colonnes s'effacent.
Je butte sur l'écriture.
Merci beaucoup
Bonjour Golf,
Tu veux dire que tu as un combobox qui est dans la feuille de calcul et
qui provient de la barre d'outils "Contrôle".
Ta question n'est pas claire
"avoir sélectionné une ligne et après clic sur ce bouton, les éléments de
la 3 et 4 colonnes s'effacent."
Qu'est-ce qui doit s'effacer ?
A ) les valeurs qui sont inscrites dans la liste du combobox lui-même ?
OU
B ) Les valeurs dans la plage de cellules qui correspondent aux éléments 3
et 4 de la ligne sélectionnée dans le
combobox.
'*************************************
Pour Répondre à la question A : Suppression des données seulement de la
liste du combobox.
'*************************************
1- ) Tu ne dois pas utiliser la propriété ListFillRange pour définir le
contenu de la liste de ton combobox.
2-) Pour remplir la liste de ton combobox, j'ai choisi l'événement
"Activation de la feuille " où est situé le combobox,
Selon ton application, d'autres événements peuvent mieux appropriés pour
cette tâche.
'------------------------------------
Private Sub Worksheet_Activate()
Dim Tblo As Variant
Tblo = Range("E1:H11")
Me.ComboBox1.Clear
Me.ComboBox1.List = Tblo
End Sub
'------------------------------------
3 - ) Pour supprimer les éléments 3 et 4 de la liste de ton combobox (
cela ne va pas supprimer le contenu des cellules
de la plage de cellules ayant servi de référence, seulement modifier
l'affichage du contenu de ton combobobox.), J'ai
utilisé et préféré l'événement LostFocus du combobox plutôt que l'événemet
Change ... car il y a suppression de données
de la liste ...!
'------------------------------------
Private Sub ComboBox1_LostFocus()
With ComboBox1.List
.List(.ListIndex, 2) = ""
.List(.ListIndex, 3) = ""
End With
End Sub
'------------------------------------
Réponse 2.
'*************************************
Supprimer les données de la plage de cellules qui correspondent aux
éléments 3 et 4 de la lignes sélectionnées du
combobox
'*************************************
1 ) Tu renseignes ton combobox par la propriété "ListFillRange"
directement en mode création dans la fenêtre des
propriétés et tu renseignes aussi les propriétés "ColumnCount" = 4 ,
ColumnWidths = 49,95 pt;49,95 pt;49,95 pt;49,95 pt
2 ) Choisi l'événement qui répond le mieux à ce que tu désires et utilise
ces lignes de code :
'----------------------------
Private Sub ComboBox1_Change()
Dim Rg As Range
On Error Resume Next
With Me.ComboBox1
Set Rg = Range(.ListFillRange)
If .ListIndex <> -1 Then
Application.EnableEvents = False
Rg(.ListIndex, 3).ClearContents
Rg(.ListIndex, 4).ClearContents
Application.EnableEvents = True
End If
End With
End Sub
'----------------------------
Et si tu désires autres chose, tu apportes les précisions nécessaires.
Salutations!
"Golf" a écrit dans le message de
news:
Bonjour
J'ai un combobox qui provient d'une feuille de calcul.
Il contient 4 colonnes E1:H11 j'ai créer un bouton sur le
combobox.
je souhaite qu'après avoir sélectionné une ligne et
après clic sur ce bouton, les éléments de la 3 et 4
colonnes s'effacent.
Je butte sur l'écriture.
Merci beaucoup
Bonjour Golf,
Tu veux dire que tu as un combobox qui est dans la feuille de calcul et
qui provient de la barre d'outils "Contrôle".
Ta question n'est pas claire
"avoir sélectionné une ligne et après clic sur ce bouton, les éléments de
la 3 et 4 colonnes s'effacent."
Qu'est-ce qui doit s'effacer ?
A ) les valeurs qui sont inscrites dans la liste du combobox lui-même ?
OU
B ) Les valeurs dans la plage de cellules qui correspondent aux éléments 3
et 4 de la ligne sélectionnée dans le
combobox.
'*************************************
Pour Répondre à la question A : Suppression des données seulement de la
liste du combobox.
'*************************************
1- ) Tu ne dois pas utiliser la propriété ListFillRange pour définir le
contenu de la liste de ton combobox.
2-) Pour remplir la liste de ton combobox, j'ai choisi l'événement
"Activation de la feuille " où est situé le combobox,
Selon ton application, d'autres événements peuvent mieux appropriés pour
cette tâche.
'------------------------------------
Private Sub Worksheet_Activate()
Dim Tblo As Variant
Tblo = Range("E1:H11")
Me.ComboBox1.Clear
Me.ComboBox1.List = Tblo
End Sub
'------------------------------------
3 - ) Pour supprimer les éléments 3 et 4 de la liste de ton combobox (
cela ne va pas supprimer le contenu des cellules
de la plage de cellules ayant servi de référence, seulement modifier
l'affichage du contenu de ton combobobox.), J'ai
utilisé et préféré l'événement LostFocus du combobox plutôt que l'événemet
Change ... car il y a suppression de données
de la liste ...!
'------------------------------------
Private Sub ComboBox1_LostFocus()
With ComboBox1.List
.List(.ListIndex, 2) = ""
.List(.ListIndex, 3) = ""
End With
End Sub
'------------------------------------
Réponse 2.
'*************************************
Supprimer les données de la plage de cellules qui correspondent aux
éléments 3 et 4 de la lignes sélectionnées du
combobox
'*************************************
1 ) Tu renseignes ton combobox par la propriété "ListFillRange"
directement en mode création dans la fenêtre des
propriétés et tu renseignes aussi les propriétés "ColumnCount" = 4 ,
ColumnWidths = 49,95 pt;49,95 pt;49,95 pt;49,95 pt
2 ) Choisi l'événement qui répond le mieux à ce que tu désires et utilise
ces lignes de code :
'----------------------------
Private Sub ComboBox1_Change()
Dim Rg As Range
On Error Resume Next
With Me.ComboBox1
Set Rg = Range(.ListFillRange)
If .ListIndex <> -1 Then
Application.EnableEvents = False
Rg(.ListIndex, 3).ClearContents
Rg(.ListIndex, 4).ClearContents
Application.EnableEvents = True
End If
End With
End Sub
'----------------------------
Et si tu désires autres chose, tu apportes les précisions nécessaires.
Salutations!
"Golf" a écrit dans le message de
news:
Bonjour
J'ai un combobox qui provient d'une feuille de calcul.
Il contient 4 colonnes E1:H11 j'ai créer un bouton sur le
combobox.
je souhaite qu'après avoir sélectionné une ligne et
après clic sur ce bouton, les éléments de la 3 et 4
colonnes s'effacent.
Je butte sur l'écriture.
Merci beaucoup
Bonjour Golf,
Tu veux dire que tu as un combobox qui est dans la feuille de calcul et
qui provient de la barre d'outils "Contrôle".
Ta question n'est pas claire
"avoir sélectionné une ligne et après clic sur ce bouton, les éléments de
la 3 et 4 colonnes s'effacent."
Qu'est-ce qui doit s'effacer ?
A ) les valeurs qui sont inscrites dans la liste du combobox lui-même ?
OU
B ) Les valeurs dans la plage de cellules qui correspondent aux éléments 3
et 4 de la ligne sélectionnée dans le
combobox.
'*************************************
Pour Répondre à la question A : Suppression des données seulement de la
liste du combobox.
'*************************************
1- ) Tu ne dois pas utiliser la propriété ListFillRange pour définir le
contenu de la liste de ton combobox.
2-) Pour remplir la liste de ton combobox, j'ai choisi l'événement
"Activation de la feuille " où est situé le combobox,
Selon ton application, d'autres événements peuvent mieux appropriés pour
cette tâche.
'------------------------------------
Private Sub Worksheet_Activate()
Dim Tblo As Variant
Tblo = Range("E1:H11")
Me.ComboBox1.Clear
Me.ComboBox1.List = Tblo
End Sub
'------------------------------------
3 - ) Pour supprimer les éléments 3 et 4 de la liste de ton combobox (
cela ne va pas supprimer le contenu des cellules
de la plage de cellules ayant servi de référence, seulement modifier
l'affichage du contenu de ton combobobox.), J'ai
utilisé et préféré l'événement LostFocus du combobox plutôt que l'événemet
Change ... car il y a suppression de données
de la liste ...!
'------------------------------------
Private Sub ComboBox1_LostFocus()
With ComboBox1.List
.List(.ListIndex, 2) = ""
.List(.ListIndex, 3) = ""
End With
End Sub
'------------------------------------
Réponse 2.
'*************************************
Supprimer les données de la plage de cellules qui correspondent aux
éléments 3 et 4 de la lignes sélectionnées du
combobox
'*************************************
1 ) Tu renseignes ton combobox par la propriété "ListFillRange"
directement en mode création dans la fenêtre des
propriétés et tu renseignes aussi les propriétés "ColumnCount" = 4 ,
ColumnWidths = 49,95 pt;49,95 pt;49,95 pt;49,95 pt
2 ) Choisi l'événement qui répond le mieux à ce que tu désires et utilise
ces lignes de code :
'----------------------------
Private Sub ComboBox1_Change()
Dim Rg As Range
On Error Resume Next
With Me.ComboBox1
Set Rg = Range(.ListFillRange)
If .ListIndex <> -1 Then
Application.EnableEvents = False
Rg(.ListIndex, 3).ClearContents
Rg(.ListIndex, 4).ClearContents
Application.EnableEvents = True
End If
End With
End Sub
'----------------------------
Et si tu désires autres chose, tu apportes les précisions nécessaires.
Salutations!
"Golf" <Golf@titi.fr> a écrit dans le message de
news:uSiHCaTXEHA.4020@TK2MSFTNGP09.phx.gbl...
Bonjour
J'ai un combobox qui provient d'une feuille de calcul.
Il contient 4 colonnes E1:H11 j'ai créer un bouton sur le
combobox.
je souhaite qu'après avoir sélectionné une ligne et
après clic sur ce bouton, les éléments de la 3 et 4
colonnes s'effacent.
Je butte sur l'écriture.
Merci beaucoup
Bonjour Golf,
Tu veux dire que tu as un combobox qui est dans la feuille de calcul et
qui provient de la barre d'outils "Contrôle".
Ta question n'est pas claire
"avoir sélectionné une ligne et après clic sur ce bouton, les éléments de
la 3 et 4 colonnes s'effacent."
Qu'est-ce qui doit s'effacer ?
A ) les valeurs qui sont inscrites dans la liste du combobox lui-même ?
OU
B ) Les valeurs dans la plage de cellules qui correspondent aux éléments 3
et 4 de la ligne sélectionnée dans le
combobox.
'*************************************
Pour Répondre à la question A : Suppression des données seulement de la
liste du combobox.
'*************************************
1- ) Tu ne dois pas utiliser la propriété ListFillRange pour définir le
contenu de la liste de ton combobox.
2-) Pour remplir la liste de ton combobox, j'ai choisi l'événement
"Activation de la feuille " où est situé le combobox,
Selon ton application, d'autres événements peuvent mieux appropriés pour
cette tâche.
'------------------------------------
Private Sub Worksheet_Activate()
Dim Tblo As Variant
Tblo = Range("E1:H11")
Me.ComboBox1.Clear
Me.ComboBox1.List = Tblo
End Sub
'------------------------------------
3 - ) Pour supprimer les éléments 3 et 4 de la liste de ton combobox (
cela ne va pas supprimer le contenu des cellules
de la plage de cellules ayant servi de référence, seulement modifier
l'affichage du contenu de ton combobobox.), J'ai
utilisé et préféré l'événement LostFocus du combobox plutôt que l'événemet
Change ... car il y a suppression de données
de la liste ...!
'------------------------------------
Private Sub ComboBox1_LostFocus()
With ComboBox1.List
.List(.ListIndex, 2) = ""
.List(.ListIndex, 3) = ""
End With
End Sub
'------------------------------------
Réponse 2.
'*************************************
Supprimer les données de la plage de cellules qui correspondent aux
éléments 3 et 4 de la lignes sélectionnées du
combobox
'*************************************
1 ) Tu renseignes ton combobox par la propriété "ListFillRange"
directement en mode création dans la fenêtre des
propriétés et tu renseignes aussi les propriétés "ColumnCount" = 4 ,
ColumnWidths = 49,95 pt;49,95 pt;49,95 pt;49,95 pt
2 ) Choisi l'événement qui répond le mieux à ce que tu désires et utilise
ces lignes de code :
'----------------------------
Private Sub ComboBox1_Change()
Dim Rg As Range
On Error Resume Next
With Me.ComboBox1
Set Rg = Range(.ListFillRange)
If .ListIndex <> -1 Then
Application.EnableEvents = False
Rg(.ListIndex, 3).ClearContents
Rg(.ListIndex, 4).ClearContents
Application.EnableEvents = True
End If
End With
End Sub
'----------------------------
Et si tu désires autres chose, tu apportes les précisions nécessaires.
Salutations!
"Golf" a écrit dans le message de
news:
Bonjour
J'ai un combobox qui provient d'une feuille de calcul.
Il contient 4 colonnes E1:H11 j'ai créer un bouton sur le
combobox.
je souhaite qu'après avoir sélectionné une ligne et
après clic sur ce bouton, les éléments de la 3 et 4
colonnes s'effacent.
Je butte sur l'écriture.
Merci beaucoup
Bonjour Golf,
Tu veux dire que tu as un combobox qui est dans la feuille de calcul et
qui provient de la barre d'outils "Contrôle".
Ta question n'est pas claire
"avoir sélectionné une ligne et après clic sur ce bouton, les éléments de
la 3 et 4 colonnes s'effacent."
Qu'est-ce qui doit s'effacer ?
A ) les valeurs qui sont inscrites dans la liste du combobox lui-même ?
OU
B ) Les valeurs dans la plage de cellules qui correspondent aux éléments 3
et 4 de la ligne sélectionnée dans le
combobox.
'*************************************
Pour Répondre à la question A : Suppression des données seulement de la
liste du combobox.
'*************************************
1- ) Tu ne dois pas utiliser la propriété ListFillRange pour définir le
contenu de la liste de ton combobox.
2-) Pour remplir la liste de ton combobox, j'ai choisi l'événement
"Activation de la feuille " où est situé le combobox,
Selon ton application, d'autres événements peuvent mieux appropriés pour
cette tâche.
'------------------------------------
Private Sub Worksheet_Activate()
Dim Tblo As Variant
Tblo = Range("E1:H11")
Me.ComboBox1.Clear
Me.ComboBox1.List = Tblo
End Sub
'------------------------------------
3 - ) Pour supprimer les éléments 3 et 4 de la liste de ton combobox (
cela ne va pas supprimer le contenu des cellules
de la plage de cellules ayant servi de référence, seulement modifier
l'affichage du contenu de ton combobobox.), J'ai
utilisé et préféré l'événement LostFocus du combobox plutôt que l'événemet
Change ... car il y a suppression de données
de la liste ...!
'------------------------------------
Private Sub ComboBox1_LostFocus()
With ComboBox1.List
.List(.ListIndex, 2) = ""
.List(.ListIndex, 3) = ""
End With
End Sub
'------------------------------------
Réponse 2.
'*************************************
Supprimer les données de la plage de cellules qui correspondent aux
éléments 3 et 4 de la lignes sélectionnées du
combobox
'*************************************
1 ) Tu renseignes ton combobox par la propriété "ListFillRange"
directement en mode création dans la fenêtre des
propriétés et tu renseignes aussi les propriétés "ColumnCount" = 4 ,
ColumnWidths = 49,95 pt;49,95 pt;49,95 pt;49,95 pt
2 ) Choisi l'événement qui répond le mieux à ce que tu désires et utilise
ces lignes de code :
'----------------------------
Private Sub ComboBox1_Change()
Dim Rg As Range
On Error Resume Next
With Me.ComboBox1
Set Rg = Range(.ListFillRange)
If .ListIndex <> -1 Then
Application.EnableEvents = False
Rg(.ListIndex, 3).ClearContents
Rg(.ListIndex, 4).ClearContents
Application.EnableEvents = True
End If
End With
End Sub
'----------------------------
Et si tu désires autres chose, tu apportes les précisions nécessaires.
Salutations!
"Golf" a écrit dans le message de
news:
Bonjour
J'ai un combobox qui provient d'une feuille de calcul.
Il contient 4 colonnes E1:H11 j'ai créer un bouton sur le
combobox.
je souhaite qu'après avoir sélectionné une ligne et
après clic sur ce bouton, les éléments de la 3 et 4
colonnes s'effacent.
Je butte sur l'écriture.
Merci beaucoup
Bonjour Golf,
Tu veux dire que tu as un combobox qui est dans la feuille de calcul et
qui provient de la barre d'outils "Contrôle".
Ta question n'est pas claire
"avoir sélectionné une ligne et après clic sur ce bouton, les éléments de
la 3 et 4 colonnes s'effacent."
Qu'est-ce qui doit s'effacer ?
A ) les valeurs qui sont inscrites dans la liste du combobox lui-même ?
OU
B ) Les valeurs dans la plage de cellules qui correspondent aux éléments 3
et 4 de la ligne sélectionnée dans le
combobox.
'*************************************
Pour Répondre à la question A : Suppression des données seulement de la
liste du combobox.
'*************************************
1- ) Tu ne dois pas utiliser la propriété ListFillRange pour définir le
contenu de la liste de ton combobox.
2-) Pour remplir la liste de ton combobox, j'ai choisi l'événement
"Activation de la feuille " où est situé le combobox,
Selon ton application, d'autres événements peuvent mieux appropriés pour
cette tâche.
'------------------------------------
Private Sub Worksheet_Activate()
Dim Tblo As Variant
Tblo = Range("E1:H11")
Me.ComboBox1.Clear
Me.ComboBox1.List = Tblo
End Sub
'------------------------------------
3 - ) Pour supprimer les éléments 3 et 4 de la liste de ton combobox (
cela ne va pas supprimer le contenu des cellules
de la plage de cellules ayant servi de référence, seulement modifier
l'affichage du contenu de ton combobobox.), J'ai
utilisé et préféré l'événement LostFocus du combobox plutôt que l'événemet
Change ... car il y a suppression de données
de la liste ...!
'------------------------------------
Private Sub ComboBox1_LostFocus()
With ComboBox1.List
.List(.ListIndex, 2) = ""
.List(.ListIndex, 3) = ""
End With
End Sub
'------------------------------------
Réponse 2.
'*************************************
Supprimer les données de la plage de cellules qui correspondent aux
éléments 3 et 4 de la lignes sélectionnées du
combobox
'*************************************
1 ) Tu renseignes ton combobox par la propriété "ListFillRange"
directement en mode création dans la fenêtre des
propriétés et tu renseignes aussi les propriétés "ColumnCount" = 4 ,
ColumnWidths = 49,95 pt;49,95 pt;49,95 pt;49,95 pt
2 ) Choisi l'événement qui répond le mieux à ce que tu désires et utilise
ces lignes de code :
'----------------------------
Private Sub ComboBox1_Change()
Dim Rg As Range
On Error Resume Next
With Me.ComboBox1
Set Rg = Range(.ListFillRange)
If .ListIndex <> -1 Then
Application.EnableEvents = False
Rg(.ListIndex, 3).ClearContents
Rg(.ListIndex, 4).ClearContents
Application.EnableEvents = True
End If
End With
End Sub
'----------------------------
Et si tu désires autres chose, tu apportes les précisions nécessaires.
Salutations!
"Golf" <Golf@titi.fr> a écrit dans le message de
news:uSiHCaTXEHA.4020@TK2MSFTNGP09.phx.gbl...
Bonjour
J'ai un combobox qui provient d'une feuille de calcul.
Il contient 4 colonnes E1:H11 j'ai créer un bouton sur le
combobox.
je souhaite qu'après avoir sélectionné une ligne et
après clic sur ce bouton, les éléments de la 3 et 4
colonnes s'effacent.
Je butte sur l'écriture.
Merci beaucoup
Bonjour Golf,
Tu veux dire que tu as un combobox qui est dans la feuille de calcul et
qui provient de la barre d'outils "Contrôle".
Ta question n'est pas claire
"avoir sélectionné une ligne et après clic sur ce bouton, les éléments de
la 3 et 4 colonnes s'effacent."
Qu'est-ce qui doit s'effacer ?
A ) les valeurs qui sont inscrites dans la liste du combobox lui-même ?
OU
B ) Les valeurs dans la plage de cellules qui correspondent aux éléments 3
et 4 de la ligne sélectionnée dans le
combobox.
'*************************************
Pour Répondre à la question A : Suppression des données seulement de la
liste du combobox.
'*************************************
1- ) Tu ne dois pas utiliser la propriété ListFillRange pour définir le
contenu de la liste de ton combobox.
2-) Pour remplir la liste de ton combobox, j'ai choisi l'événement
"Activation de la feuille " où est situé le combobox,
Selon ton application, d'autres événements peuvent mieux appropriés pour
cette tâche.
'------------------------------------
Private Sub Worksheet_Activate()
Dim Tblo As Variant
Tblo = Range("E1:H11")
Me.ComboBox1.Clear
Me.ComboBox1.List = Tblo
End Sub
'------------------------------------
3 - ) Pour supprimer les éléments 3 et 4 de la liste de ton combobox (
cela ne va pas supprimer le contenu des cellules
de la plage de cellules ayant servi de référence, seulement modifier
l'affichage du contenu de ton combobobox.), J'ai
utilisé et préféré l'événement LostFocus du combobox plutôt que l'événemet
Change ... car il y a suppression de données
de la liste ...!
'------------------------------------
Private Sub ComboBox1_LostFocus()
With ComboBox1.List
.List(.ListIndex, 2) = ""
.List(.ListIndex, 3) = ""
End With
End Sub
'------------------------------------
Réponse 2.
'*************************************
Supprimer les données de la plage de cellules qui correspondent aux
éléments 3 et 4 de la lignes sélectionnées du
combobox
'*************************************
1 ) Tu renseignes ton combobox par la propriété "ListFillRange"
directement en mode création dans la fenêtre des
propriétés et tu renseignes aussi les propriétés "ColumnCount" = 4 ,
ColumnWidths = 49,95 pt;49,95 pt;49,95 pt;49,95 pt
2 ) Choisi l'événement qui répond le mieux à ce que tu désires et utilise
ces lignes de code :
'----------------------------
Private Sub ComboBox1_Change()
Dim Rg As Range
On Error Resume Next
With Me.ComboBox1
Set Rg = Range(.ListFillRange)
If .ListIndex <> -1 Then
Application.EnableEvents = False
Rg(.ListIndex, 3).ClearContents
Rg(.ListIndex, 4).ClearContents
Application.EnableEvents = True
End If
End With
End Sub
'----------------------------
Et si tu désires autres chose, tu apportes les précisions nécessaires.
Salutations!
"Golf" a écrit dans le message de
news:
Bonjour
J'ai un combobox qui provient d'une feuille de calcul.
Il contient 4 colonnes E1:H11 j'ai créer un bouton sur le
combobox.
je souhaite qu'après avoir sélectionné une ligne et
après clic sur ce bouton, les éléments de la 3 et 4
colonnes s'effacent.
Je butte sur l'écriture.
Merci beaucoup
Bonjour Golf,
Tu veux dire que tu as un combobox qui est dans la feuille de calcul et
qui provient de la barre d'outils "Contrôle".
Ta question n'est pas claire
"avoir sélectionné une ligne et après clic sur ce bouton, les éléments de
la 3 et 4 colonnes s'effacent."
Qu'est-ce qui doit s'effacer ?
A ) les valeurs qui sont inscrites dans la liste du combobox lui-même ?
OU
B ) Les valeurs dans la plage de cellules qui correspondent aux éléments 3
et 4 de la ligne sélectionnée dans le
combobox.
'*************************************
Pour Répondre à la question A : Suppression des données seulement de la
liste du combobox.
'*************************************
1- ) Tu ne dois pas utiliser la propriété ListFillRange pour définir le
contenu de la liste de ton combobox.
2-) Pour remplir la liste de ton combobox, j'ai choisi l'événement
"Activation de la feuille " où est situé le combobox,
Selon ton application, d'autres événements peuvent mieux appropriés pour
cette tâche.
'------------------------------------
Private Sub Worksheet_Activate()
Dim Tblo As Variant
Tblo = Range("E1:H11")
Me.ComboBox1.Clear
Me.ComboBox1.List = Tblo
End Sub
'------------------------------------
3 - ) Pour supprimer les éléments 3 et 4 de la liste de ton combobox (
cela ne va pas supprimer le contenu des cellules
de la plage de cellules ayant servi de référence, seulement modifier
l'affichage du contenu de ton combobobox.), J'ai
utilisé et préféré l'événement LostFocus du combobox plutôt que l'événemet
Change ... car il y a suppression de données
de la liste ...!
'------------------------------------
Private Sub ComboBox1_LostFocus()
With ComboBox1.List
.List(.ListIndex, 2) = ""
.List(.ListIndex, 3) = ""
End With
End Sub
'------------------------------------
Réponse 2.
'*************************************
Supprimer les données de la plage de cellules qui correspondent aux
éléments 3 et 4 de la lignes sélectionnées du
combobox
'*************************************
1 ) Tu renseignes ton combobox par la propriété "ListFillRange"
directement en mode création dans la fenêtre des
propriétés et tu renseignes aussi les propriétés "ColumnCount" = 4 ,
ColumnWidths = 49,95 pt;49,95 pt;49,95 pt;49,95 pt
2 ) Choisi l'événement qui répond le mieux à ce que tu désires et utilise
ces lignes de code :
'----------------------------
Private Sub ComboBox1_Change()
Dim Rg As Range
On Error Resume Next
With Me.ComboBox1
Set Rg = Range(.ListFillRange)
If .ListIndex <> -1 Then
Application.EnableEvents = False
Rg(.ListIndex, 3).ClearContents
Rg(.ListIndex, 4).ClearContents
Application.EnableEvents = True
End If
End With
End Sub
'----------------------------
Et si tu désires autres chose, tu apportes les précisions nécessaires.
Salutations!
"Golf" a écrit dans le message de
news:
Bonjour
J'ai un combobox qui provient d'une feuille de calcul.
Il contient 4 colonnes E1:H11 j'ai créer un bouton sur le
combobox.
je souhaite qu'après avoir sélectionné une ligne et
après clic sur ce bouton, les éléments de la 3 et 4
colonnes s'effacent.
Je butte sur l'écriture.
Merci beaucoup
Bonjour Golf,
Tu veux dire que tu as un combobox qui est dans la feuille de calcul et
qui provient de la barre d'outils "Contrôle".
Ta question n'est pas claire
"avoir sélectionné une ligne et après clic sur ce bouton, les éléments de
la 3 et 4 colonnes s'effacent."
Qu'est-ce qui doit s'effacer ?
A ) les valeurs qui sont inscrites dans la liste du combobox lui-même ?
OU
B ) Les valeurs dans la plage de cellules qui correspondent aux éléments 3
et 4 de la ligne sélectionnée dans le
combobox.
'*************************************
Pour Répondre à la question A : Suppression des données seulement de la
liste du combobox.
'*************************************
1- ) Tu ne dois pas utiliser la propriété ListFillRange pour définir le
contenu de la liste de ton combobox.
2-) Pour remplir la liste de ton combobox, j'ai choisi l'événement
"Activation de la feuille " où est situé le combobox,
Selon ton application, d'autres événements peuvent mieux appropriés pour
cette tâche.
'------------------------------------
Private Sub Worksheet_Activate()
Dim Tblo As Variant
Tblo = Range("E1:H11")
Me.ComboBox1.Clear
Me.ComboBox1.List = Tblo
End Sub
'------------------------------------
3 - ) Pour supprimer les éléments 3 et 4 de la liste de ton combobox (
cela ne va pas supprimer le contenu des cellules
de la plage de cellules ayant servi de référence, seulement modifier
l'affichage du contenu de ton combobobox.), J'ai
utilisé et préféré l'événement LostFocus du combobox plutôt que l'événemet
Change ... car il y a suppression de données
de la liste ...!
'------------------------------------
Private Sub ComboBox1_LostFocus()
With ComboBox1.List
.List(.ListIndex, 2) = ""
.List(.ListIndex, 3) = ""
End With
End Sub
'------------------------------------
Réponse 2.
'*************************************
Supprimer les données de la plage de cellules qui correspondent aux
éléments 3 et 4 de la lignes sélectionnées du
combobox
'*************************************
1 ) Tu renseignes ton combobox par la propriété "ListFillRange"
directement en mode création dans la fenêtre des
propriétés et tu renseignes aussi les propriétés "ColumnCount" = 4 ,
ColumnWidths = 49,95 pt;49,95 pt;49,95 pt;49,95 pt
2 ) Choisi l'événement qui répond le mieux à ce que tu désires et utilise
ces lignes de code :
'----------------------------
Private Sub ComboBox1_Change()
Dim Rg As Range
On Error Resume Next
With Me.ComboBox1
Set Rg = Range(.ListFillRange)
If .ListIndex <> -1 Then
Application.EnableEvents = False
Rg(.ListIndex, 3).ClearContents
Rg(.ListIndex, 4).ClearContents
Application.EnableEvents = True
End If
End With
End Sub
'----------------------------
Et si tu désires autres chose, tu apportes les précisions nécessaires.
Salutations!
"Golf" <Golf@titi.fr> a écrit dans le message de
news:uSiHCaTXEHA.4020@TK2MSFTNGP09.phx.gbl...
Bonjour
J'ai un combobox qui provient d'une feuille de calcul.
Il contient 4 colonnes E1:H11 j'ai créer un bouton sur le
combobox.
je souhaite qu'après avoir sélectionné une ligne et
après clic sur ce bouton, les éléments de la 3 et 4
colonnes s'effacent.
Je butte sur l'écriture.
Merci beaucoup
Bonjour Golf,
Tu veux dire que tu as un combobox qui est dans la feuille de calcul et
qui provient de la barre d'outils "Contrôle".
Ta question n'est pas claire
"avoir sélectionné une ligne et après clic sur ce bouton, les éléments de
la 3 et 4 colonnes s'effacent."
Qu'est-ce qui doit s'effacer ?
A ) les valeurs qui sont inscrites dans la liste du combobox lui-même ?
OU
B ) Les valeurs dans la plage de cellules qui correspondent aux éléments 3
et 4 de la ligne sélectionnée dans le
combobox.
'*************************************
Pour Répondre à la question A : Suppression des données seulement de la
liste du combobox.
'*************************************
1- ) Tu ne dois pas utiliser la propriété ListFillRange pour définir le
contenu de la liste de ton combobox.
2-) Pour remplir la liste de ton combobox, j'ai choisi l'événement
"Activation de la feuille " où est situé le combobox,
Selon ton application, d'autres événements peuvent mieux appropriés pour
cette tâche.
'------------------------------------
Private Sub Worksheet_Activate()
Dim Tblo As Variant
Tblo = Range("E1:H11")
Me.ComboBox1.Clear
Me.ComboBox1.List = Tblo
End Sub
'------------------------------------
3 - ) Pour supprimer les éléments 3 et 4 de la liste de ton combobox (
cela ne va pas supprimer le contenu des cellules
de la plage de cellules ayant servi de référence, seulement modifier
l'affichage du contenu de ton combobobox.), J'ai
utilisé et préféré l'événement LostFocus du combobox plutôt que l'événemet
Change ... car il y a suppression de données
de la liste ...!
'------------------------------------
Private Sub ComboBox1_LostFocus()
With ComboBox1.List
.List(.ListIndex, 2) = ""
.List(.ListIndex, 3) = ""
End With
End Sub
'------------------------------------
Réponse 2.
'*************************************
Supprimer les données de la plage de cellules qui correspondent aux
éléments 3 et 4 de la lignes sélectionnées du
combobox
'*************************************
1 ) Tu renseignes ton combobox par la propriété "ListFillRange"
directement en mode création dans la fenêtre des
propriétés et tu renseignes aussi les propriétés "ColumnCount" = 4 ,
ColumnWidths = 49,95 pt;49,95 pt;49,95 pt;49,95 pt
2 ) Choisi l'événement qui répond le mieux à ce que tu désires et utilise
ces lignes de code :
'----------------------------
Private Sub ComboBox1_Change()
Dim Rg As Range
On Error Resume Next
With Me.ComboBox1
Set Rg = Range(.ListFillRange)
If .ListIndex <> -1 Then
Application.EnableEvents = False
Rg(.ListIndex, 3).ClearContents
Rg(.ListIndex, 4).ClearContents
Application.EnableEvents = True
End If
End With
End Sub
'----------------------------
Et si tu désires autres chose, tu apportes les précisions nécessaires.
Salutations!
"Golf" a écrit dans le message de
news:
Bonjour
J'ai un combobox qui provient d'une feuille de calcul.
Il contient 4 colonnes E1:H11 j'ai créer un bouton sur le
combobox.
je souhaite qu'après avoir sélectionné une ligne et
après clic sur ce bouton, les éléments de la 3 et 4
colonnes s'effacent.
Je butte sur l'écriture.
Merci beaucoup
Bonjour Golf,
Voici le code a inséré dans ton formulaire :
Il te reste qu'à choisir l'événement qui déclenchera la mise à jour des
données et de ton combobox et de la plage des
données , AfterUpDate se met en branle lorsque tu sélectionne un autre
contrôle sur le formulaire...
adapte aussi le nom de la feuille où sont tes données dans la procédure
"Initialize"
'à mettre dans le haut du module formulaire,
'déclaration d'une variable de type Range
Dim Rg As Range
'------------------------------------------
Private Sub ComboBox1_AfterUpdate()
With Me.ComboBox1
If .ListIndex <> -1 Then
Application.EnableEvents = False
Rg(.ListIndex + 1, 3).ClearContents
Rg(.ListIndex + 1, 4).ClearContents
Application.EnableEvents = True
.List(.ListIndex, 2) = ""
.List(.ListIndex, 3) = ""
End If
End With
End Sub
'------------------------------------------
Private Sub UserForm_Initialize()
Dim Tblo As Variant
With Worksheets("Feuil1")
Set Rg = .Range("E1:H11")
Tblo = Rg
End With
With Me.ComboBox1
.ColumnCount = 4
.ColumnWidths = "49,95 pt;49,95 pt;49,95 pt;49,95"
.List = Tblo
End With
End Sub
'------------------------------------------
Salutations!
"Golf" a écrit dans le message de
news:
Euh, en fait, je te donne des explications plus claires.
J'ai au départ dans ma feuille de calcul, un tableau E1:H11
qui alimente ma listbox qui est sur un userform.On ne voit pas la feuille
de
calcul.
Donc, je vois mes 11 lignes complètes dans ma listbox1
je souhaite après un clic sur une des lignes et clic sur un bouton, qui
est
sur le userform à coté de listbox.
Je souhaite donc que les éléments de la 3 et 4 colonne de la même ligne
s'effacent
Je n'arrive pas à adapter tes procédures
Merci beaucoup
"michdenis" a écrit dans le message de
news:Bonjour Golf,
Tu veux dire que tu as un combobox qui est dans la feuille de calcul et
qui provient de la barre d'outils "Contrôle".
Ta question n'est pas claire
"avoir sélectionné une ligne et après clic sur ce bouton, les éléments
de
la 3 et 4 colonnes s'effacent."
Qu'est-ce qui doit s'effacer ?
A ) les valeurs qui sont inscrites dans la liste du combobox lui-même ?
OU
B ) Les valeurs dans la plage de cellules qui correspondent aux éléments
3
et 4 de la ligne sélectionnée dans lecombobox.
'*************************************
Pour Répondre à la question A : Suppression des données seulement de la
liste du combobox.'*************************************
1- ) Tu ne dois pas utiliser la propriété ListFillRange pour définir le
contenu de la liste de ton combobox.
2-) Pour remplir la liste de ton combobox, j'ai choisi l'événement
"Activation de la feuille " où est situé le combobox,Selon ton application, d'autres événements peuvent mieux appropriés pour
cette tâche.'------------------------------------
Private Sub Worksheet_Activate()
Dim Tblo As Variant
Tblo = Range("E1:H11")
Me.ComboBox1.Clear
Me.ComboBox1.List = Tblo
End Sub
'------------------------------------
3 - ) Pour supprimer les éléments 3 et 4 de la liste de ton combobox (
cela ne va pas supprimer le contenu des cellulesde la plage de cellules ayant servi de référence, seulement modifier
l'affichage du contenu de ton combobobox.), J'aiutilisé et préféré l'événement LostFocus du combobox plutôt que
l'événemet
Change ... car il y a suppression de donnéesde la liste ...!
'------------------------------------
Private Sub ComboBox1_LostFocus()
With ComboBox1.List
.List(.ListIndex, 2) = ""
.List(.ListIndex, 3) = ""
End With
End Sub
'------------------------------------
Réponse 2.
'*************************************
Supprimer les données de la plage de cellules qui correspondent aux
éléments 3 et 4 de la lignes sélectionnées ducombobox
'*************************************
1 ) Tu renseignes ton combobox par la propriété "ListFillRange"
directement en mode création dans la fenêtre despropriétés et tu renseignes aussi les propriétés "ColumnCount" = 4 ,
ColumnWidths = 49,95 pt;49,95 pt;49,95 pt;49,95 pt
2 ) Choisi l'événement qui répond le mieux à ce que tu désires et
utilise
ces lignes de code :
'----------------------------
Private Sub ComboBox1_Change()
Dim Rg As Range
On Error Resume Next
With Me.ComboBox1
Set Rg = Range(.ListFillRange)
If .ListIndex <> -1 Then
Application.EnableEvents = False
Rg(.ListIndex, 3).ClearContents
Rg(.ListIndex, 4).ClearContents
Application.EnableEvents = True
End If
End With
End Sub
'----------------------------
Et si tu désires autres chose, tu apportes les précisions nécessaires.
Salutations!
"Golf" a écrit dans le message de
news:Bonjour
J'ai un combobox qui provient d'une feuille de calcul.
Il contient 4 colonnes E1:H11 j'ai créer un bouton sur le
combobox.
je souhaite qu'après avoir sélectionné une ligne et
après clic sur ce bouton, les éléments de la 3 et 4
colonnes s'effacent.
Je butte sur l'écriture.
Merci beaucoup
Bonjour Golf,
Voici le code a inséré dans ton formulaire :
Il te reste qu'à choisir l'événement qui déclenchera la mise à jour des
données et de ton combobox et de la plage des
données , AfterUpDate se met en branle lorsque tu sélectionne un autre
contrôle sur le formulaire...
adapte aussi le nom de la feuille où sont tes données dans la procédure
"Initialize"
'à mettre dans le haut du module formulaire,
'déclaration d'une variable de type Range
Dim Rg As Range
'------------------------------------------
Private Sub ComboBox1_AfterUpdate()
With Me.ComboBox1
If .ListIndex <> -1 Then
Application.EnableEvents = False
Rg(.ListIndex + 1, 3).ClearContents
Rg(.ListIndex + 1, 4).ClearContents
Application.EnableEvents = True
.List(.ListIndex, 2) = ""
.List(.ListIndex, 3) = ""
End If
End With
End Sub
'------------------------------------------
Private Sub UserForm_Initialize()
Dim Tblo As Variant
With Worksheets("Feuil1")
Set Rg = .Range("E1:H11")
Tblo = Rg
End With
With Me.ComboBox1
.ColumnCount = 4
.ColumnWidths = "49,95 pt;49,95 pt;49,95 pt;49,95"
.List = Tblo
End With
End Sub
'------------------------------------------
Salutations!
"Golf" <Golf@titi.fr> a écrit dans le message de
news:ugg4E2UXEHA.1152@TK2MSFTNGP09.phx.gbl...
Euh, en fait, je te donne des explications plus claires.
J'ai au départ dans ma feuille de calcul, un tableau E1:H11
qui alimente ma listbox qui est sur un userform.On ne voit pas la feuille
de
calcul.
Donc, je vois mes 11 lignes complètes dans ma listbox1
je souhaite après un clic sur une des lignes et clic sur un bouton, qui
est
sur le userform à coté de listbox.
Je souhaite donc que les éléments de la 3 et 4 colonne de la même ligne
s'effacent
Je n'arrive pas à adapter tes procédures
Merci beaucoup
"michdenis" <michdenis@hotmail.com> a écrit dans le message de
news:eKQ29rUXEHA.1656@TK2MSFTNGP09.phx.gbl...
Bonjour Golf,
Tu veux dire que tu as un combobox qui est dans la feuille de calcul et
qui provient de la barre d'outils "Contrôle".
Ta question n'est pas claire
"avoir sélectionné une ligne et après clic sur ce bouton, les éléments
de
la 3 et 4 colonnes s'effacent."
Qu'est-ce qui doit s'effacer ?
A ) les valeurs qui sont inscrites dans la liste du combobox lui-même ?
OU
B ) Les valeurs dans la plage de cellules qui correspondent aux éléments
3
et 4 de la ligne sélectionnée dans le
combobox.
'*************************************
Pour Répondre à la question A : Suppression des données seulement de la
liste du combobox.
'*************************************
1- ) Tu ne dois pas utiliser la propriété ListFillRange pour définir le
contenu de la liste de ton combobox.
2-) Pour remplir la liste de ton combobox, j'ai choisi l'événement
"Activation de la feuille " où est situé le combobox,
Selon ton application, d'autres événements peuvent mieux appropriés pour
cette tâche.
'------------------------------------
Private Sub Worksheet_Activate()
Dim Tblo As Variant
Tblo = Range("E1:H11")
Me.ComboBox1.Clear
Me.ComboBox1.List = Tblo
End Sub
'------------------------------------
3 - ) Pour supprimer les éléments 3 et 4 de la liste de ton combobox (
cela ne va pas supprimer le contenu des cellules
de la plage de cellules ayant servi de référence, seulement modifier
l'affichage du contenu de ton combobobox.), J'ai
utilisé et préféré l'événement LostFocus du combobox plutôt que
l'événemet
Change ... car il y a suppression de données
de la liste ...!
'------------------------------------
Private Sub ComboBox1_LostFocus()
With ComboBox1.List
.List(.ListIndex, 2) = ""
.List(.ListIndex, 3) = ""
End With
End Sub
'------------------------------------
Réponse 2.
'*************************************
Supprimer les données de la plage de cellules qui correspondent aux
éléments 3 et 4 de la lignes sélectionnées du
combobox
'*************************************
1 ) Tu renseignes ton combobox par la propriété "ListFillRange"
directement en mode création dans la fenêtre des
propriétés et tu renseignes aussi les propriétés "ColumnCount" = 4 ,
ColumnWidths = 49,95 pt;49,95 pt;49,95 pt;49,95 pt
2 ) Choisi l'événement qui répond le mieux à ce que tu désires et
utilise
ces lignes de code :
'----------------------------
Private Sub ComboBox1_Change()
Dim Rg As Range
On Error Resume Next
With Me.ComboBox1
Set Rg = Range(.ListFillRange)
If .ListIndex <> -1 Then
Application.EnableEvents = False
Rg(.ListIndex, 3).ClearContents
Rg(.ListIndex, 4).ClearContents
Application.EnableEvents = True
End If
End With
End Sub
'----------------------------
Et si tu désires autres chose, tu apportes les précisions nécessaires.
Salutations!
"Golf" <Golf@titi.fr> a écrit dans le message de
news:uSiHCaTXEHA.4020@TK2MSFTNGP09.phx.gbl...
Bonjour
J'ai un combobox qui provient d'une feuille de calcul.
Il contient 4 colonnes E1:H11 j'ai créer un bouton sur le
combobox.
je souhaite qu'après avoir sélectionné une ligne et
après clic sur ce bouton, les éléments de la 3 et 4
colonnes s'effacent.
Je butte sur l'écriture.
Merci beaucoup
Bonjour Golf,
Voici le code a inséré dans ton formulaire :
Il te reste qu'à choisir l'événement qui déclenchera la mise à jour des
données et de ton combobox et de la plage des
données , AfterUpDate se met en branle lorsque tu sélectionne un autre
contrôle sur le formulaire...
adapte aussi le nom de la feuille où sont tes données dans la procédure
"Initialize"
'à mettre dans le haut du module formulaire,
'déclaration d'une variable de type Range
Dim Rg As Range
'------------------------------------------
Private Sub ComboBox1_AfterUpdate()
With Me.ComboBox1
If .ListIndex <> -1 Then
Application.EnableEvents = False
Rg(.ListIndex + 1, 3).ClearContents
Rg(.ListIndex + 1, 4).ClearContents
Application.EnableEvents = True
.List(.ListIndex, 2) = ""
.List(.ListIndex, 3) = ""
End If
End With
End Sub
'------------------------------------------
Private Sub UserForm_Initialize()
Dim Tblo As Variant
With Worksheets("Feuil1")
Set Rg = .Range("E1:H11")
Tblo = Rg
End With
With Me.ComboBox1
.ColumnCount = 4
.ColumnWidths = "49,95 pt;49,95 pt;49,95 pt;49,95"
.List = Tblo
End With
End Sub
'------------------------------------------
Salutations!
"Golf" a écrit dans le message de
news:
Euh, en fait, je te donne des explications plus claires.
J'ai au départ dans ma feuille de calcul, un tableau E1:H11
qui alimente ma listbox qui est sur un userform.On ne voit pas la feuille
de
calcul.
Donc, je vois mes 11 lignes complètes dans ma listbox1
je souhaite après un clic sur une des lignes et clic sur un bouton, qui
est
sur le userform à coté de listbox.
Je souhaite donc que les éléments de la 3 et 4 colonne de la même ligne
s'effacent
Je n'arrive pas à adapter tes procédures
Merci beaucoup
"michdenis" a écrit dans le message de
news:Bonjour Golf,
Tu veux dire que tu as un combobox qui est dans la feuille de calcul et
qui provient de la barre d'outils "Contrôle".
Ta question n'est pas claire
"avoir sélectionné une ligne et après clic sur ce bouton, les éléments
de
la 3 et 4 colonnes s'effacent."
Qu'est-ce qui doit s'effacer ?
A ) les valeurs qui sont inscrites dans la liste du combobox lui-même ?
OU
B ) Les valeurs dans la plage de cellules qui correspondent aux éléments
3
et 4 de la ligne sélectionnée dans lecombobox.
'*************************************
Pour Répondre à la question A : Suppression des données seulement de la
liste du combobox.'*************************************
1- ) Tu ne dois pas utiliser la propriété ListFillRange pour définir le
contenu de la liste de ton combobox.
2-) Pour remplir la liste de ton combobox, j'ai choisi l'événement
"Activation de la feuille " où est situé le combobox,Selon ton application, d'autres événements peuvent mieux appropriés pour
cette tâche.'------------------------------------
Private Sub Worksheet_Activate()
Dim Tblo As Variant
Tblo = Range("E1:H11")
Me.ComboBox1.Clear
Me.ComboBox1.List = Tblo
End Sub
'------------------------------------
3 - ) Pour supprimer les éléments 3 et 4 de la liste de ton combobox (
cela ne va pas supprimer le contenu des cellulesde la plage de cellules ayant servi de référence, seulement modifier
l'affichage du contenu de ton combobobox.), J'aiutilisé et préféré l'événement LostFocus du combobox plutôt que
l'événemet
Change ... car il y a suppression de donnéesde la liste ...!
'------------------------------------
Private Sub ComboBox1_LostFocus()
With ComboBox1.List
.List(.ListIndex, 2) = ""
.List(.ListIndex, 3) = ""
End With
End Sub
'------------------------------------
Réponse 2.
'*************************************
Supprimer les données de la plage de cellules qui correspondent aux
éléments 3 et 4 de la lignes sélectionnées ducombobox
'*************************************
1 ) Tu renseignes ton combobox par la propriété "ListFillRange"
directement en mode création dans la fenêtre despropriétés et tu renseignes aussi les propriétés "ColumnCount" = 4 ,
ColumnWidths = 49,95 pt;49,95 pt;49,95 pt;49,95 pt
2 ) Choisi l'événement qui répond le mieux à ce que tu désires et
utilise
ces lignes de code :
'----------------------------
Private Sub ComboBox1_Change()
Dim Rg As Range
On Error Resume Next
With Me.ComboBox1
Set Rg = Range(.ListFillRange)
If .ListIndex <> -1 Then
Application.EnableEvents = False
Rg(.ListIndex, 3).ClearContents
Rg(.ListIndex, 4).ClearContents
Application.EnableEvents = True
End If
End With
End Sub
'----------------------------
Et si tu désires autres chose, tu apportes les précisions nécessaires.
Salutations!
"Golf" a écrit dans le message de
news:Bonjour
J'ai un combobox qui provient d'une feuille de calcul.
Il contient 4 colonnes E1:H11 j'ai créer un bouton sur le
combobox.
je souhaite qu'après avoir sélectionné une ligne et
après clic sur ce bouton, les éléments de la 3 et 4
colonnes s'effacent.
Je butte sur l'écriture.
Merci beaucoup