Bonjour,
Je dois faire la migration d'un script vba en shell unix.
L'objectif est de construire un fichier csv à partir de données brutes.
Dans ce fichier je dois remplir un champs (nombre de mouvements) en fonction du champ contrat.
En gros le champ Nombre de mouvement est égal à 0 sauf s'il ya doublons de contrat ID et dans ce cas le dernier doublons prend la valeur 1 et les champs précèdents ont la valeur 0
Exemple:
Contrat;Nombre de mouvements
12;1
45;0
45;1
78;0
78;0
78;1
52;1
47;0
47;1
J'ai essayé de faire ça en shell avec un tableau mais j'ai des problèmes sur la limite du tableau 1024 alors que j'ai plus de 8000 lignes.
tab: subscript out of range
Quelqu'un aurait il une idée sur comment je pourrai faire ca sans passer par les tableaux. Merci de votre aide
Voici l'équivalence en vba
1 2 3 4 5 6
| 'Nombre de mouvements
Nb_Colonnes = Nb_Colonnes + 1
If (Donnees(Nb_Lignes, 2) = Donnees(Nb_Lignes - 1, 2) And Nb_Lignes > 2) Then
Donnees(Nb_Lignes - 1, Nb_Colonnes) = 0
ElseIf (Nb_Lignes > 2) Then
Donnees(Nb_Lignes - 1, Nb_Colonnes) = 1 |
Partager