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 :

Problème tableau 2 dimensions dynamique


Sujet :

Macros et VBA Excel

  1. #1
    Membre régulier
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Mai 2011
    Messages
    172
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Bâtiment

    Informations forums :
    Inscription : Mai 2011
    Messages : 172
    Points : 88
    Points
    88
    Par défaut Problème tableau 2 dimensions dynamique
    Bonjour forum

    Je désire créer un tableau a deux dimention, don le nombre de valeur de la première variable est inconnue et le nombre de la 2e est 11, voici mon code:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    last = .Range("Q65536").End(xlUp).Row
    x = 0
        For i = 3 To last
            If i = 3 Or Cells(i, 17) <> Cells(i - 1, 17) Then
                x = x + 1
                ReDim Preserve tabsche(x, 11)
                For j = 1 To 11
                    tabsche(x, j) = Cells(i, 16 + j)
                Next j
            End If
        Next i
    End With
    Une erreur survient lorsque x prend la valeur 2, donc au moment ou je désire entré une seconde ligne dans mon tableau l'erreur : "L'indice n'appartient pas à la selection, sur la ligne de code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ReDim Preserve tabsche(x, 11)

    Merci de votre aide

  2. #2
    Expert éminent sénior


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Points : 20 040
    Points
    20 040
    Par défaut
    aide en ligne

    ReDim, instruction
    (...)
    Si vous utilisez le mot clé Preserve, vous ne pouvez redimensionner que la dernière dimension du tableau. Vous ne pouvez en aucun cas modifier le nombre de dimensions. Par exemple, si votre tableau n'a qu'une dimension, vous pouvez la modifier puisqu'il s'agit de la dernière et seule dimension. Toutefois, si le tableau compte plusieurs dimensions, seule la taille de la dernière dimension est modifiable si vous souhaitez préserver le contenu du tableau. L'exemple suivant montre comment augmenter la taille de la dernière dimension d'un tableau dynamique sans effacer les données qu'il contient :
    (...)

  3. #3
    Membre régulier
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Mai 2011
    Messages
    172
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Bâtiment

    Informations forums :
    Inscription : Mai 2011
    Messages : 172
    Points : 88
    Points
    88
    Par défaut
    Ok Merci,

    J'ai donc monté mon tableau en colonne et utiliser la fonction transpose:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Range(cells(1,1),cells(ubound(tabsche,2),11)) = application.workcheetsFunction.transpose(tabsche)
    Merci

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

Discussions similaires

  1. creation d'un tableau double dimension dynamiquement
    Par elmcherqui dans le forum C++
    Réponses: 3
    Dernier message: 09/07/2009, 20h05
  2. probléme tableau 1 dimension
    Par kamnouz dans le forum Débuter
    Réponses: 4
    Dernier message: 12/12/2007, 20h55
  3. Problème tableau 2 Dimensions
    Par kiouz dans le forum Flash
    Réponses: 3
    Dernier message: 08/01/2007, 22h06
  4. Réponses: 8
    Dernier message: 24/11/2006, 12h07
  5. Réponses: 23
    Dernier message: 21/08/2003, 07h16

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