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 :

Utilisation range


Sujet :

Macros et VBA Excel

  1. #1
    Membre averti Avatar de tomy7
    Profil pro
    Étudiant
    Inscrit en
    Janvier 2008
    Messages
    540
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2008
    Messages : 540
    Points : 391
    Points
    391
    Par défaut Utilisation range
    bonjour,
    j ai ce code qui fonctionne tres bien mais j ai plusieurs range a nettoyer une bonne dizaine et j ai pas tres envie de taper
    ce code avec chaque range differente ....
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Dim b as range 
    For each b in activesheet.range ("AA13:AA52")
    If not b.hasformula then b.clearcontents
    Next b

    merci

  2. #2
    Membre émérite

    Homme Profil pro
    Technicien Métrologie R&D
    Inscrit en
    Janvier 2007
    Messages
    1 610
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien Métrologie R&D
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 610
    Points : 2 523
    Points
    2 523
    Billets dans le blog
    1
    Par défaut
    je ne suis pas trop sur mais ne peut tu pas faire une boucle avec un pointage sur cellule contenant ton adresse
    voir faire une boucle qui recharge plage

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Dim b as range 
    dim plage as string
    plage=range("p1").value
    For each b in activesheet.range (plage)
    If not b.hasformula then b.clearcontents
    Next b
    daranc

  3. #3
    Membre averti Avatar de tomy7
    Profil pro
    Étudiant
    Inscrit en
    Janvier 2008
    Messages
    540
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2008
    Messages : 540
    Points : 391
    Points
    391
    Par défaut re
    faudrait que je rajoute peut etre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    for each plage
    ...
    ...
     
    ..
    next plage
    next b
    merci

  4. #4
    Membre averti Avatar de tomy7
    Profil pro
    Étudiant
    Inscrit en
    Janvier 2008
    Messages
    540
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2008
    Messages : 540
    Points : 391
    Points
    391
    Par défaut re
    mon idée de

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    plage = range (" eghgfd")
    ..
    ..
    ..
     
    next plage
    c est completement bete

    Une idée comment recharger plage avec un autre range

  5. #5
    Membre émérite

    Homme Profil pro
    Technicien Métrologie R&D
    Inscrit en
    Janvier 2007
    Messages
    1 610
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien Métrologie R&D
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 610
    Points : 2 523
    Points
    2 523
    Billets dans le blog
    1
    Par défaut
    salut
    je voyais un truc de ce genre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Dim b as range 
    dim plage as string
    for p=1 to 7                         'pour 7 plages repèrée
    plage=range("p"& p).value
    For each b in activesheet.range (plage)
    If not b.hasformula then b.clearcontents
    Next b
    next p
    tes plage étant sur la plage p1:p7

  6. #6
    Membre averti Avatar de tomy7
    Profil pro
    Étudiant
    Inscrit en
    Janvier 2008
    Messages
    540
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2008
    Messages : 540
    Points : 391
    Points
    391
    Par défaut re
    y aurait il un moyen de faire avec un Do until.

    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
    18
    19
    20
    21
    22
    Dim plage As String
    p1 = "T9: Y10"
    p2 = "G12: AA263"
    p3 = "AA13: AA52"
    p4 = "AA54: AA71"
    p5 = "AA73: AA79"
    p6 = "AA81: AA98"
    p7 = "AA100: AA118"
    p8 = "AA120: AA128"
    p9 = "AA130: AA149"
    p10 = "AA151: AA194"
    p11 = "AA196: AA234"
    p12 = "AA236: AA263"
    For i = 1 To 13
    plage = "p" & i
    For Each b In ActiveSheet.Range(plage)
    Do Until ActiveSheet.Range(plage) <> Empty
    If Not b.HasFormula Then b.ClearContents
    Next b
    Next i
    Loop
    End Sub
    car ta methode marche pas.

  7. #7
    Membre éclairé

    Profil pro
    Inscrit en
    Mai 2007
    Messages
    514
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 514
    Points : 824
    Points
    824
    Par défaut
    Bonjour,

    Essaye comme ceci:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Dim MesPlages As Range
    Set MesPlages = Range("T9:Y10,G12:AA263,AA13:AA52,AA54:AA71,AA73:AA79," & _
                "AA81:AA98,AA100:AA118,AA120:AA128,AA130:AA149," & _
                "AA151:AA194,AA196:AA234,AA236:AA263")
     
    MesPlages.SpecialCells(xlCellTypeConstants).ClearContents
    Cordialement,

    Tirex28/

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

Discussions similaires

  1. [XL-2003] Sélectionner plusieurs cellules sans utiliser Range
    Par rafalemirage dans le forum Macros et VBA Excel
    Réponses: 22
    Dernier message: 21/04/2009, 18h11
  2. Réponses: 4
    Dernier message: 19/06/2008, 01h11
  3. Comment utiliser Range(cells(... pour indiquer une plage de cellules
    Par gerald57 dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 29/05/2008, 11h35
  4. Réponses: 5
    Dernier message: 06/05/2008, 13h33
  5. [VBA-E] Utiliser le range dans un tab croisé dynamique
    Par GoLDoZ dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 23/03/2006, 17h12

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