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 :

[EXCEL2000] Insérer lignes automatiquement


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
    Novembre 2005
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 10
    Par défaut [EXCEL2000] Insérer lignes automatiquement
    Bonjour à vous les pro du VBA

    Voila mon petit problème :

    Je désire insérer une ligne automatiquement en VBA MAIS ATTENTION, quand j'ai enregistré ma macro voila ce que cela m'a donné :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
      Désactivation de la protection 
    ActiveSheet.Unprotect
        ActiveWindow.SmallScroll Down:=9
    Sélection de la ligne et insertion    
    Rows("6:6").Select
    Selection.Insert Shift:=xlDown
    Copie des formules et et collage dans la nouvelle ligne   
    Rows("6:6").Select
        Selection.Copy
        Rows("6:6").Select
      Activation de la protection 
        ActiveSheet.Paste
        Application.CutCopyMode = False
        ActiveWindow.SmallScroll Down:=-3
    Le seul petit hic, c'est que je désire que la nouvelle ligne soit insérer avant mon total, exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    1	   !	DATE	!LETTREDECOMMANDE	!  NOM	  !TYPEDEPRESTATION	  !
    2	   !		!	dede		!  	  !			  !
    3	   !		!	dada		!  	  !			  !
    4	   !		!	dodo		!  	  !			  !
    5	   !		!	dudu		!  	  !			  !
    6	   !		!	dydy		!  	  !	  		  !
    TOTAL ECCP !	FORMULE	!	TOTAL OEG	!FORMULE  !			  !
    TOTAL OEI  !	FORMULE	!	TOTAL ATELIER	!FORMULE  !			  !

    La toute première fois que je vais exécuter ma macro celle fonctionnera parfaitement cela va me donner ceci, mais ensuite
    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
    ----------------------------------------------------------------
    1    DATE ! LETTRE DE COMMANDE ! NOM ! TYPE DE PRESTATION !
    2            !     dede                     !        !                               !
    3            !     dada                     !        !                               !
    4            !     dodo                     !        !                               !
    5            !     dudu                     !        !                               !
    6            !     dydy                     !        !                               !
    7            !                                !        !                               !
    ---------------------------------------------------------------
    TOTAL ECCP !                             !   TOTAL OEG                     !
    TOTAL OEI   !                             !   TOTAL ATELIER                !
    ----------------------------------------------------------------
     
    ----------------------------------------------------------------
    1    DATE ! LETTRE DE COMMANDE ! NOM ! TYPE DE PRESTATION !
    2            !     dede                     !        !                               !
    3            !     dada                     !        !                               !
    4            !     dodo                     !        !                               !
    5            !     dudu                     !        !                               !
    6            !                                !        !                               !
    7            !     dydy                     !        !                               !
    8            !     bébé                     !        !                               !
    ---------------------------------------------------------------
    TOTAL ECCP !                             !   TOTAL OEG                     !
    TOTAL OEI   !                             !   TOTAL ATELIER                !
    ----------------------------------------------------------------
    lorsque je voudrais réinsérer une ligne il me l'insert au n°6 et moi je désire qu'il soit au N°7 pour créer le N°8 (j'espère que vous avez compris)

    Voila j espère que vous avez compris, je suis sur que c'est très simple pour vous mais depuis 2 jours je me ronge les pouces et ce commence à m'énerver un peu.

    Merci par avance de m'aider

    Pense à mettre les balises Code, bouton #
    Je les ai mises mais la prochaine fois c'est le bâton
    ousk'

  2. #2
    Membre éclairé Avatar de marsupilami34
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    576
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 576
    Par défaut
    Bonjour,
    J'avoue que je débute en VBA mais je pense savoir résoudre ton problème.
    En fait il te suffit de compter le nombre de ligne avec une boucle while par exemple du style
    While cells(i,1)<>""
    i=i+1
    Wend
    Le i correspondra à la ligne que tu veux insérer.

  3. #3
    Expert confirmé

    Homme Profil pro
    Inscrit en
    Août 2005
    Messages
    3 317
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2005
    Messages : 3 317
    Par défaut
    bonjour

    j'espere que cet exemple répondra à ta demande


    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
    Option Explicit
    Option Compare Text
     
    Sub insertionLigne()
        Dim x As Integer
     
        On Error GoTo Fin
        'Recherche le 1er numero de ligne contenant le mot "TOTAL" dans la 
        '1ere colonne de la feuille active
        x = Application.WorksheetFunction.Match("*TOTAL*", _
                    ActiveSheet.Columns(1), 0)
     
        'Insertion ligne
        Rows(x).Insert Shift:=xlDown
     
    Exit Sub
    Fin:
    MsgBox "Le mot TOTAL n'a pas été trouvé"
    End Sub


    bon apres midi
    michel

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 10
    Par défaut Merci Merci Merci
    Génial ça marcha merci silky road t le meilleur

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

Discussions similaires

  1. [XL-2013] Insérer une ligne automatiquement
    Par spartel dans le forum Macros et VBA Excel
    Réponses: 11
    Dernier message: 18/02/2014, 16h49
  2. Insérer un retour à la ligne automatique
    Par Nikko42 dans le forum VB.NET
    Réponses: 5
    Dernier message: 17/12/2012, 17h08
  3. Insérer ligne automatiquement
    Par yousron dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 18/06/2010, 17h09
  4. Insérer une ligne automatiquement dans une autre tab
    Par davyd dans le forum Langage SQL
    Réponses: 10
    Dernier message: 29/03/2005, 17h08
  5. [JTextPane] passage a ligne automatique.
    Par bibi-kha dans le forum Composants
    Réponses: 9
    Dernier message: 02/09/2004, 11h10

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