OVH Cloud OVH Cloud

Extraction de dates dans combobox

5 réponses
Avatar
EliotNaiss
Bonjour à tous,
je prend une colonne comprenant des dates, et je passe cette zone nommée en
paramètre pour alimenter une liste déroulante ds un userform.
Mais qd je déroule la liste j'ai bien les dates qui s'affichent mais qd je
clique sur un élément cette date est transformée en numérique (38765 par
exemple), donc pas moyen de vérifier que c'est bien cette date que je
voulais !!
Comment contourner ceci ??
Merci pour vore aide.
Cordialement
Eliot

5 réponses

Avatar
michdenis
Bonjour Eliot,

Laisse la propriété "RowSource" de ton combobox totalement vide.

Essaie ceci en adaptant le nom des objets et adresse de cellules.
'-----------------
Dim Tblo as variant
Dim Rg as range
With worksheets("Feuil1")
Set Rg = .range("A1:A" & .range("A65536").end(xlup).row)
Tblo = Rg
end with

With userform1.combobox.
.list = tblo
end with
'-----------------


Salutations!




"EliotNaiss" a écrit dans le message de news:
Bonjour à tous,
je prend une colonne comprenant des dates, et je passe cette zone nommée en
paramètre pour alimenter une liste déroulante ds un userform.
Mais qd je déroule la liste j'ai bien les dates qui s'affichent mais qd je
clique sur un élément cette date est transformée en numérique (38765 par
exemple), donc pas moyen de vérifier que c'est bien cette date que je
voulais !!
Comment contourner ceci ??
Merci pour vore aide.
Cordialement
Eliot
Avatar
EliotNaiss
Bonjour et merci michdenis.
je vais tester cela demain.
Cordialement
"michdenis" a écrit dans le message de news:

Bonjour Eliot,

Laisse la propriété "RowSource" de ton combobox totalement vide.

Essaie ceci en adaptant le nom des objets et adresse de cellules.
'-----------------
Dim Tblo as variant
Dim Rg as range
With worksheets("Feuil1")
Set Rg = .range("A1:A" & .range("A65536").end(xlup).row)
Tblo = Rg
end with

With userform1.combobox.
.list = tblo
end with
'-----------------


Salutations!




"EliotNaiss" a écrit dans le message de news:

Bonjour à tous,
je prend une colonne comprenant des dates, et je passe cette zone nommée
en
paramètre pour alimenter une liste déroulante ds un userform.
Mais qd je déroule la liste j'ai bien les dates qui s'affichent mais qd je
clique sur un élément cette date est transformée en numérique (38765 par
exemple), donc pas moyen de vérifier que c'est bien cette date que je
voulais !!
Comment contourner ceci ??
Merci pour vore aide.
Cordialement
Eliot





Avatar
EliotNaiss
OK cela fonctionne bien.merci.
Le choix ds ma liste déroulante me permet de faire un filtre automatique
ds un tableau avec comme critère mon combobox1.value, et cela marche.
Mais je voudrais que le contenu de ma liste combox2 soient les valeurs
correspondantes
à ce critère, et là .... grand mur !!
j'ai essayé ceci mais cela bug !
Private Sub ComboBox1_Change()
Range("B4").Select
Selection.AutoFilter
Selection.AutoFilter Field:=2, Criteria1:=Format(ComboBox1.Value,
"dd/mm/yy") '"17/03/06"
Dim Tblo1 As Variant
Dim Rg2 As Range
With Worksheets("base")
Set Rg2 = .Range("F5:C" &
.Range("F65536").End(xlUp).Row).SpecialCells(xlCellTypeVisible).Select
Tblo1 = Rg2
End With
ComboBox2.List = Tblo1
End Sub
PS:en F4 se trouve mon titre de colonne
As-tu une solution ?
Merci
"EliotNaiss" a écrit dans le message de news:

Bonjour et merci michdenis.
je vais tester cela demain.
Cordialement
"michdenis" a écrit dans le message de news:

Bonjour Eliot,

Laisse la propriété "RowSource" de ton combobox totalement vide.

Essaie ceci en adaptant le nom des objets et adresse de cellules.
'-----------------
Dim Tblo as variant
Dim Rg as range
With worksheets("Feuil1")
Set Rg = .range("A1:A" & .range("A65536").end(xlup).row)
Tblo = Rg
end with

With userform1.combobox.
.list = tblo
end with
'-----------------


Salutations!




"EliotNaiss" a écrit dans le message de news:

Bonjour à tous,
je prend une colonne comprenant des dates, et je passe cette zone nommée
en
paramètre pour alimenter une liste déroulante ds un userform.
Mais qd je déroule la liste j'ai bien les dates qui s'affichent mais qd
je
clique sur un élément cette date est transformée en numérique (38765 par
exemple), donc pas moyen de vérifier que c'est bien cette date que je
voulais !!
Comment contourner ceci ??
Merci pour vore aide.
Cordialement
Eliot









Avatar
EliotNaiss
je me suis trompé ds Range("F5:C" & et ai rectifié le C en F, mais je me
heurte à l'erreur 424
"EliotNaiss" a écrit dans le message de news:

OK cela fonctionne bien.merci.
Le choix ds ma liste déroulante me permet de faire un filtre automatique
ds un tableau avec comme critère mon combobox1.value, et cela marche.
Mais je voudrais que le contenu de ma liste combox2 soient les valeurs
correspondantes
à ce critère, et là .... grand mur !!
j'ai essayé ceci mais cela bug !
Private Sub ComboBox1_Change()
Range("B4").Select
Selection.AutoFilter
Selection.AutoFilter Field:=2, Criteria1:=Format(ComboBox1.Value,
"dd/mm/yy") '"17/03/06"
Dim Tblo1 As Variant
Dim Rg2 As Range
With Worksheets("base")
Set Rg2 = .Range("F5:C" &
.Range("F65536").End(xlUp).Row).SpecialCells(xlCellTypeVisible).Select
Tblo1 = Rg2
End With
ComboBox2.List = Tblo1
End Sub
PS:en F4 se trouve mon titre de colonne
As-tu une solution ?
Merci
"EliotNaiss" a écrit dans le message de news:

Bonjour et merci michdenis.
je vais tester cela demain.
Cordialement
"michdenis" a écrit dans le message de news:

Bonjour Eliot,

Laisse la propriété "RowSource" de ton combobox totalement vide.

Essaie ceci en adaptant le nom des objets et adresse de cellules.
'-----------------
Dim Tblo as variant
Dim Rg as range
With worksheets("Feuil1")
Set Rg = .range("A1:A" & .range("A65536").end(xlup).row)
Tblo = Rg
end with

With userform1.combobox.
.list = tblo
end with
'-----------------


Salutations!




"EliotNaiss" a écrit dans le message de news:

Bonjour à tous,
je prend une colonne comprenant des dates, et je passe cette zone nommée
en
paramètre pour alimenter une liste déroulante ds un userform.
Mais qd je déroule la liste j'ai bien les dates qui s'affichent mais qd
je
clique sur un élément cette date est transformée en numérique (38765 par
exemple), donc pas moyen de vérifier que c'est bien cette date que je
voulais !!
Comment contourner ceci ??
Merci pour vore aide.
Cordialement
Eliot













Avatar
michdenis
Bonjour EliotNaiss,

Copie le résultat de ton filtre automatique sur une autre feuille, cela aura
pour but de regrouper les enregistrements dans une plage continue. Pour ce faire.
utilise une feuille dont la fonction sera de recevoir une copie de la colonne
filtrée que tu veux utiliser dans ta deuxième liste déroulante. Si tu veux que cette
feuille ne soit pas disponible aux usagers, tu peux masquer cette feuille avec
une ligne de code comme celle-ci :
Worksheets("MaFeuilleAMasquer").visible = xlveryhidden

L'usage d'un "Tblo" n'est réalisable que sur une sélection continue de cellules.


Salutations!







"EliotNaiss" a écrit dans le message de news:
OK cela fonctionne bien.merci.
Le choix ds ma liste déroulante me permet de faire un filtre automatique
ds un tableau avec comme critère mon combobox1.value, et cela marche.
Mais je voudrais que le contenu de ma liste combox2 soient les valeurs
correspondantes
à ce critère, et là .... grand mur !!
j'ai essayé ceci mais cela bug !
Private Sub ComboBox1_Change()
Range("B4").Select
Selection.AutoFilter
Selection.AutoFilter Field:=2, Criteria1:=Format(ComboBox1.Value,
"dd/mm/yy") '"17/03/06"
Dim Tblo1 As Variant
Dim Rg2 As Range
With Worksheets("base")
Set Rg2 = .Range("F5:C" &
.Range("F65536").End(xlUp).Row).SpecialCells(xlCellTypeVisible).Select
Tblo1 = Rg2
End With
ComboBox2.List = Tblo1
End Sub
PS:en F4 se trouve mon titre de colonne
As-tu une solution ?
Merci
"EliotNaiss" a écrit dans le message de news:

Bonjour et merci michdenis.
je vais tester cela demain.
Cordialement
"michdenis" a écrit dans le message de news:

Bonjour Eliot,

Laisse la propriété "RowSource" de ton combobox totalement vide.

Essaie ceci en adaptant le nom des objets et adresse de cellules.
'-----------------
Dim Tblo as variant
Dim Rg as range
With worksheets("Feuil1")
Set Rg = .range("A1:A" & .range("A65536").end(xlup).row)
Tblo = Rg
end with

With userform1.combobox.
.list = tblo
end with
'-----------------


Salutations!




"EliotNaiss" a écrit dans le message de news:

Bonjour à tous,
je prend une colonne comprenant des dates, et je passe cette zone nommée
en
paramètre pour alimenter une liste déroulante ds un userform.
Mais qd je déroule la liste j'ai bien les dates qui s'affichent mais qd
je
clique sur un élément cette date est transformée en numérique (38765 par
exemple), donc pas moyen de vérifier que c'est bien cette date que je
voulais !!
Comment contourner ceci ??
Merci pour vore aide.
Cordialement
Eliot