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 :

Séléction d'une plage variable


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2018
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2018
    Messages : 5
    Par défaut Séléction d'une plage variable
    [COLOR="#FF0000"]Bonjour le forum,
    j'espère que vous allez bien, je suis un débutant en VBA et j'ai un petit problème:
    Mon objectif est le suivant: j'essaye de séléctionner une plage composée de plusieurs lignes d'indices variable.

    J'ai fait plusieurs essaye mais j'arrive pas :

    première proposition:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Set MaPlage =Range("M" & Ligne &":N" & Ligne + 3)        'avec Ligne est un indice qui varie dans une boucle
        MaPlage.Select
    Deuxième proposition:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Set MaPlage =Columns("M:N").Rows(Ligne :Ligne+3)        
        MaPlage.Select
    et je reçois tjrs un msg d'erreur de compilation

    Je vous remercie d'avance

  2. #2
    Expert confirmé

    Homme Profil pro
    Curieux
    Inscrit en
    Juillet 2012
    Messages
    5 169
    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 169
    Billets dans le blog
    5
    Par défaut
    Bonjour,

    regarde du côté de la méthode Union en cas de plage discontinue

    sinon regarde ce que fait cette ligne de code dans ta fenêtre des variables locales, ou en interrogeant son adresse

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Set MaPlage = MaFeuille.Range(MaFeuille.Cells(1,1),MaFeuille.Cells(4,4))

  3. #3
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2018
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2018
    Messages : 5
    Par défaut
    Citation Envoyé par joe.levrai Voir le message
    Bonjour,

    regarde du côté de la méthode Union en cas de plage discontinue

    sinon regarde ce que fait cette ligne de code dans ta fenêtre des variables locales, ou en interrogeant son adresse

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Set MaPlage = MaFeuille.Range(MaFeuille.Cells(1,1),MaFeuille.Cells(4,4))
    Bonjour [QUOTE=joe.levrai;10088142],
    Le problème c'est que l'indice de ligne n'est pas tjrs de 1 à 4 ms il varie dans une boucle.

  4. #4
    Expert confirmé

    Homme Profil pro
    Curieux
    Inscrit en
    Juillet 2012
    Messages
    5 169
    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 169
    Billets dans le blog
    5
    Par défaut
    Oui je sais, je t'ai juste suggéré une piste, si elle te convient, il suffit de l'adapter

    Au passage, vérifie ce que contient ta variable ligne, on ne voit absolument rien de ton code (l'endroit où tu définis sa valeur) alors impossible de t'aider

  5. #5
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2018
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2018
    Messages : 5
    Par défaut
    Citation Envoyé par joe.levrai Voir le message
    Oui je sais, je t'ai juste suggéré une piste, si elle te convient, il suffit de l'adapter

    Au passage, vérifie ce que contient ta variable ligne, on ne voit absolument rien de ton code (l'endroit où tu définis sa valeur) alors impossible de t'aider
    Voici un exemple:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    Sub past()
    Dim i, Ligne As Integer
    Dim MaPlage As Range
    Ligne = 1
    For i = 0 To 15
      Sheets("Feuil2").Select
      Set MaPlage = Columns("M:N").Rows(Ligne + 2, Ligne + 3)
      MaPlage.Select
      Selection.Copy
        Sheets(NameSheet).Select
        Range("A" & Ligne).Select
        ActiveSheet.Paste
      Ligne = Ligne + 5
    End Sub

Discussions similaires

  1. [XL-2003] saisir des formules avec une plage variable de données
    Par nazaire dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 28/01/2011, 08h35
  2. [XL-2007] Moyennes d'une plage variable
    Par isfet dans le forum Excel
    Réponses: 1
    Dernier message: 18/08/2010, 14h32
  3. Somme sur une plage variable
    Par Sarune dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 04/08/2008, 13h40
  4. Appliquer une formule à une plage variable
    Par sophiefag dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 23/04/2008, 23h27
  5. Somme sur une plage variable
    Par mhamedbj dans le forum Excel
    Réponses: 2
    Dernier message: 29/02/2008, 15h56

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