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 :

Insértion de lignes (nbre variable) dans tableau (nbre de lignes variable) [XL-2010]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Femme Profil pro
    Assistante de gestion en alternance
    Inscrit en
    Novembre 2015
    Messages
    41
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 33
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Assistante de gestion en alternance
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2015
    Messages : 41
    Par défaut Insértion de lignes (nbre variable) dans tableau (nbre de lignes variable)
    Bonjour à tous,

    Je suis nouvelle sur le forum et suis débutante sur le tas, en VBA.
    J'élabore une macro actuellement et bloque sur la finalisation de celle-ci.
    Voilà mon problème :

    Insertion de numéros de devis manquants.

    J’ai une macro de contrôle, qui me référence en colonne J, les numéros de devis qui manque dans ma base de données (tableau_X sur Excel). (Ces devis sont présents sur les dossiers des chargés d’affaire mais pas dans ma base de données).
    J’ai une formule simple NB.SI en colonne K qui me compte le nombre de devis qui manquent à mon tableau_X.
    Le tableau_X, base de données, me référence les devis, et je veux ajouter par macro, ces N° de devis manquants au tableau_X existant.
    Le nombre de devis manquants est variable.
    Le nombre de lignes du tableau est variable.

    Idéalement, la fonction souhaitée doit insérer les numéros de devis colonne J manquants à la fin du tableau_X.

    Merci d'avance

  2. #2
    Membre éprouvé
    Homme Profil pro
    Chargé d'études RH
    Inscrit en
    Août 2014
    Messages
    162
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Chargé d'études RH
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2014
    Messages : 162
    Par défaut
    Bonjour,

    Peux tu être plus précise s'il te plait ? Je n'ai pas bien compris ce que tu veux.
    Voilà quelques pistes pour commencer :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    'Insert une ligne à la dernière ligne de la colonne A
    range("A1048576").End(XlUp).EntireRow.Insert

  3. #3
    Membre averti
    Femme Profil pro
    Assistante de gestion en alternance
    Inscrit en
    Novembre 2015
    Messages
    41
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 33
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Assistante de gestion en alternance
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2015
    Messages : 41
    Par défaut
    Nom : question forum.JPG
Affichages : 256
Taille : 62,3 Ko

    Ok, oui je vais essayer d'être plus claire :

    - Dans mon fichier, j'ai dans une colonne (J), une liste de numéros (devis), que je dois ajouter à la fin de mon tableau.
    - Le nombre de devis à ajouter peut-être de 5 ou 10 ou 15, variable.
    - Le nombre de lignes du tableau existant peut-être de 100, 200 ou 300, variable.
    - Je souhaite finir ma macro de contrôle, par un "mouvement", qui prend tous mes numéros de devis (colonne J), pour les ajouter à la fin du tableau.

    ça n'a pas l'air si farfelu mais je ne maîtrise pas bien le langage VBA

  4. #4
    Membre chevronné Avatar de pasdechances
    Homme Profil pro
    Alternant, Ingénieur en systèmes Informatiques et Industriels
    Inscrit en
    Septembre 2015
    Messages
    218
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Alternant, Ingénieur en systèmes Informatiques et Industriels
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Septembre 2015
    Messages : 218
    Par défaut
    boujour,
    tu peut essayer un truc du genre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    ligne = range("A1").End(xlDown).Row 'dernière ligne du tableau
     
    y = 2 'ligne de début des devis
     
    while cells(y,10) <> "" 'tant que tu as des devis a ajouter
        cells(ligne+1,1) = cells(y,10) ' on copie le devis dans la colonne a
        ligne = ligne + 1 ' on incrémente le numéro de ligne
        y = y + 1
    wend

  5. #5
    Membre averti
    Femme Profil pro
    Assistante de gestion en alternance
    Inscrit en
    Novembre 2015
    Messages
    41
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 33
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Assistante de gestion en alternance
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2015
    Messages : 41
    Par défaut
    ça ne fonctionne pas je dois oublier quelque chose :/

  6. #6
    Membre chevronné Avatar de pasdechances
    Homme Profil pro
    Alternant, Ingénieur en systèmes Informatiques et Industriels
    Inscrit en
    Septembre 2015
    Messages
    218
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Alternant, Ingénieur en systèmes Informatiques et Industriels
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Septembre 2015
    Messages : 218
    Par défaut
    dans quel sens sa fonctionne pas ?
    XD
    une erreur apparait ?
    ça ne fait rien du tout ?

    verifie que je ne me soit pas tromper de numéro de colonne

    autant pour moi je viens de voir une chose a laquelle je n’avais pas prêté attention voici qui devrai être fonctionnel :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    ligne = range("A3").End(xlDown).Row 'dernière ligne du tableau
     
        y = 2 'ligne de début des devis
     
        while cells(y,10) <> "" 'tant que tu as des devis a ajouter
            cells(ligne+1,1) = cells(y,10) ' on copie le devis dans la colonne a
            ligne = ligne + 1 ' on incrémente le numéro de ligne
            y = y + 1
        wend
    avec le précédant code, tes premiers devis on été modifier

  7. #7
    Membre averti
    Femme Profil pro
    Assistante de gestion en alternance
    Inscrit en
    Novembre 2015
    Messages
    41
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 33
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Assistante de gestion en alternance
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2015
    Messages : 41
    Par défaut
    Pour le 1er code rien ne se produisait, elle semblait ne pas se lancer.
    J'ai testé avec le deuxième également, rien ne change.

    En VBA j'ai ça :

    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
    Sub Macro1()
    '
    ' Macro1 Macro
    '
     
    Sheets("BASE DEVIS").Select
    Range("A1").Select
    ligne = Range("A3").End(xlDown).Row 'dernière ligne du tableau
     
        y = 2 'ligne de début des devis
     
        While Cells(y, 10) <> "" 'tant que tu as des devis a ajouter
            Cells(ligne + 1, 1) = Cells(y, 10) ' on copie le devis dans la colonne a
            ligne = ligne + 1 ' on incrémente le numéro de ligne
            y = y + 1
    Wend
     
    End Sub

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

Discussions similaires

  1. [SQL-Server] Pb affichage requete sql dans tableau manque 1 ligne
    Par danny3107 dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 14/12/2009, 15h58
  2. [XL-2003] Récupérer valeur de ligne selon recherche dans tableau
    Par Lufia dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 05/11/2009, 13h02
  3. Variable dans tableau croisé
    Par cchampion2fr dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 03/10/2008, 11h21
  4. [MySQL] transformer ligne en colonne dans tableau après regroupement
    Par yadou dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 19/07/2007, 15h27
  5. Lire ligne puis stockage dans tableau
    Par niko40 dans le forum C++
    Réponses: 9
    Dernier message: 03/04/2006, 23h01

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