XL 2010 [Résolu] - Erreur lors de la restitution d'une valeur de ComboBox

Eric C

XLDnaute Barbatruc
Bonjour le forum
Bonjour à toutes & à tous

Pour une raison que j'ignore, le fichier joint fonctionne parfaitement si j'utilise des valeurs de type String (colonne A). Si je déclare mon Usf avec les valeurs de la colonne B (horaires), une erreur est générée « Er 91 – Variable Objet non définie » ? Que faut il faire pour cela fonctionne.

Je ne sais utiliser la fonction « Débogage » du Vbe, si une âme charitable pouvait me donner un lien vers cette fonction, cela serait bienvenu. Par le passé, j'en ai essayé mais trop compliqué donc renonciation.
Merci à vous

Bonne après-midi
@+ Eric c
 

Pièces jointes

  • Essai String et Heures.xlsm
    21.8 KB · Affichages: 10
Solution
Hello

correction ici
VB:
Private Sub UserForm_Initialize()
Dim c As Range
For Each c In [Heures]
    ComboBox1.AddItem Format(c, "hh:mm")
Next c
'LIGNE SUPPRIMEE
End Sub

PS: pour utiliser le débugger.. il suffit d'ouvrir l'éditeur VBA (Alt+F11) et jouer de la touche F8 pour suivre le déroulement de la macro

vgendron

XLDnaute Barbatruc
Hello

correction ici
VB:
Private Sub UserForm_Initialize()
Dim c As Range
For Each c In [Heures]
    ComboBox1.AddItem Format(c, "hh:mm")
Next c
'LIGNE SUPPRIMEE
End Sub

PS: pour utiliser le débugger.. il suffit d'ouvrir l'éditeur VBA (Alt+F11) et jouer de la touche F8 pour suivre le déroulement de la macro
 

Eric C

XLDnaute Barbatruc
Re le forum
Bonjour Vincent. Trop fort... Pour une ligne de code qui, pour une autre version de ce fichier, fonctionnait !!! J'ai voulu simplifié afin de ne pas utiliser les double-click pour l'Usf et puis un click pour la sélection et puis RIEN.....
Je ne peux pas dire que je n'ai pas passé de temps avant de venir "crier au secours" mais depuis hier après-midi, j'ai testé et re testé... en vain.
Grand Merki à toi
P.s : Je vais chercher un site dédié au débogage car F8 F8... cela ne m'imspire pas. EStce grace à ce suivi (F8) que tu as trouvé la ligne de trop ?
Bonne fin d'après-midi
@+ Eric c ;)
 

laurent950

XLDnaute Barbatruc
Bonjour @Eric C

Maintenant cela fonctionne avec toutes les formats :

Ici je remplace cela
* Me.ComboBox1.AddItem Format(c, "hh:mm")
par cela :
* Me.ComboBox1.AddItem Format(c, c.NumberFormat)

VB:
Option Explicit
Private Plg As Range ' La plage
Private Sub UserForm_Initialize()
Dim c As Range
    Set Plg = Range("D1:D6")  ' La plage
    For Each c In Plg
        Me.ComboBox1.AddItem Format(c, c.NumberFormat) ' Le format
    Next c
 End Sub
Private Sub ComboBox1_Click()
 ActiveCell.Value = Me.ComboBox1.Value
Unload Me
Me.ComboBox1.Clear
End Sub
 
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
314 496
Messages
2 110 236
Membres
110 708
dernier inscrit
novy16