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 :

Selection de plusieurs plage


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2010
    Messages
    64
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2010
    Messages : 64
    Par défaut Selection de plusieurs plage
    Bonjour,

    je souhaite selectionner plusieurs plage d'un seul coup.
    j'ai procédé de la façon suivante mais ça ne marche pas !!

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Union(Range("B8:Y8"), Range("AJ8:AU8"), Range("BF8:BZ8")).Select
      'Range("AJ8:AU8").Select
       'Range("BF8:BZ8").Select
     
       Range("Y8").Activate
       Range("AU8").Activate
       Range("BZ8").Activate
    merci pour votre aide

  2. #2
    Membre éprouvé
    Inscrit en
    Janvier 2011
    Messages
    106
    Détails du profil
    Informations personnelles :
    Âge : 64

    Informations forums :
    Inscription : Janvier 2011
    Messages : 106
    Par défaut
    Bonjour,

    Essayer plutôt
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Set maPlage = Union(Range("B8:Y8"), Range("AJ8:AU8"), Range("BF8:BZ8"))
    maPlage.Select 'si la sélection est nécessaire
    Ajout: désolé, la correction proposée n'était pas pertinente!

  3. #3
    Expert confirmé
    Homme Profil pro
    aucune
    Inscrit en
    Septembre 2011
    Messages
    8 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Septembre 2011
    Messages : 8 208
    Par défaut
    Bonjour,

    Tu ne peux utiliser "Activate" que pour une seule cellule à la fois, celle-ci devenant la cellule active.

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2010
    Messages
    64
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2010
    Messages : 64
    Par défaut
    daniel.c peut tu me donner plus d'explications
    dois-je faire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Union(Range("B8:Y8"), Range("AJ8:AU8"), Range("BF8:BZ8")).Select
     
      'Range("AJ8:AU8").Select
       'Range("BF8:BZ8").Select
     
       'Range("Y8").Activate
       'Range("AU8").Activate
       Range("BZ8,Y8,AU8").Activate
    je n'arrive pas à trouver pk ça ne copie pas les plages que je veux et uniquement la première de B8 à Y8.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Union(Range("B8:Y8"), Range("AJ8:AU8"), Range("BF8:BZ8")).Select
     
     Range("BZ8").Activate
    j'ai mis qu'une seule cellule dans le activate

  5. #5
    Expert confirmé
    Homme Profil pro
    aucune
    Inscrit en
    Septembre 2011
    Messages
    8 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Septembre 2011
    Messages : 8 208
    Par défaut
    Il n'y a pas de "Copy" dans ton code. Qu'est-ce que tu veux copier, et où ? si tu veux par exemple copier la sélection en A1 :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Union(Range("B8:Y8"), Range("AJ8:AU8"), Range("BF8:BZ8")).Copy [A1]

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2010
    Messages
    64
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2010
    Messages : 64
    Par défaut
    si il y a un copie dans mon code.
    je vous mets le code en entier:
    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
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    Sub Compilation()
     
    Dim Fichier As String
    Dim Chemin As String
    Dim ClasseurSource As Workbook
     
     
    Application.DisplayAlerts = False 'Evite les messages d'Excel
    Application.EnableEvents = False 'Evite l'exécution éventuelle de macros liées aux fichiers ouverts
     
    Chemin = "C:\Documents and Settings\Bureau\Dossier\" 'Chemin du répertoire contenant les fichiers
    Fichier = Dir(Chemin & "*.xls")
     
    Sheets("Feuil1").Select
    Cells.Clear ' tout effacer
    Cells(1, 2) = "Date"
    Cells(1, 3) = "Appels reçus en état ouverts"
    Cells(1, 4) = "Appels reçus en état bloqué"
    Cells(1, 5) = "Appels reçus en état renvoi général"
    Cells(1, 6) = "Appels reçus par entraide"
    Cells(1, 7) = "Nombre maximum d'appels simultanés"
    Cells(1, 8) = "Débordements pendant sonnerie"
    Cells(1, 9) = "Appels servis sans attente"
    Cells(1, 10) = "Appels servis avec attente"
    Cells(1, 11) = "Appels envoyés en entraide"
    Cells(1, 12) = "Appels redirigés hors ACD"
    Cells(1, 13) = "Appels dissuadés"
    Cells(1, 14) = "Appels traités par un GT Guide"
    Cells(1, 15) = "Appels envoyés à un GT remote"
    Cells(1, 16) = "Appels rejetés pour manque de ressources"
    Cells(1, 17) = "Appels servis par un agent"
    Cells(1, 18) = "Servis par un agent conformément à la QS"
    Cells(1, 19) = "Appels servis sans code de transaction"
    Cells(1, 20) = "Appels servis avec code de transaction"
    Cells(1, 21) = "Redistributions ACD"
    Cells(1, 22) = "Guide de présentation"
    Cells(1, 23) = "1ème guide de parcage"
    Cells(1, 24) = "2ème guide de parcage"
    Cells(1, 25) = "3ème guide de parcage"
    Cells(1, 26) = "4ème guide de parcage"
    Cells(1, 27) = "5ème guide de parcage"
    Cells(1, 28) = "6ème guide de parcage"
    Cells(1, 29) = "Sonnerie sur agent"
    Cells(1, 30) = "Guide de renvoi général"
    Cells(1, 31) = "Guide de blocage"
    Cells(1, 32) = "Appel direct vers agent en attente"
    Cells(1, 33) = "Nombre total d'abandons"
    Cells(1, 34) = "Temps total de traitement des appels"
    Cells(1, 35) = "Temps moyen de traitement des appels"
    Cells(1, 36) = "Temps total de guide de présentation"
    Cells(1, 37) = "Temps moyen de guide de présentation"
    Cells(1, 38) = "Temps total avant la mise en file d'attente"
    Cells(1, 39) = "Temps total d'attente des appels servis"
    Cells(1, 40) = "Temps moyen d'attente des appels servis"
     
     
     
    'lig = 2
     
    Do While Fichier <> ""
        'Range("A2") = Dir
        Set ClasseurSource = Workbooks.Open(Chemin & Fichier)
        ClasseurSource.Worksheets("General").Select 'nom de la feuille source (commune à tous les fichiers sources)
    Dim plage As Range
     
     'Range("B8:Y8,AJ8:AU8,BF8:BZ8").Select
     
    Union(Range("B8:Y8"), Range("AJ8:AU8"), Range("BF8:BZ8")).Select
     
      'Range("AJ8:AU8").Select
       'Range("BF8:BZ8").Select
     
       'Range("Y8").Activate
       'Range("AU8").Activate
       'Range("BZ8").Activate
     
       Range("BZ8").Activate
     
       'plage.Select
     
       'plage.Activate
     
     
     
     
        Range(Selection, Selection.End(xlDown)).Select 'selection de la zone à copier
        'Date = CDate(Range("A8"))
     
        Selection.Copy
     
        ThisWorkbook.Activate
     
        Sheets("Feuil1").Select
        fin = Cells(65535, 2).End(xlUp)(2).Select 'recherche de la première ligne vide
     
        ActiveSheet.Paste
     
        ClasseurSource.Close
     
        Fichier = Dir
    Loop
     
    Dim i As Variant
     
    Dim j As Variant
     
    i = 2
     
    'boucle pour enlever "LE" de la date
    'on utilise le mid pour être sur que même les mois court (Mars) vont passé
     
    Do While i <> fin And i < 374
    Sheets("Feuil1").Cells(i, 2) = Mid((Sheets("Feuil1").Cells(i, 2)), 4)
     
    i = i + 1
    Loop
     
    ' boucle pour transformer en format date
    j = 2
    Do While j <> fin And j < 374
      Sheets("Feuil1").Cells(j, 2) = Format(CDate((Sheets("Feuil1").Cells(j, 2).Value)), "dd/mm/yyyy")
     
         j = j + 1
    Loop
     
    Application.EnableEvents = True
    Application.DisplayAlerts = True
     
    End Sub
     
     
     
    'Sheets("Feuil1").Cells(, 2) = Right(Cells(, 2), 9)
        'On Error Resume Next 'si A1 n'est pas une date
        'Sheets("feuil1").Range("B") = CDate(Range("B"))
       'On Error GoTo 0
        'Date = CDate(Range("A8"))
        'Sheets("feuil1").Cells(, 2) = DateValue(Cells(, 2))
         'Do While Cells(65535, 2).End(xlUp)(2)
     
     
        'Loop
        'ClasseurSource.Worksheets("Genaral").Cells(, 2) = DateValue(Cells(, 2))
     
       ' Cells(8, 1) = DateValue(Cells(8, 1))
     
        'Cdate(range("B8"))
    je me suis pet être mal exprimée sur cette partie.
    je ne fais pas que sélectionner plusieurs plages je les copie aussi
    merci pour votre aide à tous

  7. #7
    Expert confirmé
    Homme Profil pro
    aucune
    Inscrit en
    Septembre 2011
    Messages
    8 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Septembre 2011
    Messages : 8 208
    Par défaut
    J'ai du mal à comprendre ce que tu veux copier. Peux-tu expliquer ou mettre une feuille exemple en pièce jointe.

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

Discussions similaires

  1. Selection plusieurs plage de cellule
    Par Léponge85 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 11/06/2008, 17h04
  2. [XSLT]select sur plusieur documents XML
    Par jesus144 dans le forum XMLRAD
    Réponses: 3
    Dernier message: 15/06/2005, 10h56
  3. selection de plusieurs facettes
    Par lizou03 dans le forum OpenGL
    Réponses: 5
    Dernier message: 28/04/2005, 17h21
  4. select sur plusieurs table, question sur jointure
    Par Schulman dans le forum Langage SQL
    Réponses: 7
    Dernier message: 03/09/2004, 13h54

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