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 :

selectionner en macro un ensemble de date


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    26
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 26
    Par défaut selectionner en macro un ensemble de date
    bonjour,

    j'aimerais savoir comment selectionner une date en vba se situant dans la colonne A de excel.
    et quand j'ai trouver cette date j'aimerais que cela selectionne les cellules de B à Y coresspondant a cette date afin de les copier et les coller dans une autre feuilles.

    merci

    d'avance

  2. #2
    Membre chevronné

    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    453
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 453
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Sub SelectionParDate()
        Dim rng As Range
     
        Set rng = Selection.Find(What:=DateValue("1965/11/25"))
        If Not rng Is Nothing Then
            With rng
                .Worksheet.Range("B" & .Row & ":Y" & .Row).Select
            End With
        End If
    End Sub

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    26
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 26
    Par défaut merci beaucoup
    merci par contre j'aimerais qu'il selectionne entre deux date. pouvez vous m'aider.

  4. #4
    Membre chevronné

    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    453
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 453
    Par défaut
    Voici un bout de code qui devrait t'intéresser. Explores et apprends les aléas du travail avec les dates en VBA...

    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
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    Sub CopierDatePeriode()
        Dim rng As Range
        Dim rngUsed As Range
        Dim strCrit1 As String
        Dim strCrit2 As String
        Dim Date1 As Variant
        Dim Date2 As Variant
     
        ' date de début de période; pourrait être une simple référence de cellule au format Date
        Date1 = DateValue("2006/01/01")
        ' date de fin de période; pourrait être une simple référence de cellule au format Date
        Date2 = DateValue("2007/12/31")
     
        ' Comme la méthode AutoFilter de l'objet Range ne travaille qu'avec le format US des dates
        '   il faut traduire nos dates et les mettre en texte pour les critères...
        strCrit1 = ">=" & CStr(Month(Date1)) & "/" & CStr(Day(Date1)) & "/" & CStr(Year(Date1))
        strCrit2 = "<=" & CStr(Month(Date2)) & "/" & CStr(Day(Date2)) & "/" & CStr(Year(Date2))
     
        With Worksheets("Feuil1")
            Set rngUsed = .UsedRange
            .AutoFilterMode = False
     
            ' Cette ligne assume que les dates sont dans la première colonne de la plage (Field:=1)
            rngUsed.AutoFilter Field:=1, Criteria1:=strCrit1, Operator:=xlAnd, Criteria2:=strCrit2
     
     
            ' rng ne contiendra désormais que les cellules visibles dans la colonne des dates
            Set rng = rngUsed.SpecialCells(xlCellTypeVisible)
            rng.Select
            rng.Copy
            Worksheets("Feuil2").Cells(1).PasteSpecial
     
            ' enlever l'indicateur d'opération couper/copier/coller
            Application.CutCopyMode = False
     
            ' Plus besoin du filtre...
            .AutoFilterMode = False
        End With
    End Sub

Discussions similaires

  1. [XL-2003] macro pour afficher les dates des troisièmes vendredi du mois
    Par julius999 dans le forum Macros et VBA Excel
    Réponses: 21
    Dernier message: 28/10/2009, 17h39
  2. Ensemble de date, pour TOUS les jours d'un mois
    Par mensoif dans le forum Langage SQL
    Réponses: 5
    Dernier message: 06/10/2009, 12h51
  3. [Macro] Ajout valeur manquantes date (trimestre)
    Par uekoner dans le forum Macro
    Réponses: 17
    Dernier message: 19/09/2008, 14h36
  4. Gérer l'ensemble des dates entre une date de début et une date de fin
    Par shaun_the_sheep dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 25/04/2008, 11h13
  5. [VBA]Macro pour insérer la date
    Par vautour29 dans le forum Général VBA
    Réponses: 2
    Dernier message: 23/04/2007, 15h28

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