Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2010 remplir un tableau

roro69

XLDnaute Impliqué
Bonjour et merci d’avance pour le temps consacré et l’aide apporté.

Voilà mon problème :

Dans la boucle ci-dessous je récupère des informations que j’exporte dans ma feuille ; ceci ligne par ligne.
Code:
 Dim col As Integer = 2
        Dim ligne As Integer = 3
        For i As Integer = 1 To folds.Length - 1
            If folds(i).a = folds(i - 1).a Then
                col = col + 2
            Else
                col = 2
                ligne += 1
            End If
            worksheet.Cells(ligne, 1) = i
            worksheet.Cells(ligne, col) = folds(i).b
            worksheet.Cells(ligne, col + 1) = folds(i).c
        Next
Le problème que j’ai et que ceci est fort long.

J’aimerais savoir si il est possible de passer par un tableau et le transposer dans la feuille.

Un grand merci pour vos réponses
 

roro69

XLDnaute Impliqué
bonsoir
je ne pense pas qu'un fichier soit utile ; je souhaiterais simplement mettre dans un tableau à deux dimensions les données suivantes
Code:
            worksheet.Cells(ligne, 1) = i
            worksheet.Cells(ligne, col) = folds(i).b
            worksheet.Cells(ligne, col + 1) = folds(i).c
les données en colonnes sont variantes
je connais le nombre de ligne à extraire
en rediimensionnant les colonnes du tableau
Merci pour votre aide
 

Staple1600

XLDnaute Barbatruc
Bonsoir le fil, le forum

@roro69
Tout comme gosselien, je pense qu'un fichier serait utile car je n'ai jamais lu dans du VBA natif, ce genre de code:
For i As Integer = 1 To folds.Length - 1
If folds(i).a = folds(i - 1).a Then
col = col + 2
Else
 

Yurperqod

XLDnaute Occasionnel
Bonjour à tous

roro69
Le code dans ton classeur n'est pas celui que tu as mis dans le premier message.
Tu peux mettre les données en seule fois dans le tableau
VB:
Sub MacroTableau()
Dim montablo
montablo = Range("A1").CurrentRegion.Value
MsgBox montablo(2, 1)
MsgBox montablo(2, 2)
MsgBox montablo(3, 3)
End Sub
 

roro69

XLDnaute Impliqué
Bonjour yuperqod
Merci pour ta réponse ; pour montablo pas de problème mais ma question porte plus sur cette pArti du code:
VB:
  F4.Cells(ligne, 1) = lignec 'F4 CORRESPOND AU NOM DE FEUILLE
            F4.Cells(ligne, col) = montablo(i, 2)
            F4.Cells(ligne, col + 1) = montablo(i, 3)
Serait -t'il possible de passer par un autre tableau au lieu d'écrire cellule par cellule car dans le classeur ci joint la réalisation est rapide ; mais dans le classeur réel ou beaucoup plus de ligne le temps de réalisations est un peu long.

Merci pour votre aide et le temps consacré.
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…