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

Excel Discussion :

Sélection cellules non contigues et variables - VBA


Sujet :

Excel

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2016
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2016
    Messages : 6
    Points : 5
    Points
    5
    Par défaut Sélection cellules non contigues et variables - VBA
    Salut à tous,

    Ca fait 2 jours que j'épluche les forums et j'ai toujours pas la bonne réponse à mon pb. C'est juste un problème de syntaxe tout bête mais je bloque...

    Je souhaite sélectionner des cellules non contiguës et variables, voici la partie de code :



    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    For ligne = 1 To 300
                    If Left(Cells(ligne, 4), 5) = "Hours" Then
                    Cells(ligne, 4).Select
                    For col = 1 To 300
                        If Right(Cells(ligne + 1, col), 5) = Left(Date_input(j), 5) Then
                        Range("& ligne + 2 & col & ", " & ligne +4 & col ").Select
                        Selection.Copy
                        End If
                    Next
                    End If
            Next

    J'explique un peu : Je veux tirer des infos d'un site web, donc pour trouver les infos qui m'interessent je cherche le mot "Hours" puis la date du jour dans ce qui a été extrait du site. Ensuite je sais que les cellules dont j'ai besoin se situent aux lignes "ligne + 2 et col", "ligne + 4 et col", "ligne + 6 et col" etc...
    Donc je voudrais la bonne syntaxe pour les sélectionner sachant que et la ligne et la colonne sont des variables. Et mon
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Range("& ligne + 2 & col & ", " & ligne +4 & col ").Select
    ne fonctionne évidemment pas.


    Voila, je voudrais bien un peu d'aide merci.

  2. #2
    Expert éminent

    Homme Profil pro
    Curieux
    Inscrit en
    Juillet 2012
    Messages
    5 096
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Curieux
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juillet 2012
    Messages : 5 096
    Points : 9 894
    Points
    9 894
    Billets dans le blog
    5
    Par défaut
    Bonjour,

    sans me pencher sur la logique ou la finalité,

    dans ton Range il faut utiliser deux cells, tu les avais oublié

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    For ligne = 1 To 300
        If Left(Cells(ligne, 4), 5) = "Hours" Then
            Cells(ligne, 4).Select
            For col = 1 To 300
                If Right(Cells(ligne + 1, col), 5) = Left(Date_input(j), 5) Then
                    Range(Cells(ligne + 2, col), Cells(ligne + 4, col)).Select
                    Selection.Copy
                End If
            Next col
        End If
    Next ligne

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2016
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2016
    Messages : 6
    Points : 5
    Points
    5
    Par défaut
    Bonjour, merci pour votre réponse mais non justement je ne veux pas sélectionner une plage de cellule mais des cellules non contigues, d’où le ligne+2 ligne +4, ligne +6 etc...

  4. #4
    Expert éminent

    Homme Profil pro
    Curieux
    Inscrit en
    Juillet 2012
    Messages
    5 096
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Curieux
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juillet 2012
    Messages : 5 096
    Points : 9 894
    Points
    9 894
    Billets dans le blog
    5
    Par défaut
    Dans ce cas là, méa culpa, remplace le Range() par un Union(), regarde l'aide en ligne si tu as besoin de consulter son fonctionnement


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Union(Cells(ligne + 2, col), Cells(ligne + 4, col)).Select 'Sélectionne uniquement les deux cellules qui sont dans la parenthèse

  5. #5
    Membre extrêmement actif
    Homme Profil pro
    aucune
    Inscrit en
    Avril 2016
    Messages
    7 563
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 83
    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
    Il est dommage que tu aies ouvert cette discussion (qui concerne VBA/Excel) dans la présente section du forum
    Le fait que tu travailles sur des cellules alimentées par ceci ou cela, n'a rien à voir ici.
    Nonobstant : que veux-tu ensuite faire (de manière précise et détaillée) de cette copie ? Car la solution adéquate dépend très largement de cette précision.
    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.

  6. #6
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2016
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2016
    Messages : 6
    Points : 5
    Points
    5
    Par défaut
    Merci Joe!!! Tu me sauves, j'ai jamais vu cette fonction auparavant ^^

    Pour ce qui est de l'ouverture du topic comme je l'ai dit j'en ai lu beaucoup et j'en ai vu aucun qui parlaient de cette fcn. Non ok ca n'a rien a voir mais je contextualisait un peu, c'était pour qu'on évite de me dire "tu n'as pas besoin de prendre des variables etc..". Cette copie premièrement je dois l'effectuer un bon nombre de fois et je dois la coller dans un autre classeur.

    Merci pour votre aide!

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

Discussions similaires

  1. [XL-2007] Somme de cellules non contigues variables
    Par guillaume37 dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 31/10/2010, 11h08
  2. [XL-2003] Probleme sélection plages de cellules non contigues
    Par Blusky dans le forum Excel
    Réponses: 4
    Dernier message: 27/03/2010, 22h10
  3. [XL-2003] Sélection plage non contigues
    Par stargates dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 08/11/2009, 06h39
  4. [XL-2003] trouver la dernière cellule d'une plage de cellules non contigues.
    Par henripec dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 17/09/2009, 01h16
  5. Camembert avec série de cellules non contigues
    Par melouille56 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 01/10/2008, 18h36

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