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 :

sélection de plusieurs lignes - erreur


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 2009
    Messages
    49
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2009
    Messages : 49
    Par défaut sélection de plusieurs lignes - erreur
    Voilà, j'en suit à ajouter des boutons dans ma feuille afin de dupliquer certaine lignes. L'idée est de dupliquer un champs créé dans une feuille servant à entrer les infos de nos intervenants. Le champs se réparti sur 6 lignes et possède des cellules "mergés" (pardon je n'ai pas l'expression francophone).

    Ceci apporte un défi de taille car si j'insère 6 lignes et que je copie une à une les lignes supérieures à celle-ci les "merge" ne sont pas conservés.

    J'en suis donc venu à la conclusion que sélectionner les lignes et les copier en bloc avant de les coller résoudrais mon problème. Ça marche pas, j'ai écrit ce code mais mon problème vient surtout du fait que je veut me servir de mon bouton comme point de référence, me permettant ainsi de m'en servir ailleur dans le fichier.

    Si j'appui sur le bouton ça insére 6 ligne au-dessu du bouton, sélectionne de la 12e à la 7e ligne au-dessus du bouton en bloc et les copie et les colle de la 6e à la 1ière ligne au-dessus du bouton.

    voici le code concernant la sélection, rendu à
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Set rstart = butrow.Rows
    on me dit que "object required" et le débugeur sélectione
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    Sub AddRow_Intervenants2()
     
        Dim butrange As Range
        Dim rstart As Long
        Dim rend As Long
     
        Set butrange = ActiveSheet.Buttons(Application.Caller).TopLeftCell
     
        Set rstart = butrange.Rows
        Set rend = rstart - 6
     
        Rows(rstart & ":" & rend).Select
     
    End Sub

  2. #2
    Membre Expert Avatar de aalex_38
    Inscrit en
    Septembre 2007
    Messages
    1 631
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 1 631
    Par défaut
    Pas de set ici :


  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    49
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2009
    Messages : 49
    Par défaut
    Citation Envoyé par aalex_38 Voir le message
    Pas de set ici :

    On approche de la solution

    mais maintenant ça bloque à

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Rows(rstart & ":" & rend).Select
    ça sélectionne la ligne en entier et me dit:

    run time error '13':

    Type Mismatch

  4. #4
    Membre émérite
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    682
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 682
    Par défaut
    J'ai pas bien compris le problème du bouton mais je vais déjà t'apporter 2 petites réponses qui pourront t'aider

    1) "Merge" : cela concerne la "Fusion" des cellules en français. Bon, ok, ce n'est pas une réponse et ça ne va pas t'aider

    2) Par contre, tu disais que les "Merge" ne sont pas conservés lorsque tu fais ton Copy/Paste. Je te conseille d'aller jeter un œil (sans te l'arracher ) à PasteSpecial qui pourrait être bien utile dans ton cas. Je suis sûr que tu devrais pouvoir trouver un moyen de garder ton "Merge" lors de ton copier/coller . Direction les tutos, le forum ou même !

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    49
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2009
    Messages : 49
    Par défaut
    Citation Envoyé par DeaD78 Voir le message
    1) "Merge" : cela concerne la "Fusion" des cellules en français. Bon, ok, ce n'est pas une réponse et ça ne va pas t'aider
    Fusion...

    j'ai honte

    merci pour la correction

  6. #6
    Membre Expert Avatar de aalex_38
    Inscrit en
    Septembre 2007
    Messages
    1 631
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 1 631
    Par défaut
    regardes ce que tu as la dedans :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Montest = rstart & ":" & rend
    msgbox Montest

  7. #7
    Membre averti
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    49
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2009
    Messages : 49
    Par défaut
    Citation Envoyé par aalex_38 Voir le message
    regardes ce que tu as la dedans :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Montest = rstart & ":" & rend
    msgbox Montest

    Le résultat est 0:-6 ce qui me semble bizarre...

    je suis perdu

    Je n'en revient pas, voilà plusieurs mois que j'essai ce truc à temps perdu mais j'avoue être au point ou vraiment je commence à délirer.

    /chialage on

    PERSONNE, PERSONNE sur internet n'as eu, jamais à insérer un certain nombre de ligne via un macro et coller d'autre lignes dedans???!!!

    Ça me semble si absurde, c'est simple en apparence ce que je veux:
    insère six ligne au-dessus de mon bouton
    prend les lignes 12 a 7 au-dessus du bouton et copie-les dans les cellules qui viennent d'être ajouter (6 à 1).

    Il me semble que mon bouton est un bon point de départ, ça marche dans TOUT mes scripts si je ne veux qu'insérer une ligne (en fait copier une ligne, ajouter un champs...) mais lorsque je veux insérer 6 lignes et copier coller six lignes c'est la galère. Franchement après 30 ans d'existence je ne peux croire que ce logiciel ne peut faire ça.

    Je veux juste le faire avec des variables au lieu de lui dire d'insérer des lignes à partir d'une ligne précise (comme lorsqu'on enregistre un macro). Je ne vois pas l'idée d'écrire un macro d'insertion de ligne qui n'est pas relatif (au-dessus du bouton, en dessous de la ligne précédente...).

    /chialage off

    Merci beaucoup pour votre aide à venir jusqu'a maintenant. J'espère en venir à bout d'ici la fin de l'année. Insérer 6 lignes, qui aurait cru, les produits microsoft ont le don de nous donner du fil à retorde aux moments les plus inattendus

  8. #8
    Rédacteur/Modérateur


    Homme Profil pro
    Formateur et développeur chez EXCELLEZ.net
    Inscrit en
    Novembre 2003
    Messages
    19 125
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur et développeur chez EXCELLEZ.net
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 19 125
    Billets dans le blog
    131
    Par défaut
    Bonsoir

    sans "s" à Row, car tu veux utiliser le numéro de la ligne de la cellule
    "Plus les hommes seront éclairés, plus ils seront libres" (Voltaire)
    ---------------
    Mes billets de blog sur DVP
    Mes remarques et critiques sont purement techniques. Ne les prenez jamais pour des attaques personnelles...
    Pensez à utiliser les tableaux structurés. Ils vous simplifieront la vie, tant en Excel qu'en VBA ==> mon tuto
    Le VBA ne palliera jamais une mauvaise conception de classeur ou un manque de connaissances des outils natifs d'Excel...
    Ce ne sont pas des bonnes pratiques parce que ce sont les miennes, ce sont les miennes parce que ce sont des bonnes pratiques
    VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA...
    ---------------

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

Discussions similaires

  1. Sélectioner de plusieurs lignes avec Clic+MAJ
    Par helios399 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 03/02/2012, 16h10
  2. Réponses: 2
    Dernier message: 01/06/2011, 17h10
  3. [E-02] Sélection de plusieurs lignes ayant une cellule identique
    Par machintruc84 dans le forum Macros et VBA Excel
    Réponses: 10
    Dernier message: 21/11/2008, 11h17
  4. [MySQL] Sélection de plusieurs lignes
    Par Maestro57 dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 20/06/2007, 16h50
  5. [MySQL] Sélection de plusieurs lignes en une requête
    Par kalash_jako dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 05/05/2006, 20h43

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