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 :

[VBA-E]couper en fonction d'une valeur


Sujet :

Macros et VBA Excel

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    138
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 138
    Points : 72
    Points
    72
    Par défaut [VBA-E]couper en fonction d'une valeur
    Bonjour !
    j ai une série de données dans H3:J19 ...
    Je veux lui faire comprendre que quand la valeur dans la case H3 est <0 alors il coupe la sélection H3:J3 et colle à la destination L3:N3...
    evidemment, j aimerais faire ca pour toute la zone H3:J19...
    Merci d'avance d'éclairer ma lanterne de novice.

  2. #2
    Expert confirmé Avatar de illight
    Homme Profil pro
    Analyste décisionnel
    Inscrit en
    Septembre 2005
    Messages
    2 338
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Analyste décisionnel
    Secteur : Service public

    Informations forums :
    Inscription : Septembre 2005
    Messages : 2 338
    Points : 4 295
    Points
    4 295
    Par défaut
    Citation Envoyé par captaine93
    Bonjour !
    j ai une série de données dans H3:J19 ...
    Je veux lui faire comprendre que quand la valeur dans la case H3 est <0 alors il coupe la sélection H3:J3 et colle à la destination L3:N3...
    evidemment, j aimerais faire ca pour toute la zone H3:J19...
    Merci d'avance d'éclairer ma lanterne de novice.

    Tu veux décaler en fait ?
    Il suffit de faire un if sur ta première cellule, et si jamais c'est inférieur a 0, tu déplace..
    Pour savoir comment déplacer, essaye l'enregistreur de macro ça te donnera une idée de comment faire
    1. Avant de poster, et http://www.developpez.com/sources/
    2. Lors du post, n'oubliez pas, si besoin les balises CODE => voir ici pour l'utilisation
    3. N'oubliez pas le
    4. N'oubliez pas le si la réponse vous a été utile !

  3. #3
    Membre habitué Avatar de Ania
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    155
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 155
    Points : 134
    Points
    134
    Par défaut
    Les cases que tu testes sont seulement celle de la colonne H (cad H3 à H19) ou toutes les cellules de plage H3:J19

    Si c'est le premier cas

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Sub test()
      With Worksheets("Feuil1")
        For index = N°1ereLigne To N°DernièreLigne
          If .Cells(index, 8) < 0 Then
            Range(.Cells(index, 8), .Cells(index, 10)).Select
            Selection.Cut
            Range(.Cells(index, 12)).Select
            ActiveSheet.Paste
            Application.CutCopyMode = False
          End If
        Next index
      End With
    End Sub
    Le code est pas tester redis moi au cas ou
    bonne continuation ++

  4. #4
    Expert confirmé Avatar de illight
    Homme Profil pro
    Analyste décisionnel
    Inscrit en
    Septembre 2005
    Messages
    2 338
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Analyste décisionnel
    Secteur : Service public

    Informations forums :
    Inscription : Septembre 2005
    Messages : 2 338
    Points : 4 295
    Points
    4 295
    Par défaut
    Citation Envoyé par Ania
    Les cases que tu testes sont seulement celle de la colonne H (cad H3 à H19) ou toutes les cellules de plage H3:J19

    Si c'est le premier cas

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Sub test()
      With Worksheets("Feuil1")
        For index = N°1ereLigne To N°DernièreLigne
          If .Cells(index, 8) < 0 Then
            Range(.Cells(index, 8), .Cells(index, 10)).Select
            Selection.Cut
            Range(.Cells(index, 12)).Select
            ActiveSheet.Paste
            Application.CutCopyMode = False
          End If
        Next index
      End With
    End Sub
    Le code est pas tester redis moi au cas ou
    bonne continuation ++
    Tu n'es pas obligé de faire un Paste tu peux faire directement :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
        Range("H3:J3").Select
        Selection.Cut Destination:=Range("L3:N3")
    Enfin par exemple
    1. Avant de poster, et http://www.developpez.com/sources/
    2. Lors du post, n'oubliez pas, si besoin les balises CODE => voir ici pour l'utilisation
    3. N'oubliez pas le
    4. N'oubliez pas le si la réponse vous a été utile !

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    138
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 138
    Points : 72
    Points
    72
    Par défaut
    Mille mercis !
    En fait fallait juste rajouter que je colle sur 3 colonnes...
    Longue vie au forum et aux gens qui l'animent

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 22/02/2015, 23h38
  2. [VBA-EXCEL] selectionner un range en fonction d'une valeur
    Par cladsam dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 22/03/2007, 22h33
  3. Réponses: 4
    Dernier message: 12/06/2006, 11h46
  4. Taches en fonction d'une valeur
    Par petitours dans le forum C
    Réponses: 14
    Dernier message: 06/11/2005, 09h40
  5. fonction retournant une valeur
    Par ryan dans le forum ASP
    Réponses: 4
    Dernier message: 06/09/2004, 17h45

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