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 :

Comment récupérer certain data qui sont stockées dans une colonne comme "donne brut"


Sujet :

Macros et VBA Excel

  1. #1
    Nouveau membre du Club
    Inscrit en
    Avril 2009
    Messages
    27
    Détails du profil
    Informations forums :
    Inscription : Avril 2009
    Messages : 27
    Points : 25
    Points
    25
    Par défaut Comment récupérer certain data qui sont stockées dans une colonne comme "donne brut"
    Comment récupérer certain data qui sont stockées dans une colonne comme « donne brut ». ( auto-filtering) ..

    Bonjour a tous.


    J’aimerais sortir certain data d’une colonne qui contient des donnes brutes. ( voir l’exemple dans l’attachement) .


    L’idée est d’utiliser une macro d’une forme similaire comme celle ci-dessus mais il y a des choses qui m’échappent et je n’arrive pas a trouver pourquoi ce macro ne fonctionne pas.) ..

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
      Dim bottomA As Integer
         bottomA = Range("A" & Rows.Count).End(xlUp).Row
           Dim y As Integer
             For y = bottomA To 2 Step -1
              If IsDate(y) Then
                 y.Offset(0, 3).Value = a.Value  ( wrong comand) !!!!
                  if cells ( y, 2) = "U" or Cells ( y, 2) = "I" then
                   y.offset (0, 4).Value = a.Value ( Wrong comand) !!!!
        End If
     Next y
    Si vous pouvais analyser le macro et les donne dans l’exemple, peut-être on va trouver une solution.

    Amicalement

  2. #2
    Membre éprouvé Avatar de keygen08
    Homme Profil pro
    Inscrit en
    Octobre 2012
    Messages
    545
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations forums :
    Inscription : Octobre 2012
    Messages : 545
    Points : 973
    Points
    973
    Par défaut
    Bonjour
    Quelle macro ne fonctionne pas, module1 ou module2
    Quel est le resultat a obtenir car à la lecture du code, cela n'est pas evident.

  3. #3
    Nouveau membre du Club
    Inscrit en
    Avril 2009
    Messages
    27
    Détails du profil
    Informations forums :
    Inscription : Avril 2009
    Messages : 27
    Points : 25
    Points
    25
    Par défaut
    Pour faire sortir les dates ..... De la colonne A vers la colonne D

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     Dim bottomA As Integer
     bottomA = Range("A" & Rows.Count).End(xlUp).Row
     Dim y As Integer
     For y = bottomA To 2 Step -1
     If IsDate(y) Then
     y.Offset(0, 3).Value = a.Value  ( Wrong comand)

    Pour faire sortir les initiales U et I dans une autre colone E
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
     if cells ( y, 2) = "U" or Cells ( y, 2) = "I" then
    y.offset (0, 4).Value = a.Value  ( wrong comand)
     End If
     Next y

  4. #4
    Expert éminent sénior


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Points : 20 040
    Points
    20 040
    Par défaut
    ta variable y est un entier ... tu ne peu pas y appliquer la fonction offset :

    celle-ci s'applique aux objets plages...

  5. #5
    Nouveau membre du Club
    Inscrit en
    Avril 2009
    Messages
    27
    Détails du profil
    Informations forums :
    Inscription : Avril 2009
    Messages : 27
    Points : 25
    Points
    25
    Par défaut
    Et quel serait la juste forme applicable pur transférer la valeur trouve dans la colonne D ?

  6. #6
    Expert éminent sénior


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Points : 20 040
    Points
    20 040
    Par défaut
    tiens .. ton code modifié

    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
    Dim bottomA As Integer
     Dim Sh As Worksheet ' Déclare une feuille .. pour être sur d'agir sur la bonne feuille
     Set Sh = ThisWorkbook.Sheets("Feuil1")
     
     Dim MaCell As Range 'Définit une cellule
     
     bottomA = Sh.Range("A" & Rows.Count).End(xlUp).Row
     
     Dim y As Integer
     For y = bottomA To 2 Step -1
        Set MaCell = Sh.Cells(y, 1) ' MaCell est la cellule de la line en cours ( numéro y) dans colonne 1 (A)
     
     If IsDate(MaCell) Then
        MaCell.Offset(0, 3).Value = MaCell.Value  'Si date copie de A vers D
      End If
     Next
    j'ai utilisé une variable worksheet (feuille) sh : pour être sur d'agir sur la bonne feuille....

    ensuite voir commentaires....

  7. #7
    Nouveau membre du Club
    Inscrit en
    Avril 2009
    Messages
    27
    Détails du profil
    Informations forums :
    Inscription : Avril 2009
    Messages : 27
    Points : 25
    Points
    25
    Par défaut
    It Works...

    Il est parfait...

    Mercie beaucoup...

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 11/05/2014, 23h42
  2. [WD-2007] Comment récupérer le graphique qui se trouve dans un Shape
    Par Australia dans le forum VBA Word
    Réponses: 0
    Dernier message: 24/02/2011, 18h31
  3. Réponses: 4
    Dernier message: 01/05/2006, 23h02
  4. Réponses: 2
    Dernier message: 24/03/2006, 09h55
  5. [C#]Comment executer du code qui se trouve dans une string ?
    Par freddyboy dans le forum Windows Forms
    Réponses: 4
    Dernier message: 28/02/2005, 16h31

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