Bonjour à tous,
Dans le cadre de mon travail, je suis amené à exploiter un fichier de données quotidiennement. J'extraie des valeurs (OK/PAS OK/"") que je converti en conforme/non conforme que je stocke dans une base de données pour conserver un petit historique des jours précédents.
Actuellement, mon code très moche est construit sur ce modèle. J'utilise des active/select, ce qui alourdit le procédé, sachant que j'ai 150 points à parcourir. J'utilise cette méthode car mon fichier d'origine change d'un jour à l'autre. A chaque fois qu'un relevé PAS OK est fait, j'ai une ligne qui s'intercalle avec le format classique pour expliqué la non conformité. Je n'ai pas à traiter ces lignes intermédiaires dans ma base, mais je cherche à expliquer par là pourquoi je ne fais pas des copies directes d'une cellule à l'autre.
Mon principal souci se passe au niveau du décalage de colonne entre mes différents points. La ligne de recopie (ligne active dans le programme) est déterminée par une variable NumLigneBDD que j'ai défini au préalable.
Voilà, si vous avez des pistes pour m'aider à avancer, je suis preneur. Sinon, je continuerai ainsi, sachant que ca marche bien même avec une brouette pour PC
Dans le cadre de mon travail, je suis amené à exploiter un fichier de données quotidiennement. J'extraie des valeurs (OK/PAS OK/"") que je converti en conforme/non conforme que je stocke dans une base de données pour conserver un petit historique des jours précédents.
Actuellement, mon code très moche est construit sur ce modèle. J'utilise des active/select, ce qui alourdit le procédé, sachant que j'ai 150 points à parcourir. J'utilise cette méthode car mon fichier d'origine change d'un jour à l'autre. A chaque fois qu'un relevé PAS OK est fait, j'ai une ligne qui s'intercalle avec le format classique pour expliqué la non conformité. Je n'ai pas à traiter ces lignes intermédiaires dans ma base, mais je cherche à expliquer par là pourquoi je ne fais pas des copies directes d'une cellule à l'autre.
Mon principal souci se passe au niveau du décalage de colonne entre mes différents points. La ligne de recopie (ligne active dans le programme) est déterminée par une variable NumLigneBDD que j'ai défini au préalable.
Code:
Workbooks("ronde Four").Activate
Range("A6").Activate
col = 3
'Cloches
'Niveau cloche équilibrage
While ActiveCell.Value <> "Niveau cloche équilibrage"
ActiveCell.Offset(1, 0).Select
Wend
valeur = ActiveCell.Value
ActiveCell.Offset(0, -2).Select
'Recopie des données
Select Case valeur
Case "OK"
valeur = "C"
Case "PAS OK"
valeur = "NC"
Case ""
valeur = "V"
End Select
Workbooks("BDD Four").Worksheets("Four BDD").Activate
ActiveCell.Offset(0, col).Value = valeur
Workbooks("ronde Four").Activate
col = col + 1
valeur = ""
'Niveau cloche régulation
While ActiveCell.Value <> "Niveau cloche régulation"
...