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 :

vba et tableau structué


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Assistant aux utilisateurs
    Inscrit en
    Mars 2014
    Messages
    72
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Assistant aux utilisateurs
    Secteur : Transports

    Informations forums :
    Inscription : Mars 2014
    Messages : 72
    Par défaut vba et tableau structué
    Bonjour,

    Un tableau structuré est nommé Txl_TabStruct (c'est pour l'exemple hein...) avec trois colonnes ayant pour entête Nom, Prénom, Âge

    Y a t-il moyen de faire quelque chose du genre :

    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 Ecrire_dans_le_Txl()
     
    dim n as integer
     
    n = 3
    with [Txl_TabStruct]
              .cells(n,[@Nom]) = "Tartagueu"
    end with
     
    n=5
    with [Txl_TabStruct]
            .cells(n,[@Prénom]) = "Alain"
    End sub
    Bref, aller à une cellule précise en nommant l'entête de la colonne.

    Merci.

    PLH81

  2. #2
    Rédacteur
    Avatar de Philippe Tulliez
    Homme Profil pro
    Formateur, développeur et consultant Excel, Access, Word et VBA
    Inscrit en
    Janvier 2010
    Messages
    13 173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur, développeur et consultant Excel, Access, Word et VBA

    Informations forums :
    Inscription : Janvier 2010
    Messages : 13 173
    Billets dans le blog
    53
    Par défaut
    Bonjour,
    Exemple de l'écriture sur la ligne 3 de la colonne dont l'en-tête est "Client" du tableau de la feuille active (ici le tableau est seul)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Sub t()
      Dim oList As ListObject
      Set oList = ActiveSheet.ListObjects(1)
      With oList
      .DataBodyRange.Cells(3, .ListColumns("Client").Index).Value = "Ma Petite Entreprise"
      End With
      Set oList = Nothing
    End Sub
    Philippe Tulliez
    Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)
    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
    Mes tutoriels : Utilisation de l'assistant « Insertion de fonction », Les filtres avancés ou élaborés dans Excel
    Mon dernier billet : Utilisation de la fonction Dir en VBA pour vérifier l'existence d'un fichier

  3. #3
    Membre confirmé
    Homme Profil pro
    Assistant aux utilisateurs
    Inscrit en
    Mars 2014
    Messages
    72
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Assistant aux utilisateurs
    Secteur : Transports

    Informations forums :
    Inscription : Mars 2014
    Messages : 72
    Par défaut vba et tableau structuré
    Bonsoir Mr Tulliez,

    Alors ça, je vais le graver en rouge et noir.

    Question subsidiare :
    J'ai vu qu'il n'était pas nécessaire de déclarer le tableau structurée en ListObject
    Qu'en pensez-vous ?

    PLH81

  4. #4
    Expert confirmé Avatar de Patrice740
    Homme Profil pro
    Retraité
    Inscrit en
    Mars 2007
    Messages
    2 478
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Mars 2007
    Messages : 2 478
    Par défaut
    Bonjour,
    Citation Envoyé par PLH81 Voir le message
    J'ai vu qu'il n'était pas nécessaire de déclarer le tableau structurée en ListObject
    C'est pas qu'il n'est pas nécessaire de déclarer le tableau, c'est qu'on peut référencer le tableau structuré directement par son nom, c'est à dire qu'on peut remplacer
    Code VBA : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Set Tableau = ThisWorkbook.Worksheets("Base").ListObjects("Base_donnees").Range
    With Tableau
    ...
    Par
    Code VBA : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    With [Base_donnees]
    ...

  5. #5
    Membre confirmé
    Homme Profil pro
    Assistant aux utilisateurs
    Inscrit en
    Mars 2014
    Messages
    72
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Assistant aux utilisateurs
    Secteur : Transports

    Informations forums :
    Inscription : Mars 2014
    Messages : 72
    Par défaut VBA et tableau structuré
    Bonjour Patrice,

    ok. De directement appeler par les [ ] simplifie le codage, mais ensuite, est ce qu'on peut faire exactement les mêmes choses, y a-t-il des restrictions ou des inconvénients à déclarer ainsi [ ] ?

    Cordialement

    PLH81

  6. #6
    Rédacteur
    Avatar de Philippe Tulliez
    Homme Profil pro
    Formateur, développeur et consultant Excel, Access, Word et VBA
    Inscrit en
    Janvier 2010
    Messages
    13 173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur, développeur et consultant Excel, Access, Word et VBA

    Informations forums :
    Inscription : Janvier 2010
    Messages : 13 173
    Billets dans le blog
    53
    Par défaut
    Bonjour,
    est ce qu'on peut faire exactement les mêmes choses, y a-t-il des restrictions ou des inconvénients à déclarer ainsi [ ] ?
    Aucune restriction. Lorsque l'on déclare une variable objet (Workbook, Worksheet, Range, ListObject, PivotTable, etc.), celle-ci hérite des méthodes et des propriétés de cet objet.

    [EDIT]
    Donc dans cet exemple
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Dim oList As ListObject
    Set oList = shtDb.ListObjects(1)
    oList.Name = "MonTableau"
    L'instruction de la dernière ligne donne le même résultat que
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    shtDb.ListObjects(1).Name = "MonTableau"
    Philippe Tulliez
    Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)
    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
    Mes tutoriels : Utilisation de l'assistant « Insertion de fonction », Les filtres avancés ou élaborés dans Excel
    Mon dernier billet : Utilisation de la fonction Dir en VBA pour vérifier l'existence d'un fichier

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

Discussions similaires

  1. [VBA Excel] Tableau avec données du userform et de formules
    Par Viper7 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 28/06/2006, 13h29
  2. [VBA-E] tableau dynamique
    Par bricereyem dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 09/06/2006, 17h57
  3. [VBA - ACCESS] tableau en tant que prametre optionel
    Par jarod_bx dans le forum Access
    Réponses: 1
    Dernier message: 30/04/2006, 11h31
  4. [VBA-E] Tableau de données <=> Fichier Texte
    Par P50 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 18/12/2005, 16h02
  5. [VBA-E] Tableau croisé dynammique et Init
    Par comme de bien entendu dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 25/11/2005, 12h34

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