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 code : .select


Sujet :

Macros et VBA Excel

  1. #1
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Octobre 2010
    Messages
    338
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Octobre 2010
    Messages : 338
    Par défaut Problème de code : .select
    Chers Tous,

    J'ai une feuille que je nommerais pour faire dans l'originalité : "Feuil1" !!

    Cette dernière est masquée dans mon classeur. Cependant elle contient des données et mon code VBA doit réaliser l'opération ci-dessous :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Sheets("Feuil1").Select
                Val1 = [Match(MIN(ABS(1900-(A2:A65536))),ABS(1900-(A2:A65536)),0)] 'Trouve la ligne qui comporte la valeur la plus proche de 1900
    Cependant puisque la feuille est masquée, il ne peut pas la sélectionner (logique !). Si je remplace le .select par une boucle with ... end with ça ne fonctionne pas. Est ce que quelqu'un aurait une idée pour éradiquer ce problème

    Merci d'avance pour votre aide

  2. #2
    Membre Expert Avatar de ZebreLoup
    Homme Profil pro
    Ingénieur Financier
    Inscrit en
    Mars 2010
    Messages
    994
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur Financier
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2010
    Messages : 994
    Par défaut
    Ne pas faire de Select dans du code !!!
    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
    Dim sh As Worksheet
    Dim rg As Range
    Dim minVal As Double, ligneProche As Long
    Dim c As Range
     
    Set sh = Sheets("Feuil1")
    Set rg = sh.Range(sh.Range("A2"), sh.Range("A65536").End(xlUp))
     
    minVal = Abs(rg.Cells(1, 1).Value - 1900)
    ligneProche = 2
    For Each c In rg
        If Abs(c.Value - 1900) < minVal Then
            minVal = Abs(c.Value - 1900)
            ligneProche = c.Row
        End If
    Next c
    Tu pouvais aussi faire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Val1 = [Match(MIN(ABS(1900-(Feuil1!A2:A65536))),ABS(1900-(Feuil1!A2:A65536)),0)]
    Mais je n'aime pas trop faire des Evaluate, chacun ses goûts

  3. #3
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Octobre 2010
    Messages
    338
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Octobre 2010
    Messages : 338
    Par défaut
    Je n'ai testé que cette solution

    Tu pouvais aussi faire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Val1 = [Match(MIN(ABS(1900-(Feuil1!A2:A65536))),ABS(1900-(Feuil1!A2:A65536)),0)]
    Mais je n'aime pas trop faire des Evaluate, chacun ses goûts
    Non pas par esprit de contradiction où que j'ai des gouts radicalement différents , mais elle m'a simplement l'air plus simple à mettre en oeuvre dans mon code !

    Merci beaucoup ZebreLoup pour cette solution simple et efficace et surtout qui fonctionne très bien !

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

Discussions similaires

  1. problème sur la selection du code MIN
    Par florianjoy54 dans le forum Requêtes
    Réponses: 6
    Dernier message: 02/02/2010, 17h06
  2. Probléme de code non portable
    Par Stany dans le forum Windows
    Réponses: 2
    Dernier message: 23/08/2005, 11h02
  3. Problème avec un SELECT
    Par birkoss dans le forum Langage SQL
    Réponses: 2
    Dernier message: 16/08/2005, 19h04
  4. Problème d'utilisation select () avant recv sous windows
    Par init dans le forum Développement
    Réponses: 3
    Dernier message: 16/03/2005, 19h36
  5. [struts][JSP][select] problème avec le select
    Par redge_touch dans le forum Struts 1
    Réponses: 4
    Dernier message: 14/01/2004, 10h05

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