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 :

Tableau de type Range


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Août 2015
    Messages
    43
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2015
    Messages : 43
    Par défaut Tableau de type Range
    Bonjour,
    Je suis actuellement en train de coder le jeu snake sous VBA.
    Je rencontre une difficulté que je n'ai pas réussi à résoudre malgré le temps passé à chercher une réponse sur les forums.

    Pour définir mon serpent, j'aimerais avoir un tableau de type Range, contient donc donc des cellules, les cellules de ce tableau formant le serpent.
    Pendant l'initialisation, VB m'indique une erreur ( différentes selon ce que j'ai essayé).

    Voici la partie de mon code qui pose problème (je ne sais pas comment introduire un code, faites le moi savoir ) :

    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
          Dim serpent() as Range
          Public Const tete = "+"
          Public Const queue = "#"
    
    
          ReDim serpent(4) 'longueur de 4 au début
        For i = 0 To 3
            
            serpent(i) = Range("K" & 19 + i)      'erreur ici : Variable objet ou variable de bloc With non définie
            If i = 0 Then
                serpent(i).Value = tete
            Else
                serpent(i).Value = queue
            End If
        Next i
    J'ai également essayé en déclarant mon tableau de la sorte :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
         Dim serpent() as Variant
    Dans ce cas, l'erreur affiche " objet requis" lors de l'affectation
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    serpent(i).Value = tete
    Merci de votre aide et de votre attention !

  2. #2
    Membre Expert Avatar de Thautheme
    Homme Profil pro
    salarié
    Inscrit en
    Août 2014
    Messages
    1 373
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : salarié

    Informations forums :
    Inscription : Août 2014
    Messages : 1 373
    Par défaut
    Bonjour Skypred, bonjour le forum,

    Puisque tu parles de Range il faut un Set :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Set serpent(i) = Range("K" & 19 + i)

  3. #3
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Août 2015
    Messages
    43
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2015
    Messages : 43
    Par défaut
    En effet, cela fonctionne. J'étais sur qu'il s'agissait d'une erreur bête..
    Merci de ton aide et bonne soirée !

  4. #4
    Membre Expert Avatar de Thautheme
    Homme Profil pro
    salarié
    Inscrit en
    Août 2014
    Messages
    1 373
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : salarié

    Informations forums :
    Inscription : Août 2014
    Messages : 1 373
    Par défaut
    Re,

    Oui Set et Range, heu pardon ! C'est étrange parfois le VBA...

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

Discussions similaires

  1. [VBA-E]transformer array en tableau type range
    Par matel dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 27/03/2006, 09h50
  2. Fonctions SQL - Tableau et type anyarray
    Par etiennegaloup dans le forum PostgreSQL
    Réponses: 3
    Dernier message: 07/11/2005, 12h25
  3. Trier un tableau de type défini par l'utilisateur
    Par nonaparus dans le forum VB 6 et antérieur
    Réponses: 1
    Dernier message: 24/10/2005, 21h11
  4. Initialisation d'un tableau de type STRUCT
    Par Axiome dans le forum MFC
    Réponses: 4
    Dernier message: 06/09/2005, 10h58
  5. [Debutant]reallocation de memoire d'un tableau de type perso
    Par killerjeff dans le forum Débuter
    Réponses: 3
    Dernier message: 04/08/2004, 17h09

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