Re : Chiffre en format texte
Resalut,
Merci pour vos réponses.
La fonction =val(macellule) à l'air de fonctionner.
Toutefois, le résultat de ma macro lui n'est pas probant.
En fait, le but est de vérifier si certains articles d'interets vont être fabriqués sur des lignes de production.
Le planning des lignes de production est généré automatiquement en format Excel.
Le numéro du produit fabriqué se trouve dans la colonne J.
Dans mon fichier initial, j'ai la liste de tous les produits pouvant être fabriqués (chaque numéro de produit se trouve dans la colonne A).
Régulièrement, j'ai besoin de savoir si certains de ces produits vont être fabriqués.
Donc dans la colonne C de mon fichier initial, je tape "a commander".
Le but de la macro est donc que dans le fichier initial, il repère les produits dont j'ai besoin et qu'ensuite, il aille consulter la feuille du planning pour voir si leur production est prévue. Et si c'est le cas, qu'il me ramène l'information dans le fichier initial.
Volia mon code, mais ça ne marche pas. Apparement, il décroche dès qu'il a trouvé un et un seul produit qui va être fabriqué.
Sub ControleDuPlanningDUneLigne()
Dim NumeroDeVrac, NumeroAProduire, LigneDInteretDuPlanning
Dim i, j, k
Dim l, m
Dim Contenu
' *****************************************************************************************
' Conversion du format des numéros pour avoir le même format que dans le fichier initial
Windows("Worksheet in Basis (1)").Activate
Sheets("Sheet1").Select
For l = 1 To 200
Range("J" & l).Select
Contenu = Range("J" & l)
Contenu = Val(Contenu)
Range("J" & l) = Contenu
Next l
' *****************************************************************************************
' *****************************************************************************************
' Conversion du format des numéros pour avoir le même format que dans la base de donné
Windows("Controle hebdomadaire des lignes.xls").Activate
Sheets("vrac").Select
For m = 2 To 200
Range("A" & m).Select
Contenu = Range("A" & m)
Contenu = Val(Contenu)
Range("A" & m) = Contenu
Next m
' *****************************************************************************************
' Va chercher dans le fichier initial les numéros qui n'ont pas encore été commandés
' For i = 2 To 100 ' à changer quand la macro fonctionnera
For i = 2 To 5
If Range("C" & i) = "a commander" Then ' condition pour qu'il recherche CE numéro
NumeroDeVrac = Range("A" & i)
Windows("Worksheet in Basis (1)").Activate ' part dans la base de donné voir si ce numéro sera produit
Sheets("Sheet1").Select
' For j = 2 To 300 ' à changer quand la macro fonctionnera
For j = 2 To 20 ' Scanne la colonne J de la base de donné pour voir s'il y retrouve LE numéro d'intéret
NumeroAProduire = Range("J" & j)
If NumeroAProduire = NumeroDeVrac Then ' S'il a trouvé que Le numéro d'intéret allait être produit
LigneDInteretDuPlanning = Range("A" & j & ":" & "L" & j) ' il copie la ligne
Windows("Controle hebdomadaire des lignes.xls").Activate 'il revient dansle fichier initial
Sheets("Resultat").Select
For k = 2 To 200 'il cherche une ligne de vide dans la fichier initial
If Range("A" & k) = "" Then
Range("A" & k & ":" & "L" & k) = LigneDInteretDuPlanning
k = 200
End If
Next k
End If
Next j
End If
Next i
End Sub