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 :

Incrémentation de colonnes variables


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Décembre 2012
    Messages
    129
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations forums :
    Inscription : Décembre 2012
    Messages : 129
    Par défaut Incrémentation de colonnes variables
    Bonjour,

    J'ai un problème qui va vous paraitre simple. J'aimerais incrémenter une série pour effectuer une action sur chaque cellules dans la plage "C10:AA10".

    Si je devais effectuer la même chose sur la plage "C10:C35" je ferais :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Dim i as integer
    For i = 1 to 25
    Range("C" & i).select
    Next i
    Mais là, ce sont les colonnes qui sont variables et je ne sais comment m'y prendre...
    Quelqu'un aurait-il une solution ?

  2. #2
    Membre Expert Avatar de Fvandermeulen
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2007
    Messages
    1 869
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juillet 2007
    Messages : 1 869
    Par défaut
    Salut,

    Il suffit d'utiliser Cells au lieu de Range.

    Cells fonctionne avec le numéro de ligne et numéro de colonne
    Ex:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    sheets("TaFeuille").cells(2,5) 'correspond à Range("E2")
    Dès lors
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Dim C as integer
    For C = 3 to 27 '3 pour C; 27 pour AA
    'L'action (en évitant les Select, ça fait perdre du temps)
    sheets("TaFeuille").cells(10,C)="ici ce que tu veux sans select"
    Next C
    C'est un peu casse tête au début quand on a prit l'habitude de travailler avec Range mais ensuite on utilise plus que ça même quand on incrémente pas les colonnes.

    A+

  3. #3
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Décembre 2012
    Messages
    129
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations forums :
    Inscription : Décembre 2012
    Messages : 129
    Par défaut
    Merci beaucoup ! En plus j'avais lu ça à mes début mais je ne l'avais jamais utilisé et ça m'était sorti de la tête !

    Merci !

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

Discussions similaires

  1. Nom de colonne variable
    Par Fayoul dans le forum MS SQL Server
    Réponses: 5
    Dernier message: 10/08/2006, 15h50
  2. incrémentation d'une variable
    Par dorian2031 dans le forum Langage
    Réponses: 3
    Dernier message: 02/08/2006, 16h13
  3. [Tableaux] Incrémentation d'une variable
    Par cisse18 dans le forum Langage
    Réponses: 46
    Dernier message: 19/07/2006, 17h02
  4. javascript pour tableau à largeur de colonnes variables
    Par barkleyone dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 06/06/2006, 17h14
  5. [Débutant] Probleme d'incrémentation d'une variable
    Par sakuragikan dans le forum ASP
    Réponses: 2
    Dernier message: 25/08/2005, 13h11

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