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 :

Copie dans vba


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
    Mars 2008
    Messages
    132
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 132
    Par défaut Copie dans vba
    bonjour,
    j'ai créé une macro qui copie une selection de ligne, la macro fonctionne mais il y a un maximun ,,, je m'explique :
    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
    Sub G()
    '
    ' G Macro
    ' Macro enregistrée le 2008-03-29 par André
    '
     
    '
        Sheets("bd").Select
        Rows("2:30").Select
        Selection.Insert Shift:=xlDown
        Range("A3").Select
        Sheets("SHOP").Select
        Range("A7:G29,A34:G56,A61:G83,A88:G110,A115:G137,A142:G164,A169:G191,A196:G218,A223:G245,A250:G272,A277:G299,A304:G326,A331:G353,A358:G380,A385:G407,A412:G434,A439:G461,A466:G488,A493:G515,A520:G542,A547:G569,A574:G596").Select
        Selection.Copy
        Sheets("bd").Select
        Range("A2").Select
        Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
            :=False, Transpose:=False
        Range("A3").Select
        Sheets("SHOP").Select
        Application.CutCopyMode = False
        Range("A7").Select
        Sheets("bd").Select
    End Sub
    je ne peux pas ajouter de ligne plus loin que la g 596 ?????

    y-a une raison?????

  2. #2
    Membre Expert
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    2 130
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 2 130
    Par défaut
    Citation Envoyé par lebeniste Voir le message
    bonjour,
    j'ai créé une macro qui copie une selection de ligne, la macro fonctionne
    C'est extraordinaire : moi, la simple macro
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Sub Test()
    Range("A7:G29,A34:G56,A61:G83").Copy
    Range("A1").PasteSpecial Paste:=xlPasteValues
    End Sub
    Refuse de fonctionner. Même si je sélectionne en manuel La plage (A1:A2;C8:C10), Excel me fait un KK nerveux
    Peux-tu me donner la version que tu utilises (moi, c'est la 2003) ?
    A+

  3. #3
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    Pour sélectionner des cellules non contigues, maintenir Ctrl appuyé et cliquer sur les cellules (en tout cas sur Excel 2000).

    Et le code de sélection de Lebeniste fonctionne aussi.

    En ce qui concerne le problème Lebeniste :

    n'y aurait-il entre la feuille source et la feuille destination des différences de formatage : par exemple des cellules fusionnées ?

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    132
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 132
    Par défaut
    version 2003 aussi .....

    pour se qui est du ctrl et selection j'ai essayer , il ne depasse pas la meme ligne .....

  5. #5
    Membre chevronné
    Inscrit en
    Janvier 2008
    Messages
    483
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 483
    Par défaut
    Bonsoir
    Pour sélectionner des cellules non contigues, utiliser la méthode Union(.....)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Sub Test()
    Dim Plage As Range
    Sheets("SHOP").Select
      Set Plage = Application.Union(Range("A7:G29"), _
                  Range("A34:G56"), Range("A61:G83"))
      Plage.Copy Destination:=[BD!A1]
    End Sub
    Bonne soirée

    Abed_H

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    132
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 132
    Par défaut
    desolé rien a faire il ne copie pas les données excedent 596 ,,,

    que faire ????

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

Discussions similaires

  1. Traitement d'erreur dans VBA
    Par charleshbo dans le forum VBA Access
    Réponses: 9
    Dernier message: 10/02/2006, 14h03
  2. Utilisation d'un résultat de requete dans VBA
    Par marie10 dans le forum Access
    Réponses: 3
    Dernier message: 30/01/2006, 10h29
  3. appel module dans vba
    Par scully2501 dans le forum Access
    Réponses: 3
    Dernier message: 14/09/2005, 16h37
  4. Réponses: 3
    Dernier message: 22/10/2004, 12h04
  5. [VB.NET]Copie dans le presse-papier
    Par San Soussy dans le forum Windows Forms
    Réponses: 9
    Dernier message: 19/03/2004, 15h18

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