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 :

Parcourir colonne dans EXCEL [XL-2010]


Sujet :

Excel

  1. #1
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Avril 2013
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations forums :
    Inscription : Avril 2013
    Messages : 10
    Points : 10
    Points
    10
    Par défaut Parcourir colonne dans EXCEL
    Bonjour, je suis débutant en VBA sous Excel, et je souhaiterais automatiser une tâche:

    j'ai un tableau excel avec les colonnes A, B, C, D, E, F, G, H, I, J, K, L
    parmi ces colonnes (A ,F, H, I) certaines contiennent des valeurs (1 et 2) correspondant respectivement ( 1 = "oui" et 2 = "non") et d'autre colonnes contiennent les quantités.
    mon travail consiste à remplacer les 1 par oui et 2 par non alors j'ai écrit un code.Mais dans certaines colonnes il y a des chiffres que je ne souhaite pas modifier. j'aurais besoin d'un code qui s’exécute uniquement sur les colonnes concernés (A, F, H, I) par exemple.
    je suis obligé de "changer manuellement" la valeur de la variable COLONNE.
    voici le code que j'utilise ;
    Sub Oui_Non()
    Dim colonne As String
    Dim deb, fin, i As Integer

    deb = 2
    fin = 10
    colonne = "A"

    For i = deb To fin
    If (Range(colonne + CStr(i)).Value = "1") Then
    Range(colonne + CStr(i)).Value = "Oui"
    ElseIf (Range(colonne + CStr(i)).Value = "2") Then
    Range(colonne + CStr(i)).Value = "Non"
    End If
    Next

    End Sub

  2. #2
    Expert confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2013
    Messages
    3 617
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Alimentation

    Informations forums :
    Inscription : Mai 2013
    Messages : 3 617
    Points : 5 912
    Points
    5 912
    Par défaut
    Bonjour,

    Tu pourrais essayer ainsi
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Sub Oui_Non()
        Dim I As Integer
        Dim arrColonnes
     
        arrColonnes = Array(1, 6, 8, 9)  'colonnes à modifier
        For I = 0 To UBound(arrColonnes)
            Columns(arrColonnes(I)).Replace 1, "Oui"
            Columns(arrColonnes(I)).Replace 2, "Non"
        Next
    End Sub
    MPi²

  3. #3
    Membre expérimenté
    Homme Profil pro
    Ingénieur développement matériel électronique
    Inscrit en
    Septembre 2013
    Messages
    783
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement matériel électronique
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Septembre 2013
    Messages : 783
    Points : 1 562
    Points
    1 562
    Par défaut
    Bonjour,

    Le VBA marche bien, mais un simple replace excel tout aussi bien ou presque....

    Vous avez-juste à sauver toutes les colonnes à modifier dans un range nommé et à faire le remplacement dans ce range ....
    et .... suggestion, évitez de passer par un String pour une colonne .... c'est un peu dommage

    Bonne journée

    Vincent
    "Idéalement nous sommes ce que nous pensons. Dans la réalité, nous sommes ce que nous accomplissons." A.Senna
    et n'oubliez-pas de développer des .... sourires ^_^

  4. #4
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Avril 2013
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations forums :
    Inscription : Avril 2013
    Messages : 10
    Points : 10
    Points
    10
    Par défaut
    Merci a toi parmi

  5. #5
    Membre expérimenté
    Homme Profil pro
    Ingénieur développement matériel électronique
    Inscrit en
    Septembre 2013
    Messages
    783
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement matériel électronique
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Septembre 2013
    Messages : 783
    Points : 1 562
    Points
    1 562
    Par défaut
    et en passant par le VBA (sans passer colonne par colonne):

    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
    17
     
    Sub ReplaceRng()
     
    Dim SrcRng As Range
     
        Set SrcRng = Range("A:A,F:F,H:H,I:I")
        ActiveWorkbook.Names.Add Name:="Rng_Repl", RefersTo:=SrcRng     ' Sauve le range as named range
     
        Set SrcRng = SrcRng.SpecialCells(xlCellTypeConstants)    ' Cells non vides
        Debug.Print SrcRng.AddressLocal
     
        With SrcRng
            .Replace 1, "Oui", xlWhole
            .Replace 2, "Non", xlWhole
        End With
     
    End Sub
    "Idéalement nous sommes ce que nous pensons. Dans la réalité, nous sommes ce que nous accomplissons." A.Senna
    et n'oubliez-pas de développer des .... sourires ^_^

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

Discussions similaires

  1. Déplacer une colonne dans Excel
    Par GreatDeveloperOnizuka dans le forum C#
    Réponses: 0
    Dernier message: 22/12/2009, 11h43
  2. Ecrire titres de colonnes dans Excel
    Par Alex71 dans le forum LabVIEW
    Réponses: 5
    Dernier message: 16/07/2009, 08h22
  3. Réponses: 6
    Dernier message: 11/03/2009, 12h43
  4. Réponses: 8
    Dernier message: 26/07/2007, 11h46
  5. [VB6] sélection multiple de colonne dans excel grâce à VB
    Par biquet dans le forum VB 6 et antérieur
    Réponses: 4
    Dernier message: 02/08/2004, 12h44

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