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 :

Ajouter une ligne dans un tableau Excel via ses coordonnées dynamiques


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
    Étudiant
    Inscrit en
    Mars 2009
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2009
    Messages : 10
    Par défaut Ajouter une ligne dans un tableau Excel via ses coordonnées dynamiques
    Bonjour,

    j'ai un immense tableau de compte-rendu de visite (dans un musée) saisi chaque jour à partir d'une interface VBA. Une ligne = Une visite. Chaque colonne correspond à un champ (date, nb de visiteur, heure, etc.).
    Dans le classeur j'ai une feuille "CR visite" dans laquelle j'ai un seul tableau nommé "Tableau_CR"
    Je voudrais pouvoir automatiser l'ajout d'une ligne en bas du tableau en écrivant mes infos dans le tableau sauf qu'il arrivent qu'il faille ajouter des infos donc des colonnes.
    Je voudrais donc pouvoir

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Set Ws = Sheets("CR visite")
            L = Sheets("CR visite").Range("a65536").End(xlUp).Row + 1 'pour placer le nouveau CR sur la premiere ligne vide
     
            Range("A" & L).Value = TextBox_Date
            Range("B" & L).Value = ListBox_horaire
            Range("C" & L).Value = Val(TextBox_Nb_Visiteur)
    Plutôt qu'un Range("A" & L) serait-il possible de localiser par Range("Tableau_CR[Date]" & L) ? J'ai essayé et j'ai une erreur. Car à chaque modification par ajout d'une colonne je dois reprendre tous mes Range("colonne") et ayant déjà 32 colonnes, la maintenance du code est très fastidieuse...

    Merci d'avance,

  2. #2
    Expert éminent

    Profil pro
    Conseil, Formation, Développement - Indépendant
    Inscrit en
    Février 2010
    Messages
    8 564
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Conseil, Formation, Développement - Indépendant

    Informations forums :
    Inscription : Février 2010
    Messages : 8 564
    Par défaut
    Bonjour

    De façon générale un tableau doit s'allonger et non s'élargir

    En travaillant en tableau structuré il est très simple d'ajouter une nouvelle ligne https://fauconnier.developpez.com/tu...structuresvba/

  3. #3
    Membre averti
    Profil pro
    Étudiant
    Inscrit en
    Mars 2009
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2009
    Messages : 10
    Par défaut
    Bonsoir, merci de votre réponse. Je travaille effectivement en tableau structuré. J'ai étudié votre lien mais la moitié basse est vide de contenu, je n'ai rien trouvé quant à l'ajout de ligne.

  4. #4
    Expert éminent

    Profil pro
    Conseil, Formation, Développement - Indépendant
    Inscrit en
    Février 2010
    Messages
    8 564
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Conseil, Formation, Développement - Indépendant

    Informations forums :
    Inscription : Février 2010
    Messages : 8 564
    Par défaut
    RE

    A la suite de
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    With Range("nomTableau").ListObbjet
    on peut utiliser diverses méthodes
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Set y = .ListRows.Add 
    pour ajouter une ligne et la remplir ensuite en se référant à y par les noms de colonnes par exemple
    ou bien
    y = .ListRows.Add.Index
    pour se référer à la nouvelle ligne par sa position dans le tableau

Discussions similaires

  1. ajouter une ligne dans un tableau et afficher la valeur d'une variable
    Par dede94 dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 03/05/2010, 17h24
  2. Ajouter une ligne dans un tableau
    Par kenru dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 28/10/2009, 16h10
  3. Réponses: 1
    Dernier message: 12/12/2008, 17h06
  4. Réponses: 9
    Dernier message: 15/06/2008, 11h13
  5. [vb6] Ajouter une ligne dans un tableau excel
    Par Asdorve dans le forum VB 6 et antérieur
    Réponses: 13
    Dernier message: 13/06/2006, 16h41

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