Bonjour,
Dans le cadre d'une préparation importation, je dois récuperer dans un classeur 1 un champ numérique et le convertir dans mon classeur B en champ texte
Il s'agit dans le classeur A d'un nombre compris entre 1 et 999 et dans le classeur B, il doit abolument se présenter sous une forme a 3 chiffres (001 au lieu de 1)
Pour le moment j'ai ca en code :
Le test pour savoir si j'ajoute un 0, deux 0 ou aucun est bon.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 If Workbooks(classeursup).Sheets(j).Cells(lgn, col) < 10 Then Workbooks(classeuract).Sheets(1).Cells(k, 9) = "00" & CStr(Workbooks(classeursup).Sheets(j).Cells(lgn, col)) Else If Workbooks(classeursup).Sheets(j).Cells(lgn, col) < 100 Then Workbooks(classeuract).Sheets(1).Cells(k, 9) = "0" & CStr(Workbooks(classeursup).Sheets(j).Cells(lgn, col)) Else Workbooks(classeuract).Sheets(1).Cells(k, 9) = Workbooks(classeursup).Sheets(j).Cells(lgn, col) End If End If
les variables sont bonnes aussi
Le probleme est la partie
je pensais que CStr convertissait en chaine de caractere, mais apparement, quand au moment de mettre dans la cellule, il constate que je veux lui faire inscrire "004", il se dit "oh mais c'est un nombre ca, écrivons plutot un joli 4"
Code : Sélectionner tout - Visualiser dans une fenêtre à part = "00" & CStr(Workbooks(classeursup).Sheets(j).Cells(lgn, col))
Comment est-ce que je peux faire pour le convaincre de ne pas me convertir ma chaine de caractere en nombre?
Partager