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 :

Initialisation d'un tableau sans utilisation de boucle


Sujet :

Macros et VBA Excel

  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2014
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2014
    Messages : 28
    Par défaut Initialisation d'un tableau sans utilisation de boucle
    Bonjour à tous,

    Alors voilà je cherche un moyen d'initialiser une matrice avec la function array de la manière suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Dim MyArray() as variant
     
    MyArray= Array(Entier11,Chaine12,Num13;
                          Entier21,Chaine22,Num23;
                          ...
                          EntierN1,ChaineN2,NumN3)
    Les variables sont trop spécifiques pour pouvoir être remplies de manière automatique dans une boucle, mon but est de l'initialiser en une opération un peu comme sur des langages comme Python.

    Je sais que la méthode suivante fonctionne MyList = Array(Nom1,Nom2,Nom3) mais je ne parviens pas à trouver la syntaxe pour un tableau à plusieurs dimensions.

    J’espère avoir pu être suffisamment claire, je vous remercie par avance de votre aide.

    Cordialement Dude,

  2. #2
    Membre Expert Avatar de antonysansh
    Homme Profil pro
    Chargé d'études RH
    Inscrit en
    Mai 2014
    Messages
    1 115
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Chargé d'études RH
    Secteur : Finance

    Informations forums :
    Inscription : Mai 2014
    Messages : 1 115
    Par défaut
    Je ne pense pas qu'un Array puisse être multidimensionnel.

    Tu devrais trouver ton bonheur dans ce tuto : Utiliser les variables tableaux en VBA Excel


    Sinon si les données à mettre dans le tableau sont dans une plage d'une feuille, tu peux utiliser ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Sub Exemple()
        Dim rg As Range, t()
            Set rg = Range("A1:C3")
            t = rg
    fin:
        Set rg = Nothing
    End Sub

  3. #3
    Expert confirmé

    Homme Profil pro
    Curieux
    Inscrit en
    Juillet 2012
    Messages
    5 169
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Curieux
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juillet 2012
    Messages : 5 169
    Billets dans le blog
    5
    Par défaut
    Bonjour

    Système D !

    stockage de arrays dans un array

    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
    Sub SystemeD()
    Dim Tabl()
    Dim Dim1 As Long
    Dim Dim2 As Long
    Tabl = Array( _
                 Array(1, 2, "toto", #1/1/2016#), _
                 Array("dim 2", 4, 6))
     
    For Dimension1 = LBound(Tabl) To UBound(Tabl)
        For Dim2 = LBound(Tabl(Dim1)) To UBound(Tabl(Dim1))
            Debug.Print Tabl(Dim1)(Dim2)
        Next Dim2
    Next Dim1
     
    End Sub

  4. #4
    Expert confirmé
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    3 453
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 3 453
    Par défaut
    Bonjour,

    Puisque tu veux utiliser un ou des Array(), c'est que tu en connais les bornes. Dans ce cas, tu peux utiliser un tableau à deux dimensions :
    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
     
    Sub Test()
     
        Dim Tbl()
     
        ReDim Tbl(1 To 3, 1 To 5)
     
        '1ère ligne du tableau
        Tbl(1, 1) = "Nom 1"
        Tbl(1, 2) = "Prénom 1"
        Tbl(1, 3) = 10
        Tbl(1, 4) = 12
        Tbl(1, 5) = 14
     
        '2ème ligne
        Tbl(2, 1) = "Nom 2"
        Tbl(2, 2) = "Prénom 2"
        Tbl(2, 3) = 16
        Tbl(2, 4) = 18
        Tbl(2, 5) = 20
     
        'et 3ème ligne
        Tbl(3, 1) = "Nom 3"
        Tbl(3, 2) = "Prénom 3"
        Tbl(3, 3) = 22
        Tbl(3, 4) = 24
        Tbl(3, 5) = 26
     
        'dans la feuille de A1 à E3 pour se représenter plus facilement à quoi resemble le tableau
        Range(Cells(1, 1), Cells(UBound(Tbl, 1), UBound(Tbl, 2))) = Tbl
     
    End Sub

  5. #5
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 374
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 374
    Billets dans le blog
    8
    Par défaut re
    Bonjour
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Sub test3()
    Dim tablo(2)
    tablo(0) = Array(1, 2, 3, 4, 5, 6, 7, 8, 9)
    tablo(1) = Array(10, 20, 30, 40, 50, 60, 70, 80, 90)
    MsgBox tablo(0)(2)
    MsgBox tablo(1)(2)
    End Sub
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

  6. #6
    Expert confirmé

    Homme Profil pro
    Curieux
    Inscrit en
    Juillet 2012
    Messages
    5 169
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Curieux
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juillet 2012
    Messages : 5 169
    Billets dans le blog
    5
    Par défaut
    ah non Patrick !!

    t'es malade aujourd'hui ? Je m'inquiète

    t'as utilisé deux lignes de codes là où j'en utilise une que j'ai juste aéré pour un confort de lecture.

    c'est moi qui pond les merdes et toi qui fait les miracles normalement

    qu'est-ce qu'il se passe ??


    Ps : je te vois venir, ne pense même pas à regrouper tes deux lignes avec un ":"

  7. #7
    Expert éminent
    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
    Par défaut Rhôoooo ‼

    Bonjour, bonjour !

    Citation Envoyé par dude91820 Voir le message
    Dim MyArray() as variant

    MyArray= Array(Entier11,Chaine12,Num13;
    Entier21,Chaine22,Num23; ...
    En reprenant le B-A-BA d'Excel pour écrire une matrice : MyArray = [{1,"A",11;2,"B",22;3,"C",33}]

    En profiter au passage pour consulter l'aide VBA interne de la méthode Evaluate !

    Voilà, voilà !

    ______________________________________________________________________________________________________

    Merci de cliquer sur pour chaque message ayant aidé puis sur pour clore cette discussion …

    ______________________________________________________________________________________________________
    Je suis Paris, Charlie, Bruxelles, …

  8. #8
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 374
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 374
    Billets dans le blog
    8
    Par défaut re
    re
    cela me rappelle une discussion hein!! marc hihihi création d'un tableau en string le point virgule (sacré point virgule )

    dans ta face joe !!!!!

    nan!! j'ai séparé pour une accessibilité plus facile dans le code
    et peut être même modifier le tbl partout dans un module en public
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

  9. #9
    Expert éminent
    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
    Par défaut
    Citation Envoyé par patricktoulon Voir le message
    cela me rappelle une discussion hein!! marc hihihi création d'un tableau en string le point virgule (sacré point virgule)
    Justement j'y pensais ! Si tu retrouves ta discussion, met un lien vers le début de mon intervention
    car cela pourrait aider le dude91820 et ses variables !

  10. #10
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2014
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2014
    Messages : 28
    Par défaut
    Re,

    Merci à tous pour vos réponses, grâce à vous j'ai les solutions qu'il me fallait !
    Bonne soirée à tous.

    Cdlt Dude,

  11. #11
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 374
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 374
    Billets dans le blog
    8
    Par défaut re
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

  12. #12
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2014
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2014
    Messages : 28
    Par défaut
    Bonsoir à tous,

    Je me permet de reposer une petite question semblable sur ce fil de discussion.
    Je cherche une méthode pour stocker dans des vecteurs à n lignes certaines colonnes d'une matrice à n lignes, k colonnes sans passer par une boucle.
    Pour donner une idée :

    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
     
    Sub ArrayToVector()
        Dim xVector(), xArray() As Variant
        Dim n, k As Integer
        'Initialization
        n = 10
        k = 5
        ReDim xVector(n)
        ReDim xArray(n, k)
     
        'Remplit le tableau avec des valeurs random
        For i = 0 To 5
            For j = 0 To 0
                xArray = i + j
            Next j
        Next i
     
        'Ce que j'aimerais pouvoir faire :
        xVector(0 To 10)= xArray(0 to 10, k)
    End Sub
    Merci encore pour votre aide, celle-ci est grandement appréciée.
    Cdlt Dude,

  13. #13
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 374
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 374
    Billets dans le blog
    8
    Par défaut re
    bonsoir
    je crois que tu n'a rien compris dans les variable tableau
    avant de te lancer dans la conceptualisation fait un petit tour chez mr boisgontier jacque pour apprendre comment on déclare dimensionne, et surtout comment on se sert de ce genre de variable

    ensuite cherche la définition de Random dans vba plus précisément randomize ou rnd

    quand tu aura compris tout ca alors on pourra t'aider
    en l'état actuel ton petit exemple de code n'a ni queue ni tète c'est tout bonnement incompréhensible et faux surtout

    tu dimensionne xarray en 2 dim puis tu le manipule en string enfin bref tu es vraiment a coté. bref en moins de 10 ligne j'ai perdu mon latin bravo pour ca
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

  14. #14
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2014
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2014
    Messages : 28
    Par défaut
    Re,
    Quelques points explicatifs:

    ensuite cherche la définition de Random dans vba plus précisément randomize ou rnd
    Bon déjà random c'est une manière de parler pour dire que les valeurs entrées importe peu, en gros par la j’entends qu'il ne faut pas trop s'attarder sur le contenu des variables..

    tu dimensionne xarray en 2 dim puis tu le manipule en string enfin bref tu es vraiment a coté. bref en moins de 10 ligne j'ai perdu mon latin bravo pour ca
    Ensuite quand j'écris
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    xVector(0 To 10)= xArray(0 to 10, k)
    je cherche à stocker les dans les n lignes de mon vecteur les n valeurs de la colonne k.
    Je suis conscient que la syntaxe utilisée Vec(i to j) = Mat(i to j, k) n'existe pas, l'objet de ma question justement de savoir si cela est possible..

    De plus si dans mon code 0 to 10 avait été une chaine de caractère j'aurais mit "0 to 10" avec les guillemets
    Et pour finir mon tableau est déclaré "As Variant" donc j'aurais pu stocker des chaines de caractères.

    Voilà voilà ma question n'était peut être pas clairement énoncée mais il ne faut pas s'emporter pour autant.

  15. #15
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 374
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 374
    Billets dans le blog
    8
    Par défaut re
    oulah!!!
    c'est pire
    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 ArrayToVector()
        Dim xVector(), xArray() As Variant
        Dim n, k As Integer
        'Initialization
        n = 10
        k = 5
        ReDim xVector(n)
        ReDim xArray(n, k)
     
        'Remplit le tableau avec des valeurs random
        For i = 0 To 5
            For j = 0 To 0
                xArray = i + j 'ici xarray s'incrémente avec i+j en aucun cas la colonne est respecté surtout que ton array est déjà dimensionné 10 ligne 5 colonne avec "ReDim xArray(n, k)" donc tu peut pas comme ca plante 
            Next j
        Next i
     
        'Ce que j'aimerais pouvoir faire :
        xVector(0 To 10)= xArray(0 to 10, k)'ensuite ici k fait 5 donc plantage puisque un tableau de 5 colonne le dernier index est 4 soit 0.1.2.3.4 le zero étant le premier item
    'selon to écriture on pourrais lire 
    xVector(0 To 10)= xArray(0 to 10,5) 'a quoi te sert les 4 autre colonne de xarray tu peut me le dire?
    End Sub
    
    c'est un peu comme si tu essaiais de mettre un cube dans un trou rond

    non je réitère mes conseils
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

  16. #16
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2014
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2014
    Messages : 28
    Par défaut
    J'ai rédigé cette procédure à la va vite pour illustrer ma question, je ne comptais pas l'éxécuter anyway.
    Je corrige en gras les principales erreurs que j'ai commises:

    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
    Sub ArrayToVector()
        Dim xVector(), xArray() As Variant
        Dim n, k As Integer
        'Initialization
        n = 10
        k = 5
        ReDim xVector(n)
        ReDim xArray(n, k)
     
        'Remplit le tableau avec des valeurs random
        For i = 0 To 10
            For j = 0 To 5
                xArray(i,j) = i + j  'Je n'avais pas précisé les indices lors de l'initialisation 
            Next j
        Next i
     
        'Ce que j'aimerais pouvoir faire :
        xVector(0 To 10)= xArray(0 to 10,k)
    
    End Sub
    c'est un peu comme si tu essaiais de mettre un cube dans un trou rond
    Pas vraiment, techniquement mon tableau est constitué de k colonnes de n lignes et je veux stocker une de ces colonnes dans un vecteur de n lignes.
    xVector(0 To 10)= xArray(0 to 10,5) 'a quoi te sert les 4 autre colonne de xarray tu peut me le dire?
    Comme je l'ai indiqué ce morceau de code sert à illustrer mon problème et rien d'autre. Dans la réalité je cherche juste à extraire ces colonnes pour pouvoir les passer en argument sous forme de vecteur dans une fonction qui effectue une interpolation à partir de 2 vecteurs issus de deux tableaux distincts mais dont le nombre de ligne est identique.

    'ensuite ici k fait 5 donc plantage puisque un tableau de 5 colonne le dernier index est 4 soit 0.1.2.3.4 le zero étant le premier item
    C'est faux le dernier index est 5 soit 0 1 2 3 4 5 => 6 colonnes

  17. #17
    Membre Expert
    Profil pro
    Inscrit en
    Février 2007
    Messages
    2 266
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 2 266
    Par défaut
    Bonjour à tous,

    Pour répondre à la question initiale, si j'ai bien compris :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    Type mon_type
        entier As Long
        chaine As String
        num As Double
        tabl(1 To 10) As Long
    End Type
     
    Sub test()
        Dim mon_tableau(1 To 10) As mon_type
        mon_tableau(1).chaine = "bonjour"
        Debug.Print mon_tableau(1).chaine
        mon_tableau(1).tabl(3) = 5
        Debug.Print mon_tableau(1).tabl(3)
    End Sub
    eric

  18. #18
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2014
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2014
    Messages : 28
    Par défaut
    Merci mais ce n'est pas exactement ce que je recherche, voici une procédure commentée pour bien expliquer ma demande :

    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
    Sub test1()
        Dim Vecteur(), Tableau As Variant
        Dim L, C As Integer
     
        L = 8
        C = 4
     
        ReDim Vecteur(L)
        ReDim Tableau(L, C)
     
        For C = 0 To 4
            For L = 0 To 8
            Tableau(L, C) = 2 * L
            Next L
        Next C
     
        'Imaginons que je veuille récupérer les 9 lignes de la colonne C = 2 de mon tableau
     
     
        For L = 0 To 8
            Vecteur(L) = Tableau(L, 2)
        Next L
        'Je cherche à réaliser l'opération ci-dessus sans utilisation de boucle
        'Il y a t'il un moyen d'affecter plusieurs lignes d'un coup avec une ligne du style : Vecteur(Lbound(Vecteur) to Ubound(Vecteur)) = Tableau(Lbound(Vecteur) to Ubound(Vecteur),2)
     
    End Sub

  19. #19
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 374
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 374
    Billets dans le blog
    8
    Par défaut re
    bonjour
    non je ne crois pas sans boucle car tu travaille avec 2 tableau de démentions différentes
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

  20. #20
    Membre Expert
    Inscrit en
    Octobre 2010
    Messages
    1 401
    Détails du profil
    Informations forums :
    Inscription : Octobre 2010
    Messages : 1 401
    Par défaut
    Bonjour.

    Application.WorksheetFunction.Index le permet.

    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
    Sub tt()
     
     Tableau = Range("A1:C15").Value
     
     'Récupérer la colonne 3
     Vecteur = Application.WorksheetFunction.Index(Tableau, 0, 3)
     
     Cells(1, 4).Resize(UBound(Vecteur, 1), UBound(Vecteur, 2)).FormulaLocal = Vecteur
     
     'Récupérer la ligne 3
     Vecteur = Application.WorksheetFunction.Index(Tableau, 3, 0)
     
     Cells(1, 5).Resize(, UBound(Vecteur, 1)).FormulaLocal = Vecteur
     
    End Sub

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. Réponses: 15
    Dernier message: 18/04/2016, 17h12
  2. Réponses: 7
    Dernier message: 17/10/2013, 22h54
  3. [MySQL] Obtenir un tableau sans utiliser GROUP_CONCAT
    Par dedis dans le forum PHP & Base de données
    Réponses: 12
    Dernier message: 11/04/2011, 19h03
  4. Decimal -> Binaire (sans utiliser de tableau)
    Par Sandro Munda dans le forum C
    Réponses: 3
    Dernier message: 14/10/2006, 18h09
  5. conversion binaire-décimal sans utiliser le tableau
    Par ahmed doua dans le forum Algorithmes et structures de données
    Réponses: 13
    Dernier message: 13/03/2006, 10h54

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