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

VBA Discussion :

Tabeaux dynamiques à 2 dimensions


Sujet :

VBA

  1. #1
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 9
    Points : 0
    Points
    0
    Par défaut Tabeaux dynamiques à 2 dimensions
    Bonjour,

    Je suis en train de décéder, mes neurones s'éteignent un par un...
    J'essaie simplement de déclarer un tableau dynamique à 2 dimensions et de faire des redim dessus au fur et à mesure (nombre d'éléments inconnu).

    A chaque fois que j'arrive sur la deuxième ligne ReDim Preserve il refuse l'indice... Alors que le but est justement de changer l'indice sinon ça sert à rien. Logique.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Option Base 1
    Sub test()
    Dim Tab() As String
     
    ReDim Preserve Tab(1 To 1, 1 To 1)
    Jusque là le système accepte bien et je vois que de taille "vide" il passe bien à une taille (1,1) et j'arrive à mettre une valeur.

    Ensuite, je boucle, et j'arrive sur une ligne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ReDim Preserve Tab(2, 1)
    Et là il refuse : l'indice n'appartient pas à la sélection.
    Si j'enlève le Preserve il accepte pourtant bien et dans la fenêtre espion je vois bien Tab(1,1) et Tab(1,2) avec Tab(1,2) qui prend bien la nouvelle valeur sur la ligne de code suivante...



    Code complet :

    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
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    Option Base 1
     
    Sub Filtrer()
     
    Dim Team() As String
     
    i = 2
    TeamCol = 5
    newIndex = 1
    Cells(i, TeamCol).Select
    CurTeam = Selection.Value
     
    ReDim Preserve Team(1 To 1, 1 To 1)
     
    Do
        If CurTeam <> "" And newIndex = 1 Then
            Team(newIndex, 1) = CurTeam
            newIndex = newIndex + 1
        Else
            pos = Application.Match(CurTeam, Team(), False)
            If Not IsNumeric(pos) Then
                ReDim Preserve Team(2, 1)
                Team(newIndex, 1) = CurTeam
                newIndex = newIndex + 1
            End If
        End If
        i = i + 1
        Cells(i, TeamCol).Select
        CurTeam = Selection.Value
     
    Loop While CurTeam <> ""
     
    End Sub
    J'ai donc l'impression que VBA n'accepte pas le redimensionnement d'un tableau dynamique à n-dimension...
    Bizarre quand même.

  2. #2
    Inactif  

    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2012
    Messages
    4 903
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2012
    Messages : 4 903
    Points : 10 166
    Points
    10 166
    Billets dans le blog
    36
    Par défaut
    Citation Envoyé par LeGrosWinnie Voir le message
    Bonjour,
    J'ai donc l'impression que VBA n'accepte pas le redimensionnement d'un tableau dynamique à n-dimension...
    FAUX

    Bizarre quand même.

    Rien de bizarre là-dedans. C'est expliqué dans l'aide de VBA

    Un clic sur Redim et

  3. #3
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 9
    Points : 0
    Points
    0
    Par défaut
    F1 ne fait rien chez moi (je suis en entreprise là). Ça ouvre l'aide de l'aide.

    Si vous développez en VBA à l’aide d’Office 2007 ou Office 2010, cette rubrique vous indique comment accéder à l’aide F1 en mode hors connexion pour VBA.

    Accéder à l’aide du développeur en mode hors connexion pour consulter les références de développeur VBA pour Office 2010 ou 2007
    Et je vois pas l'intérêt de ce genre de réponse franchement...

    Prendre les gens pour des manches quand on ne les connait pas...

  4. #4
    Inactif  

    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2012
    Messages
    4 903
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2012
    Messages : 4 903
    Points : 10 166
    Points
    10 166
    Billets dans le blog
    36
    Par défaut
    C'est dans l'aide de VBA. Si le Service de Dictature Informatique ne veut pas que les pauvres mortels ordinaires n'aient pas accès à l'aide de VBA, ce n'est pas mon problème.

    Et puis, il y a MSDN

  5. #5
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 9
    Points : 0
    Points
    0
    Par défaut
    À force de vouloir considérer les utilisateurs comme des imbéciles patentés, on risque de se mettre dans le trouble.

    LOL ta signature !

    Bien joué ! Tu le respectes vraiment bien !

    Tu crois que j'ai pas regardé dans l'aide de VBA ? Je te dis juste qu'un copier coller ne fonctionne pas à partir de l'aide et des articles msdn !

    Vive l'abrutis ! Je demande ce que je fais de mal, je te demande pas ton avis sur comment je dois chercher de l'aide.

    Quand on n'y connait rien on ne répond pas à une question, ça n'a aucun intérêt. Merci.

  6. #6
    Expert éminent sénior
    Avatar de Marc-L
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2013
    Messages
    9 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2013
    Messages : 9 468
    Points : 18 674
    Points
    18 674
    Par défaut

    Bonjour, bonjour !

    C'est pourtant écrit noir sur blanc que ce soit dans l'aide VBA (ce n'est pas notre problème si tu n'en as pas en local,
    voir donc avec le service informatique afin qu'il fasse enfin correctement son boulot !)
    comme sur le lien sur MSDN (si tu traînes ici tu n'as donc aucune difficulté à le lire ‼) …

    Voilà, voilà ! (Je réserve ma signature par défaut pour le prochain échange si tant est qu'il y en ait un …)

    ______________________________________________________________________________________________________
    Je suis Paris, Charlie, Bruxelles, …

  7. #7
    Inactif  

    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2012
    Messages
    4 903
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2012
    Messages : 4 903
    Points : 10 166
    Points
    10 166
    Billets dans le blog
    36
    Par défaut
    Citation Envoyé par LeGrosWinnie Voir le message
    Tu crois que j'ai pas regardé dans l'aide de VBA ? Je te dis juste qu'un copier coller ne fonctionne pas à partir de l'aide et des articles msdn !
    Je n'ai jamais dit de faire du copier-coller. Tout ce que tu as à faire c'est de lire l'article au complet. Cela devrait te permettre de comprendre qu'il n'y rien de bizarre dans ton affaire. Cela fait une éternité que VBA est comme cela. Et puis, si tu avais lu l'article au lieu de juste faire du copier-coller, tu aurais traité quelqu'un d'autre d'abruti.

  8. #8
    Membre expert
    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Juillet 2004
    Messages
    2 725
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Architecte de système d'information

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 725
    Points : 3 338
    Points
    3 338
    Par défaut
    Bonjour à tous,

    Juste pour souligner que depuis au moins la version 2k13 d'Office les aides quelques qu'elles soient ne sont disponibles qu'en ligne....
    Donc si l'entreprise est très restrictive sur l'accès Internet beaucoup d'utilisateurs ne sont plus en mesures d'y accéder, ce qui semble être le cas de notre ami ici.

  9. #9
    Expert éminent sénior
    Avatar de Marc-L
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2013
    Messages
    9 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2013
    Messages : 9 468
    Points : 18 674
    Points
    18 674
    Par défaut


    On peut avoir aussi une partie de l'aide en local, si, si !

    Voir donc cette discussion

  10. #10
    Membre expert
    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Juillet 2004
    Messages
    2 725
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Architecte de système d'information

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 725
    Points : 3 338
    Points
    3 338
    Par défaut
    Oui mais le problème reste entier
    Internet restreint + PC restreint en installation j'imagine, il va devoir faire appel au bon vouloir de son service informatique

  11. #11
    Expert éminent sénior
    Avatar de Marc-L
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2013
    Messages
    9 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2013
    Messages : 9 468
    Points : 18 674
    Points
    18 674
    Par défaut


    Cela m'est déjà arrivé d'être dans cette situation : soit le S.I. comprenait et effectuait le nécessaire
    soit je leur renvoyais toutes les demandes que je ne pouvais traiter par manque de ressources locales !

    Même si j'ai eu droit à des réunions ayant au départ un air de remontage de bretelles,
    une fois mon point de vue exposé et une démo sur l'étendue du langage, un complément d'installation était obtenu !

    Souvent c'était le S.I. prenant Office comme accessoire d'une importance négligeable et
    l'intervenant n'y connaissant rien ou ne voulant pas se fouler effectuait une installation par défaut.
    C'est sûr une installation personnalisée en allant cocher le nécessaire demande un certain effort au cerveau !

  12. #12
    Membre éclairé
    Homme Profil pro
    retraité
    Inscrit en
    Mai 2006
    Messages
    542
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Mai 2006
    Messages : 542
    Points : 712
    Points
    712
    Par défaut
    Bonjour à tous
    Bonjour LeGrosWinnie

    Je ne sais pas si tu as réglé ton pb, mais au cas où, lis cet excellent tuto :

    http://silkyroad.developpez.com/vba/tableaux/

    tu y trouveras certainement la réponse.

    Je m'y réfère très souvent.

    Eric

Discussions similaires

  1. Réponses: 6
    Dernier message: 20/02/2007, 17h00
  2. [HashSet] Tableau dynamique à 2 dimensions
    Par ppopov dans le forum Collection et Stream
    Réponses: 5
    Dernier message: 21/01/2007, 16h21
  3. Réponses: 4
    Dernier message: 19/12/2006, 20h06
  4. declaration d'un tableau dynamique 2 dimensions
    Par mike600river dans le forum C++Builder
    Réponses: 4
    Dernier message: 22/05/2006, 08h53
  5. Réponses: 1
    Dernier message: 09/03/2006, 17h25

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