IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Combobox qui transforme 12:00 en 00:05 [XL-2016]


Sujet :

Macros et VBA Excel

  1. #1
    Membre à l'essai
    Homme Profil pro
    Gestionnaire de camping
    Inscrit en
    Septembre 2014
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Corse (Corse)

    Informations professionnelles :
    Activité : Gestionnaire de camping
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Septembre 2014
    Messages : 23
    Points : 16
    Points
    16
    Par défaut Combobox qui transforme 12:00 en 00:05
    Bonne année à tous,
    J'ai une petite bizarrerie dans un combobox.
    Le rowsource des propriétés du combobox pointe sur une liste d'heures. C'est une petit truc fait rapidement et tout simple pour insérer une heure dans une cellule.

    Le combobox est bien configuré pour les heures comme je le souhaite en hh:mm.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    heures_fin.Value = Format(heures_fin.Value, "hh:mm")
    Et cela fonctionne parfaitement de 00:00 à 23:59.
    SAUF pour une heure bien précise : 12:00. Là, au lieu de 12:00, c'est 00:05 qui s'affiche. Mystère.

    Alors bien sûr j'ai fait tout les tests d'options et de formats avant de poster ce billet. J'ai rien trouvé. Tout le forum y est passé, rien.

    Mais j'ai résolu mon problème en mettant dans la liste de référence (rowsource) 12:00:01. Un décalage d'une seconde n'ayant aucune incidence sur les calculs effectués par la suite.

    Voilà, le problème est résolu, mais qu'à moitié. D’où ma demande auprès des cadors du vba.

    Merci.

  2. #2
    Rédacteur
    Avatar de Philippe Tulliez
    Homme Profil pro
    Formateur, développeur et consultant Excel, Access, Word et VBA
    Inscrit en
    Janvier 2010
    Messages
    12 755
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur, développeur et consultant Excel, Access, Word et VBA

    Informations forums :
    Inscription : Janvier 2010
    Messages : 12 755
    Points : 28 606
    Points
    28 606
    Billets dans le blog
    53
    Par défaut
    Bonjour,
    Je crois que tu mélanges tout ou tu n'expliques pas bien car cette ligne de code heures_fin.Value = Format(heures_fin.Value, "hh:mm") me laisse perplexe.
    Comment se nomme le contrôle ComboBox ?
    Il faudrait que tu affiches la ligne de code où tu initialises le ComboBox (RowSource) ainsi que la ligne de code qui correspond à la sélection de la ligne (événement Click ou Change)

    Quel est le but de la sélection de cette heure dans le ComboBox ?
    Si c'est pour écrire dans excel l'heure sélectionnée dans la liste, voici un petit exemple très rapide qui fonctionne (Attention que la parentalité de l'objet Range n'est pas utilisée dans ces quelques lignes).

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Private Sub ComboBox1_Click()
     With Range("C2")
     .Value = Range("A" & ComboBox1.ListIndex + 2)
     .NumberFormat = "[hh]:mm"
     End With
    End Sub
    Private Sub UserForm_Initialize()
     Me.ComboBox1.RowSource = Range("A2:A6").Address
     End Sub
    le format heure de A2:A6 doit être au format Heure soit hh:mm si l'on ne dépasse pas 24:00 et [hh]:mm dans le cas contraire

    [EDIT]
    Pour information, cette ligne de code ne peut pas te renvoyer un bon résultat la propriété Value du ComboBox renvoyant un String alors que la fonction Format converti une valeur en string
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    heures_fin.Value = Format(heures_fin.Value, "hh:mm")
    Extrait de l'aide en ligne de Format
    Renvoie une valeur de type Variant (String) contenant une expression formatée en fonction des instructions contenues dans l'expression de mise en forme.
    Philippe Tulliez
    Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)
    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
    Mes tutoriels : Utilisation de l'assistant « Insertion de fonction », Les filtres avancés ou élaborés dans Excel
    Mon dernier billet : Utilisation de la fonction Dir en VBA pour vérifier l'existence d'un fichier

  3. #3
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par serpiccio Voir le message
    .
    Bonjour,

    Comme Philippe (que je salue), j'ai cherché également à quoi correspondait le combobox (userform, contrôle active X directement dans l'onglet ?). J'ai testé plusieurs solutions comme dans le vidage d'écran ci-dessous.

    Pièce jointe 341067

    La Combobox à gauche agit directement sur la cellule D3.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Private Sub ComboBox1_Change()
     
      With ActiveSheet.Range("HeureFin")
           .Value = CSng(ComboBox1)
           .NumberFormat = "hh:mm"
      End With
     
    End Sub
    La deuxième combobox agit sur la cellule E2 (zone nommée = ChoixListe) à partir de ListIndex. La formule pour récupérer l'heure est : =INDEX(ListeDesHeures;ChoixListe;1)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    Private Sub ComboBox2_Change()
     
            With ActiveSheet.Range("ChoixListe")
                .Value = ComboBox2.ListIndex + 1
            End With
     
    End Sub
    Le chargement de la combobox se fait à partir de l'événement Activate de la feuille.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    Private Sub Worksheet_Activate()
     
    Dim I As Integer, IndexEnCours As Integer
    Dim AireDesHeures As Range
     
          With Sheets("Feuil1")
               IndexEnCours = .Range("ChoixListe")
               Set AireDesHeures = .Range("ListeDesHeures")
          End With
     
          With Me.ComboBox2
             .Clear
             For I = 1 To AireDesHeures.Count
                 .AddItem Format(AireDesHeures(I), "hh:mm")
             Next I
             .ListIndex = IndexEnCours - 1
         End With
         Set AireDesHeures = Nothing
     
    End Sub
    Quant au userform, il a le même fonctionnement que la Combobox2.

  4. #4
    Membre extrêmement actif
    Homme Profil pro
    aucune
    Inscrit en
    Avril 2016
    Messages
    7 563
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 82
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Avril 2016
    Messages : 7 563
    Points : 12 422
    Points
    12 422
    Par défaut
    Bonjour

    Ma réaction est identique à celle de Philippe.
    Ce qui est exposé ne permet nullement de cerner les tenants. Les aboutissants eux-mêmes ne sont pas vraiment clairs, même si on les devine.
    J'invite donc serpiccio :
    1) à mettre ici une copie d'écran (pas son classeur, mais une copie d'écran) montrant, entêtes de lignes et colonnes incluses, la feuille de calcul contenant la plage de données utilisée par la propriété RowSource de sa combobox (dont nous savons, Eric, qu'elle est placée sur un userform, puisque sinon : c'eût été la propriété ListFillRange et non RowSource)
    2) à nous préciser où et comment (en mode création ou par code ?) il a spécifié la propriété RowSource de cette Combobox
    3) à nous montrer le code par lequel il attribue à une cellule la valeur sélectionnée dans sa combobox
    4) à nous préciser le format éventuellement donné à la cellule de destination (je parle bien de son propre format et non du format donné à la valeur qu'on lui attribue)
    5) si la cellule de destination est nommée : nous préciser le nom qui lui a été attribué

    Impossible, sans tout cela, de donner une réponse sans faille, bien que je subodore personnellement la conjugaison (je dis bien conjugaison) de deux maladresses, dont l'une (je dis bien l'une) serait sur la correspondance entre la propriété ListIndex de la Combo et le N° de ligne concernée de la plage RowSource
    Je n'accepte pas de demande d' "amitié" individuelle. Tout développeur est pour moi un ami.
    Je n'ouvre AUCUN classeur tiers (avec ou sans macro ******). Ne m'en proposez donc pas .

    ****** : Non, non ... un classeur .xlsx ne "peut" par exemple et entre autres pas contenir un activex (de surcroît invisible) , "bien sûr" ...

    Il est illusoire de penser que l'on saurait exprimer valablement et précisément en un langage (rigide) de développement ce que l'on peine à exprimer dans le langage naturel, bien plus souple.

  5. #5
    Membre à l'essai
    Homme Profil pro
    Gestionnaire de camping
    Inscrit en
    Septembre 2014
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Corse (Corse)

    Informations professionnelles :
    Activité : Gestionnaire de camping
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Septembre 2014
    Messages : 23
    Points : 16
    Points
    16
    Par défaut Les précisions demandées
    Bonjour à tous et merci de vos réponses.
    Réponses qui me montrent tous les progrès que j'ai à faire...
    C'est à me demander par où je dois commencer pour faire suite à vos réponses. En tous cas, par messages, c'est dur de s'exprimer et de se faire comprendre, comme comprendre ce qui est expliqué.

    Voici donc la feuille excel dans laquelle je me suis construit un emploi du temps perso, avec des fonctions perso qu'on ne retrouve pas dans les emplois du temps proposés. Ceci est un autre débat.
    Nom : ecran edt.jpg
Affichages : 777
Taille : 93,1 Ko
    Nous y voyons une partie de mon userform. Les des combobox qui me proposent de sélectionner une heure.
    En dessous, le tableur. Si je sélectionne une heure dans combobox, dans la cellule début ou fin, l'heure choisie sera insérée. C'est une option, la plupart du temps je tape l'heure au clavier. Mais c'est pas grave.

    Et maintenant voici le code pour le combobox de l'heure de début (heure_debut) et à gauche dans la fenêtre des propriétés, dans l'option rowsource, il y a le nom de la plage de cellule qui contient les heures. Plage de cellule configurée dans le gestionnaire de noms, bien sûr, s'appelant "heures"
    Nom : macro heure.jpg
Affichages : 957
Taille : 109,1 Ko
    Je ne fais donc aucune procédure de chargement du combobox, je lui dit juste dans les propriétés à quoi il doit se référer. C'est ce que je fais en général, et dans le code je précise le format et le comportement (focus ou autre...). Ca marche pour tout. Texte, nombres, dates etc. Sauf pour 12:00.

    Pour finir, la liste de références nommées "heure" est dans une autre feuille.
    Nom : plage horaire.jpg
Affichages : 719
Taille : 9,4 Ko
    Je répond maintenant aux remarques formulées dans vos réponses.

    Philippe,
    Je crois que tu mélanges tout ou tu n'expliques pas bien car cette ligne de code heures_fin.Value = Format(heures_fin.Value, "hh:mm") me laisse perplexe.
    ceci est une ligne de code exposée dans ce forum qui indique comment imposer un format dans le combobox. Ca m'a paru très simple d'utilisation, alors j'ai adopté. Je vois dans les explications qu'il est bien plus subtil que cela d'imposer un format. Mais bon.... Tant que ça marche, où est le problème ? J'aimerais savoir.

    Attention que la parentalité de l'objet Range n'est pas utilisée dans ces quelques lignes
    Là, Philippe, désolé, il me faut un traducteur.

    Pour information, cette ligne de code ne peut pas te renvoyer un bon résultat la propriété Value du ComboBox renvoyant un String alors que la fonction Format converti une valeur en string
    Oui, Philippe, il est bien là le problème. C'est un problème de string. Je ne connais pas encore toutes les ficelles du vba.

    Eric,
    Le chargement de la combobox se fait à partir de l'événement Activate de la feuille.
    Est-ce ton choix, ou doit on pour un soucis d'organisation ou d'efficacité, toujours initialiser les formulaires dans la procédure activate de la feuille ?
    Jusqu'ici je met toujours dans la procédure du userform. Une erreur ?

    Unparia,
    dont nous savons, Eric, qu'elle est placée sur un userform, puisque sinon : c'eût été la propriété ListFillRange et non RowSource
    Je n'ai pas compris pourquoi tu écris cela en citant Eric. Mais j'aimerai être renseigné sur le fait que les résultats de ListFillRange et RowSource sont les mêmes ? Dans le forum c'est ce qu'il parait.


    Voilà,
    à noter qu'en apprenant seul en piochant sur les forums, sur des sujets qui approchent sans correspondre exactement à ce qu'on veut, on ne se préoccupe que très peu de la structure générale de fonctionnement de VBA. Au lieu de commencer par étudier l'environnement pour ensuite étudier les codes et procédures, on va directement tenter de placer un bout de code par ci, un autre par là, sans connaître les implications générales. VOILA, les cours qu'ils seraient utiles de trouver. Je n'ai pas réussi. Si vous savez ou c'est...

    En vous remerciant tous de votre travail.

  6. #6
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par serpiccio Voir le message
    Bonjour,

    Eric,
    Est-ce ton choix, ou doit on pour un soucis d'organisation ou d'efficacité, toujours initialiser les formulaires dans la procédure activate de la feuille ?
    Jusqu'ici je met toujours dans la procédure du userform. Une erreur ?
    Il s'agit ici de la combobox2 qui est positionnée directement sur l'onglet et pas l'exemple du userform. Pour la charger j'utilise l'évènement change de la feuille dès l'ouverture du fichier (cf code dans ThisWorkbook). C'est un artifice pour ne pas avoir à gérer cela par ailleurs. Pour les userforms, le chargement des listbox et combobox se fait directement lors de leur appel.

    Unparia,
    Je n'ai pas compris pourquoi tu écris cela en citant Eric. Mais j'aimerai être renseigné sur le fait que les résultats de ListFillRange et RowSource sont les mêmes ? Dans le forum c'est ce qu'il parait.
    Si tu regardes comment est fait mon userform, tu verras que je n'utilise pas les propriétés ListFillRange et RowSource dans ma combobox.

  7. #7
    Membre actif
    Homme Profil pro
    Pompier de service
    Inscrit en
    Février 2014
    Messages
    144
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Pompier de service

    Informations forums :
    Inscription : Février 2014
    Messages : 144
    Points : 223
    Points
    223
    Par défaut
    Bonjour,

    Juste pour le fun, dans la fenêtre "exécution" du code VBA, essaie ça :
    ? Format("0,5", "hh:mm")
    puis
    ? Format(0.5, "hh:mm")
    puis
    ? Format("0.5", "hh:mm")

    je pense que tu y verras plus clair sur les conversions de conversions de conversions de type
    "Rien ne sert de dire ce qu'on fait, si on ne fait pas ce qu'on dit" (Moi)

  8. #8
    Rédacteur
    Avatar de Philippe Tulliez
    Homme Profil pro
    Formateur, développeur et consultant Excel, Access, Word et VBA
    Inscrit en
    Janvier 2010
    Messages
    12 755
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur, développeur et consultant Excel, Access, Word et VBA

    Informations forums :
    Inscription : Janvier 2010
    Messages : 12 755
    Points : 28 606
    Points
    28 606
    Billets dans le blog
    53
    Par défaut
    Bonjour,
    Attention que la parentalité de l'objet Range n'est pas utilisée dans ces quelques lignes
    Là, Philippe, désolé, il me faut un traducteur.
    C'est la base.
    Même si les puristes disent que ce n'est pas tout à fait vrai, le VBA est un Programme Orienté Objet (son acronyme POO)
    Cela signifie que l'on manipule des objets.
    Une cellule est un objet, une feuille est un objet, l'application Excel est un objet, etc.
    Un objet a un parent. Le parent de la cellule est sa feuille qui elle même a comme parent le classeur qui lui même a l'application Excel comme parent, etc.
    Donc si tu ne précises pas la parentalité d'un objet, tu risques de lire ou d'écrire a un mauvais endroit parce-que dans la ligne de code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Range("A2").Value = "Toto"
    on va écrire le texte Toto dans la cellule A2 de la feuille active alors que si nous précisons sa parentalité complète comme par exemple
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ThisWorkbook.Worksheets("DataBase").Range("A2").Value = "Toto"
    Nous irons bien écrire la valeur "Toto" dans la cellule A2 de la feuille nommée DataBase du classeur où se trouve le code VBA et ce quelque soit la feuille active.
    Philippe Tulliez
    Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)
    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
    Mes tutoriels : Utilisation de l'assistant « Insertion de fonction », Les filtres avancés ou élaborés dans Excel
    Mon dernier billet : Utilisation de la fonction Dir en VBA pour vérifier l'existence d'un fichier

  9. #9
    Membre à l'essai
    Homme Profil pro
    Gestionnaire de camping
    Inscrit en
    Septembre 2014
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Corse (Corse)

    Informations professionnelles :
    Activité : Gestionnaire de camping
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Septembre 2014
    Messages : 23
    Points : 16
    Points
    16
    Par défaut La suite.
    Si tu regardes comment est fait mon userform, tu verras que je n'utilise pas les propriétés ListFillRange et RowSource dans ma combobox.
    Oui, Eric. J'ai bien vu, et c'est pour cela que je pose la question à Unparia. Cette question ne t'est pas destinée.

    Merci Philippe (Maître Philippe).

    Désolé Phil'oche, échec total.

    Je retravaille mon affaire et vous répond.

  10. #10
    Membre extrêmement actif
    Homme Profil pro
    aucune
    Inscrit en
    Avril 2016
    Messages
    7 563
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 82
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Avril 2016
    Messages : 7 563
    Points : 12 422
    Points
    12 422
    Par défaut
    Mes observations à propos du RowSource trouvent tout simplement leur fondement dans ce qu'expose lui-même serpiccio :
    1) son tout premier message :
    Le rowsource des propriétés du combobox pointe sur une liste d'heures
    2) confirmé plus loin (sa capture d'écran)

    A serpicio : j'ai maintenant les réponses à mes questions 1 et 2. Manquent les réponses aux questions 3, 4 et 5
    Je n'accepte pas de demande d' "amitié" individuelle. Tout développeur est pour moi un ami.
    Je n'ouvre AUCUN classeur tiers (avec ou sans macro ******). Ne m'en proposez donc pas .

    ****** : Non, non ... un classeur .xlsx ne "peut" par exemple et entre autres pas contenir un activex (de surcroît invisible) , "bien sûr" ...

    Il est illusoire de penser que l'on saurait exprimer valablement et précisément en un langage (rigide) de développement ce que l'on peine à exprimer dans le langage naturel, bien plus souple.

  11. #11
    Membre à l'essai
    Homme Profil pro
    Gestionnaire de camping
    Inscrit en
    Septembre 2014
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Corse (Corse)

    Informations professionnelles :
    Activité : Gestionnaire de camping
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Septembre 2014
    Messages : 23
    Points : 16
    Points
    16
    Par défaut Elements supplémentaires
    Exact, Unparia. J'ai oublié des éléments de réponse.

    Pour la réponse 3 :
    Lorsque j'ai mis les bonne heures dans les deux combobox, je click OK et le code ci-dessous s'exécute. Il me suffit d'être sur la bonne ligne.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Private Sub heures_ok_Click()
    '12/12'2017
    ActiveCell.Rows("1:1").EntireRow.Select
    ActiveCell.Select
    ActiveCell.Offset(0, 1).Select
    ActiveCell = Format(heures_début.Value, "hh:mm")
    ActiveCell.Offset(0, 1).Select
    ActiveCell = Format(heures_fin.Value, "hh:mm")
    Sheets("planning").Activate
    AppActivate Application.Caption
    End Sub
    Pour la réponse 4 :
    Nom : format heure.jpg
Affichages : 762
Taille : 38,6 Ko

    Pour la réponse 5 :
    La cellule n'est pas nommée.

  12. #12
    Membre actif
    Homme Profil pro
    Pompier de service
    Inscrit en
    Février 2014
    Messages
    144
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Pompier de service

    Informations forums :
    Inscription : Février 2014
    Messages : 144
    Points : 223
    Points
    223
    Par défaut
    Ce que je voulais dire, c'est que heures_fin.Value va renvoyer une valeur NUMERIQUE !

    Or une cellule formatée en hh:mm avec un contenu égal à 12:00 aura une valeur égale à 0,5

    Donc au mieux, si le séparateur est une virgule, Format("0,5", "hh:mm") va renvoyer 00:00, et au pire (comme dans ton cas), la virgule va être remplacée par un point et Format("0.5", "hh:mm") va renvoyer 00:05

    Ai-je été plus clair ?
    "Rien ne sert de dire ce qu'on fait, si on ne fait pas ce qu'on dit" (Moi)

  13. #13
    Membre à l'essai
    Homme Profil pro
    Gestionnaire de camping
    Inscrit en
    Septembre 2014
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Corse (Corse)

    Informations professionnelles :
    Activité : Gestionnaire de camping
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Septembre 2014
    Messages : 23
    Points : 16
    Points
    16
    Par défaut
    Très clair.
    Merci Phil'oche.

  14. #14
    Membre à l'essai
    Homme Profil pro
    Gestionnaire de camping
    Inscrit en
    Septembre 2014
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Corse (Corse)

    Informations professionnelles :
    Activité : Gestionnaire de camping
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Septembre 2014
    Messages : 23
    Points : 16
    Points
    16
    Par défaut
    Je crois que maintenant la solution apparaît.
    Un petit bout de solution dans chaque réponse.
    Il suffit d'alimenter le combobox correctement. Moi je raisonne en faignant. Moins j'en fais pour le même résultat mieux c'est. Ce raisonnement est bon, mais l'application que j'en ai faite ici est mauvaise.
    Le temps gagné à seulement préciser le rowsource dans les paramètres est largement inférieur à celui perdu à trouver une solution.
    Quand on est faignant comme moi, il faut avoir la bonne méthode de suite pour ne pas perdre de temps. Perde du temps à bien étudier les procédures est un investissement sur le temps gagné à profiter d'un bon programme.
    Il faut s'organiser. Le bon faignant est donc un gars très organisé et très instruit.

    Dès que j'ai un moment, car je suis faignant, je vais reprendre mon combobox et tout ira bien.
    Quand j'ai fini je poste ici.

  15. #15
    Membre à l'essai
    Homme Profil pro
    Gestionnaire de camping
    Inscrit en
    Septembre 2014
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Corse (Corse)

    Informations professionnelles :
    Activité : Gestionnaire de camping
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Septembre 2014
    Messages : 23
    Points : 16
    Points
    16
    Par défaut C'est fini....
    Ok, inutile de poster le final, il suffit de voir comment bien alimenter son combobox.
    Me concernant, je suis allé au maximum de ce qui était possible pour créer ce que je voulais, un agenda spécial.
    Pour finalement me rendre compte que les fonctions que je voulais mettre en place sont possibles dans les tâches outlook.
    Alors j'ai suspendu mon projet pour passer sur outlook.
    Fin de l'histoire.

    J'ai oublié ce que m'a dit celui qui m'a initié à Excel : avant de faire quelque chose, assure toi que ce n'est pas déjà installé quelque part.

  16. #16
    Membre extrêmement actif
    Homme Profil pro
    aucune
    Inscrit en
    Avril 2016
    Messages
    7 563
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 82
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Avril 2016
    Messages : 7 563
    Points : 12 422
    Points
    12 422
    Par défaut
    J'ai au passage découvert un verbe dont j'ignorais l'existence : le verbe "faigner" ....
    on en "apprend" tous les jours...
    Je n'accepte pas de demande d' "amitié" individuelle. Tout développeur est pour moi un ami.
    Je n'ouvre AUCUN classeur tiers (avec ou sans macro ******). Ne m'en proposez donc pas .

    ****** : Non, non ... un classeur .xlsx ne "peut" par exemple et entre autres pas contenir un activex (de surcroît invisible) , "bien sûr" ...

    Il est illusoire de penser que l'on saurait exprimer valablement et précisément en un langage (rigide) de développement ce que l'on peine à exprimer dans le langage naturel, bien plus souple.

  17. #17
    Membre à l'essai
    Homme Profil pro
    Gestionnaire de camping
    Inscrit en
    Septembre 2014
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Corse (Corse)

    Informations professionnelles :
    Activité : Gestionnaire de camping
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Septembre 2014
    Messages : 23
    Points : 16
    Points
    16
    Par défaut
    Ce n'est pas un verbe, mais pourquoi pas créer un nouveau langage révolutionnaire.
    "Arrêter de faigner et mets toi au boulot !"
    Ca envoie !

    Pour info :
    http://www.larousse.fr/dictionnaires...aignante/32686

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 4
    Dernier message: 04/05/2007, 22h49
  2. [VBA-E]Erreur avec une combobox qui liste le contenu de cell
    Par Tartenpion dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 08/03/2006, 12h01
  3. [Librairies] fonction qui transforme le rtf en texte
    Par The Wretched dans le forum Bibliothèques et frameworks
    Réponses: 2
    Dernier message: 15/12/2005, 13h02
  4. [PHP-JS] pasteHTML qui transforme le code
    Par jibouze dans le forum Langage
    Réponses: 1
    Dernier message: 28/10/2005, 17h36
  5. Fonction qui transforme chaine de caractère par une autre?
    Par geoffreykill dans le forum PostgreSQL
    Réponses: 7
    Dernier message: 09/12/2004, 14h31

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo