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 :

Copier tableau à partir d'une cellule.


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
    Juillet 2012
    Messages
    53
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2012
    Messages : 53
    Par défaut Copier tableau à partir d'une cellule.
    Bonjour à tous,

    Je souhaiterais copier les valeurs d'un premier tableau et les stocker dans un tableau avec pour nombre de colonne la ligne entière. Puis insérer ce tableau au dessus d'une ligne dont la valeur de la première cellule est "monep". 2 problèmes dans mon code: créer un tableau dont le dimensionnement est 50xligne_entière et copier le tableau à partir de la bonne cellule.

    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
     
    Sub tableauv1()
    Dim i As Integer, j As Integer, tableau(50, ligne_entière) As String
    Application.Workbooks.Open ("\\MCA-SERVEUR\OPCVM\VALORISATIONS HEBDO\MOUVEMENTS MONEP\monep.xls")
    j = 1
    For i = 1 To 200
        If Cells(i, 2).Value = "MCA EUROP' AVENIR" Then
            tableau(j, 1) = Range("A1").Cells(i, 1)
            tableau(j, 2) = Range("A1").Cells(i, 2)
            tableau(j, 3) = Range("A1").Cells(i, 3)
            tableau(j, 4) = Range("A1").Cells(i, 4)
            tableau(j, 5) = Range("A1").Cells(i, 5)
            j = j + 1
        End If
    Next
    ActiveWorkbook.Close True
    With Worksheets("pointageValo")
    ligne = .[A:A].Find("monep", , xlValues, xlWhole).Row
    'problème ici
    Range("ligne") = tableau()
    End With
    End Sub
    Pouvez-vous m'aidez ?
    Merci !

  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 141
    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 141
    Billets dans le blog
    53
    Par défaut
    Bonjour,
    Je ne comprends pas très bien ce que tu veux dire par
    créer un tableau dont le dimensionnement est 50xligne_entière
    Je suppose que tu parles des colonnes de la lignes.
    Que ton tableau est de 50 lignes et x colonnes et que x doit être trouvé par une formule.
    Admettons que la base de données couvre la plage A1:J510
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     Dim db As Range
     Set db = ThisWorkbook.Worksheets("Feuil1").Range("A1").CurrentRegion
     Dim tableau()
     ReDim tableau(50, db.Columns.Count)
    Où la valeur renvoyée par la propriété db.Columns.Count sera 10
    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 averti
    Profil pro
    Inscrit en
    Juillet 2012
    Messages
    53
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2012
    Messages : 53
    Par défaut
    Pardon, je voulais dire un tableau à 2 dimensions. 50lignes et autant de colonnes qu'il y a dans une ligne entière !

  4. #4
    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 141
    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 141
    Billets dans le blog
    53
    Par défaut
    Bonjour,
    Citation Envoyé par HankMoody Voir le message
    Pardon, je voulais dire un tableau à 2 dimensions. 50lignes et autant de colonnes qu'il y a dans une ligne entière !
    C'est donc ce que je t'ai proposé. Tout au moins en considérant que toutes les colonnes de la base de données sont de mêmes dimensions quelque soit la ligne.
    Sinon, il faut redimensionner la variable Tableau à chaque ligne.
    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

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2012
    Messages
    53
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2012
    Messages : 53
    Par défaut
    Ok merci, et pour la partie où on insert le tableau tu as une idée?

  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 141
    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 141
    Billets dans le blog
    53
    Par défaut
    Bonjour,

    Un exemple
    Les variables/constantes
    startRng est l'adresse de la cellule à partir de laquelle on copie la table
    shtDest est la feuille où la copie aura lieu.
    myTable est la table à deux dimensions contenant les valeurs à copier
    Le code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     Const startRng As String = "A20"
     With shtDest
     .Range(startRng).Resize(UBound(myTable), UBound(myTable, 2) - 1) = myTable
     End With
    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

Discussions similaires

  1. selectionner et copier 3 lignes à partir d'une cellule nommée
    Par matt41 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 22/06/2012, 13h08
  2. [XL-2010] Meilleure procédure pour générer/copier tableau à partir d'une PivotTable
    Par yzf-r dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 15/03/2012, 14h52
  3. Suppression d'une ligne d'un tableau à partir d'une valeur de cellule
    Par jerem1 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 17/12/2010, 14h15
  4. [VBA]Copier le contenu d'une cellule d'un autre classeur
    Par dudu59 dans le forum Macros et VBA Excel
    Réponses: 13
    Dernier message: 01/02/2006, 17h08
  5. [SQL] Obtenir un tableau à partir d'une liste
    Par JMO91 dans le forum Langage SQL
    Réponses: 2
    Dernier message: 11/01/2006, 00h07

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