Vba copier les données d'un array à un autre
Fermé
Arthyss
Messages postés
22
Date d'inscription
mercredi 22 mars 2017
Statut
Membre
Dernière intervention
28 avril 2017
-
27 avril 2017 à 15:52
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 - 28 avril 2017 à 10:08
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 - 28 avril 2017 à 10:08
A voir également:
- Vba copier les données d'un array à un autre
- Copier une vidéo youtube - Guide
- Super copier - Télécharger - Gestion de fichiers
- Effacer les données de navigation - Guide
- Copier un disque dur - Guide
- Copier texte pdf - Guide
3 réponses
f894009
Messages postés
17205
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
19 octobre 2024
1 709
27 avril 2017 à 16:36
27 avril 2017 à 16:36
Bonjour,
Mais j'ai un message d'erreur :(
Certes, mais lequel et a quelle ligne ?
Mais j'ai un message d'erreur :(
Certes, mais lequel et a quelle ligne ?
michel_m
Messages postés
16603
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2023
3 310
27 avril 2017 à 16:36
27 avril 2017 à 16:36
Bonjjour
comme tu veux un tableau tampon rempli avec les conditions <>22 <>1
on incrémente que dans ce cas
mais je n'ai pas vu la déclaration des dimensions du tableau tampon
comme tu veux un tableau tampon rempli avec les conditions <>22 <>1
on incrémente que dans ce cas
'Ligne_Tableau_Tampon = 1 INUTILe
'Colonne_Tableau_Tampon = 1 INUTILE
For lig_traquee = 1 To nblig_tab
For col_traquee = 1 To nbcol_tab
'On regarque pour chaque ligne du tableau fictif si l'article vaut 1 ou 22
If (Tableau(lig_traquee, 14) <> 22) Or (Tableau(lig_traquee, 14) <> 1) Then
Ligne_Tableau_Tampon = Ligne_Tableau_Tampon + 1
Colonne_Tableau_Tampon = Colonne_Tableau_Tampon + 1
Tableau_Tampon(Ligne_Tableau_Tampon, Colonne_Tableau_Tampon) = _
Tableau(lig_traquee, col_traquee) 'copier les lignes "bonnes" dans le nouveau tableau
End If
Colonne_Tableau_Tampon = Colonne_Tableau_Tampon + 1
Next
mais je n'ai pas vu la déclaration des dimensions du tableau tampon
Arthyss
Messages postés
22
Date d'inscription
mercredi 22 mars 2017
Statut
Membre
Dernière intervention
28 avril 2017
5
Modifié le 28 avril 2017 à 10:08
Modifié le 28 avril 2017 à 10:08
Bonjour Michel
N'ayant pas fais de cours sur les array et un accès internet très limité j'ai un peu de mal.. j'ai essayé en ajoutant une ligne à ton code, mais tjrs le même problème :(
N'ayant pas fais de cours sur les array et un accès internet très limité j'ai un peu de mal.. j'ai essayé en ajoutant une ligne à ton code, mais tjrs le même problème :(
For lig_traquee = 1 To nblig_tab For col_traquee = 1 To nbcol_tab 'On regarque pour chaque ligne du tableau fictif si l'article vaut 1 ou 22 If (Tableau(lig_traquee, 14) <> 22) Or (Tableau(lig_traquee, 14) <> 1) Then Ligne_Tableau_Tampon = Ligne_Tableau_Tampon + 1 Colonne_Tableau_Tampon = Colonne_Tableau_Tampon + 1 ReDim Tableau(1 To Ligne_Tableau_Tampon, 1 To Colonne_Tableau_Tampon) Tableau_Tampon(Ligne_Tableau_Tampon, Colonne_Tableau_Tampon) = _ Tableau(lig_traquee, col_traquee) 'copier les lignes "bonnes" dans le nouveau tableau End If Colonne_Tableau_Tampon = Colonne_Tableau_Tampon + 1 Next Next
michel_m
Messages postés
16603
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2023
3 310
Modifié le 28 avril 2017 à 10:17
Modifié le 28 avril 2017 à 10:17
Bonjour,
Je m'aperçois que tu sembles ne pas avoir lu mon code concernant l'incrémentation....
pour déclarer tableau tampon , le plus simple pour toi est de le déclarer de la même taille que le tableau. sur la feuille 1 de reception prévoir de la place en dessous de la restitution...
autrement, mais plus compliqué, (avec une limite de lignes < 65537) pour déclarer un tableau dynamique voir
https://silkyroad.developpez.com/vba/tableaux/
Pour l'anecdote:
-un "Array" ne comporte qu'une dimension
- chaque variable doit ^tre déclarée par son type et non une seule fois à la fin de la ligne
Dim nblig_tab as long, nbcol_tab as long etc.
Long indique que tu as plus de 65536 lignes
Michel
Je m'aperçois que tu sembles ne pas avoir lu mon code concernant l'incrémentation....
pour déclarer tableau tampon , le plus simple pour toi est de le déclarer de la même taille que le tableau. sur la feuille 1 de reception prévoir de la place en dessous de la restitution...
autrement, mais plus compliqué, (avec une limite de lignes < 65537) pour déclarer un tableau dynamique voir
https://silkyroad.developpez.com/vba/tableaux/
Pour l'anecdote:
-un "Array" ne comporte qu'une dimension
- chaque variable doit ^tre déclarée par son type et non une seule fois à la fin de la ligne
Dim nblig_tab as long, nbcol_tab as long etc.
Long indique que tu as plus de 65536 lignes
Michel
Modifié le 28 avril 2017 à 09:41
Dans la partie " CORRIGER DONNEES " quand j'essais d'envoyer les données de mon 1er tableau au 2nd