Bonjour à tous,
Je bosse actuellement sur VBA, je débute.
J'ai un fichier de plusieurs dizaines de colonnes et des milliers de lignes, et j'ai un fichier de ce type :
A | Journée | Nb.Jours | Freq
## | ###### | 2 | 1_____7
## | ###### | 3 | _23__6_
La colonne "Freq" indique quels jours de la semaine l'évènement A se produit. Cette colonne est toujours au même format : chaque chiffre correspond au jour de la semaine correspondant, et un "_" signifie que cet evenement ne se produit pas ce jour. Un évènement se produit toujours au moins une fois par semaine, donc la cellule "_______" n'existe pas dans mon tableau.
La colonne "NB.Jours" est une colonne pour laquelle j'ai créé une macro qui copie la ligne le nombre de jours auxquels l'évènement A se produit (en comptant le nombre de chiffres de la cellule Freq). Donc, s'il y a deux chiffres dans la cellule freq, alors cette ligne se copiera 2 fois.
Cependant, j'aimerais ajouter à ma macro une fonctionnalité : pour chaque ligne dupliquée, le jour correspondant serait également automatiquement renseigné.
Je m'explique : si on a une Freq qui est : 1____6_, alors on aura Nb.Jours qui vaudra 2, donc la ligne se dupliquera une fois (pour avoir deux lignes), et je veux que dans la premiere ligne, dans la case journée, il y ait "1" et dans la deuxieme, dans la case journée, il y ait"6".
Chaque ligne doit donc renvoyer la valeur d'un chiffre présent dans la colonne "Freq".
Cela doit s'appliquer a toutes les lignes de mon tableau (plus de 6000)
Pour résumer, j'aimerais obtenir ça :
j'ai déja fait le programme pour compter le nombre de jours, pour dupliquer en fonction du nombre de jours, mais il ne me reste plus qu'a remplir les jours.
Je suis débutant sur VBA donc je galère un petit peu, mais j'imagine que c'est faisable.
J'avais commencé un bout de code avec une double boucle for, mais j'ai à chaque fois une erreur différente, je ne pense pas que cela vous avance beaucoup.
Merci à tous pour votre aide !
Je bosse actuellement sur VBA, je débute.
J'ai un fichier de plusieurs dizaines de colonnes et des milliers de lignes, et j'ai un fichier de ce type :
A | Journée | Nb.Jours | Freq
## | ###### | 2 | 1_____7
## | ###### | 3 | _23__6_
La colonne "Freq" indique quels jours de la semaine l'évènement A se produit. Cette colonne est toujours au même format : chaque chiffre correspond au jour de la semaine correspondant, et un "_" signifie que cet evenement ne se produit pas ce jour. Un évènement se produit toujours au moins une fois par semaine, donc la cellule "_______" n'existe pas dans mon tableau.
La colonne "NB.Jours" est une colonne pour laquelle j'ai créé une macro qui copie la ligne le nombre de jours auxquels l'évènement A se produit (en comptant le nombre de chiffres de la cellule Freq). Donc, s'il y a deux chiffres dans la cellule freq, alors cette ligne se copiera 2 fois.
Cependant, j'aimerais ajouter à ma macro une fonctionnalité : pour chaque ligne dupliquée, le jour correspondant serait également automatiquement renseigné.
Je m'explique : si on a une Freq qui est : 1____6_, alors on aura Nb.Jours qui vaudra 2, donc la ligne se dupliquera une fois (pour avoir deux lignes), et je veux que dans la premiere ligne, dans la case journée, il y ait "1" et dans la deuxieme, dans la case journée, il y ait"6".
Chaque ligne doit donc renvoyer la valeur d'un chiffre présent dans la colonne "Freq".
Cela doit s'appliquer a toutes les lignes de mon tableau (plus de 6000)
Pour résumer, j'aimerais obtenir ça :
j'ai déja fait le programme pour compter le nombre de jours, pour dupliquer en fonction du nombre de jours, mais il ne me reste plus qu'a remplir les jours.
Je suis débutant sur VBA donc je galère un petit peu, mais j'imagine que c'est faisable.
J'avais commencé un bout de code avec une double boucle for, mais j'ai à chaque fois une erreur différente, je ne pense pas que cela vous avance beaucoup.
Merci à tous pour votre aide !