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 :

Problème de type de variable avec la fonction find


Sujet :

Macros et VBA Excel

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    40
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 40
    Points : 27
    Points
    27
    Par défaut Problème de type de variable avec la fonction find
    Bonjour à tous,

    Mon code est en deux temps (je l'ai simplifié pour la question).
    Il attribue à la variable "temp" une valeur de textbox (une date) puis la valeur d'une comobobox (un nom).
    Le problème est que "temp" prend bien la valeur de la textbox mais pas celle de la combobox.
    Le voici:
    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
    Sub corpstest()
     
    Dim temp As Range
    Dim cible As Date  'valeur de la text box
    Dim n_tech As String 'valeur de la combobox
     
    'premier appel de find
    cible = Saisis.TextBox8.Value 'la valeur est de type date.
    Set temp = Cells.Find(cible, After:=ActiveCell, LookAt:=xlValue)
     
    'second appel de find
    n_tech = Saisis.ComboBox1.Value 'la valeur est un nom, une chaine de caratère
    Set temp = Cells.Find(n_tech, After:=ActiveCell, LookAt:=xlValue)
     
    End Sub
    Savez vous pourquoi "temp" lors du deuxième appel a find reste en nothing?

    Merci par avance de vos réponses !

    M.A.S

  2. #2
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    45
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 45
    Points : 44
    Points
    44
    Par défaut
    Salut,

    essaie avec .Text au lieu de .Value

  3. #3
    Inactif  

    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    4 555
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 4 555
    Points : 5 535
    Points
    5 535
    Par défaut
    Bonjour,

    Si (comme je le pense) les cellules de recherches sont formatées en date, je préfèrerais
    - transformer en type date les valeurs de la textbox et de la combo
    - faire mes recherches de ces valeurs transformées et en utilisant XlDate

  4. #4
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    40
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 40
    Points : 27
    Points
    27
    Par défaut
    Alors,

    J'ai essayé ca:

    a Fouinard
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    n_tech = Saisis.ComboBox1.Text 'la valeur est un nom, une chaine de caratère
    Set temp = Cells.Find(n_tech, After:=ActiveCell, LookAt:=xlText)
    en remplaçant les "value" par "text" mais ca ne change rien.


    a Ucfoutu
    Tu veux que je convertisse mon nom en date? et que je fasse la rechercher en utilisant xlDate... ça me parait étrange non? et pour convertir tu utilise cdate()? (parceque ça marche pas...)

  5. #5
    Inactif  

    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    4 555
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 4 555
    Points : 5 535
    Points
    5 535
    Par défaut
    Citation Envoyé par Sarune Voir le message
    Tu veux que je convertisse mon nom en date? et que je fasse la rechercher en utilisant xlDate... ça me parait étrange non? et pour convertir tu utilise cdate()? (parceque ça marche pas...)
    Qu'est-ce qui ne "marche pas" ? et :
    - avec quel code ?
    - avec quel format de cellules ?

  6. #6
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    40
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 40
    Points : 27
    Points
    27
    Par défaut
    Alors j'ai fait ça mais sans trop comprendre si c'est bon. Enfin c'est ce que j'ai comprit de ta solution ...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Sub corpstest()
     
    Dim temp As Range
    Dim n_tech As String
    Dim n_date As Date
     
    'seconde appel de find
    n_tech = Saisis.ComboBox1.Value 'la valeur est un nom, une chaine de caratère
    n_date = CDate(n_tech)
    Set temp = Cells.Find(n_date, LookAt:=xlDate)
     
    End Sub
    Et bien entendu j'ai une erreur d'incompatibilité de type...
    Des idées?

  7. #7
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    40
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 40
    Points : 27
    Points
    27
    Par défaut
    Bon... cela fait une journée que j'étais là dessus et l'erreur n'en était pas une... un vicieux espace en trop...
    donc le code était bon. R.A.S comme qui dirait.
    Merci pour tes réponses Ucfoutu c'est en essayant ta solution que j'ai trouvé le bug

    Merci!!!

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

Discussions similaires

  1. [XL-2010] Redécoupage en sous-fonction / Problème de type de variable
    Par tibo28 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 18/04/2013, 10h27
  2. Réponses: 4
    Dernier message: 09/05/2006, 10h29
  3. [VBA-E]Problème avec la fonction Find
    Par Mirx1 dans le forum Macros et VBA Excel
    Réponses: 17
    Dernier message: 27/04/2006, 18h43
  4. [FLASH 8] Variable avec la fonction GetURL
    Par PrinceMaster77 dans le forum Flash
    Réponses: 5
    Dernier message: 20/01/2006, 23h58
  5. petit souci avec des variables avec des fonctions psql
    Par dust62 dans le forum PostgreSQL
    Réponses: 4
    Dernier message: 02/04/2005, 13h45

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