extraction

Le
nanou
bonjour et merci a ceux qui rpondent
j'ai une table produit avec un champ dsignation genre :
rond D=75,LG=4750 0/+200 qui veut dire une barre ronde de
diamtre 75 de longueur 4750 avec une tolrance de +-200
je peux avoir des diamtre de 150
je cherche extraire dans un champ le diamtre dans un
autre la longueur
1er pb la fonction Extracchane ou Mid ne fonctionne pas
pourtant il me semble que j'applique bien la formule
del'aide d'access
2me pb j'ai une table des poids : un rond de 75 pse 34
kgs au mtre
avez-vous compris ? je voudrais qu'ensuite elle aille
chercher le poids au mtre dans la table des poids
est-ce possible ? si oui assez simplement parce que moi y
en a parl l'access comme a
merci
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
www.eztree-msdn.com \(Laurent Jordi\)
Le #5020421
Salut

En fait c'est assez simple...

Dim t() as string

Private Sub Traitement
Dim D as string
Dim L as String
Dim MaCaine as string

MaChaine = 'récupération de la valeur

t = split(MaChaine ,",")
txtDiam = t(0)
txtLong = t(1)
end sub

@+
LJ
www.eztree-msnd.com


"nanou" news:1c86501c421e8$d6c74790$
bonjour et merci a ceux qui répondent
j'ai une table produit avec un champ désignation genre :
rond Du,LGG50 0/+200 qui veut dire une barre ronde de
diamètre 75 de longueur 4750 avec une tolérance de +-200
je peux avoir des diamètre de 150
je cherche à extraire dans un champ le diamètre dans un
autre la longueur
1er pb la fonction Extracchaîne ou Mid ne fonctionne pas
pourtant il me semble que j'applique bien la formule
del'aide d'access
2ème pb j'ai une table des poids : un rond de 75 pèse 34
kgs au mètre
avez-vous compris ? je voudrais qu'ensuite elle aille
chercher le poids au mètre dans la table des poids
est-ce possible ? si oui assez simplement parce que moi y
en a parlé l'access comme ça
merci
Raymond [mvp]
Le #5034901
Bonjour.

Je voudrais te poser une question préalable car ton souci ressemble fort au
problème des acièristes (distribution).
si je me souviens bien , ta désignation qui semble très structurée, n'est
pas toujours indiquée de cette façon ? il peut y avoir des espaces en plus,
la virgule inexistante, le signe = plus ou moins aléatoire etc... est-ce
bien ça ou cette codification est respectée à la lettre ?
de cela dépendra la méthode d'extraction.

Pour le poids.
Si tu as une table des poids spécifiques, cela veut dire que tu n'as pas
toujours la même matière. comment trouver la matière ? si tu n'as qu'une
seule matière (acier par exemple) compte tenu de la tolérance de longueur,
un poids spécifique moyen de 7.83 ou 7.85 peut faire l'affaire peut-être ?

--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"nanou" news:1c86501c421e8$d6c74790$
bonjour et merci a ceux qui répondent
j'ai une table produit avec un champ désignation genre :
rond Du,LGG50 0/+200 qui veut dire une barre ronde de
diamètre 75 de longueur 4750 avec une tolérance de +-200
je peux avoir des diamètre de 150
je cherche à extraire dans un champ le diamètre dans un
autre la longueur
1er pb la fonction Extracchaîne ou Mid ne fonctionne pas
pourtant il me semble que j'applique bien la formule
del'aide d'access
2ème pb j'ai une table des poids : un rond de 75 pèse 34
kgs au mètre
avez-vous compris ? je voudrais qu'ensuite elle aille
chercher le poids au mètre dans la table des poids
est-ce possible ? si oui assez simplement parce que moi y
en a parlé l'access comme ça
merci
nanou
Le #5034391
sympa de me répondre mais rien compris
je suis une vraie débutante
-----Message d'origine-----
Salut

En fait c'est assez simple...

Dim t() as string

Private Sub Traitement
Dim D as string
Dim L as String
Dim MaCaine as string

MaChaine = 'récupération de la valeur

t = split(MaChaine ,",")
txtDiam = t(0)
txtLong = t(1)
end sub

@+
LJ
www.eztree-msnd.com


"nanou" dans le message de

news:1c86501c421e8$d6c74790$
bonjour et merci a ceux qui répondent
j'ai une table produit avec un champ désignation genre :
rond Du,LGG50 0/+200 qui veut dire une barre ronde de
diamètre 75 de longueur 4750 avec une tolérance de +-200
je peux avoir des diamètre de 150
je cherche à extraire dans un champ le diamètre dans un
autre la longueur
1er pb la fonction Extracchaîne ou Mid ne fonctionne pas
pourtant il me semble que j'applique bien la formule
del'aide d'access
2ème pb j'ai une table des poids : un rond de 75 pèse 34
kgs au mètre
avez-vous compris ? je voudrais qu'ensuite elle aille
chercher le poids au mètre dans la table des poids
est-ce possible ? si oui assez simplement parce que moi y
en a parlé l'access comme ça
merci


.



nanou
Le #5034381
oui bien vu on stocke des aciers pour un transformeur
la désignation est bien structurée le code bien respecté
c'est en général la même matière sauf 3 références que 2
autres matières. Pour si peu de références,j'indiquerai
moi-même les poids, mais pour les ronds cela risque
d'être une peu long et surtout c'est la manipulation qui
m'interesse. Je voudrais savoir faire, sait-on jamais ?
merci en tout cas

-----Message d'origine-----
Bonjour.

Je voudrais te poser une question préalable car ton
souci ressemble fort au

problème des acièristes (distribution).
si je me souviens bien , ta désignation qui semble très
structurée, n'est

pas toujours indiquée de cette façon ? il peut y avoir
des espaces en plus,

la virgule inexistante, le signe = plus ou moins
aléatoire etc... est-ce

bien ça ou cette codification est respectée à la lettre ?
de cela dépendra la méthode d'extraction.

Pour le poids.
Si tu as une table des poids spécifiques, cela veut dire
que tu n'as pas

toujours la même matière. comment trouver la matière ?
si tu n'as qu'une

seule matière (acier par exemple) compte tenu de la
tolérance de longueur,

un poids spécifique moyen de 7.83 ou 7.85 peut faire
l'affaire peut-être ?


--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"nanou" dans le message de

news:1c86501c421e8$d6c74790$
bonjour et merci a ceux qui répondent
j'ai une table produit avec un champ désignation genre :
rond Du,LGG50 0/+200 qui veut dire une barre ronde de
diamètre 75 de longueur 4750 avec une tolérance de +-200
je peux avoir des diamètre de 150
je cherche à extraire dans un champ le diamètre dans un
autre la longueur
1er pb la fonction Extracchaîne ou Mid ne fonctionne pas
pourtant il me semble que j'applique bien la formule
del'aide d'access
2ème pb j'ai une table des poids : un rond de 75 pèse 34
kgs au mètre
avez-vous compris ? je voudrais qu'ensuite elle aille
chercher le poids au mètre dans la table des poids
est-ce possible ? si oui assez simplement parce que moi y
en a parlé l'access comme ça
merci


.



Raymond [mvp]
Le #5034281
Il me semblait bien.

dernière question avant que je te propose quelque chose.
ce n'est pas ta désignation qui est la clé primaire ?
dans ta table "Produits" (je ne prend que des exemples)
tu dois avoir des champs comme ceci:
- Numéro (référence produit) texte
- désignation (connu)
- TypeMatière (acier, acier inox, acier outils, bronze, laiton ....)

tu dois avoir une table "Matière" qui a les champs:
- RéférenceMatière (clé primaire) texte
- PoidsSpécifique numérique
la relation entre la table produits et la table Matière se fera par les
champs TypeMatière vers RéférenceMatière.
tu peux ainsi par requête avec tes deux tables, calculer le poids de tout
rondin ou carré.

pour l'extraction du diamètre et longueur, tu peux faire un fonction comme
"récupération" ci-dessous qui est appelée ici par un bouton pour l'exemple.
Me.Désignation est le controle formulaire contenant la désignation du
produit.

Dim Longueur As Long
Dim Diametre As Long

Private Sub Commande0_Click()
If Not récupération(Me.Désignation) Then
MsgBox "la désignation est inexploitable", vbCritical
Exit Sub
End If
MsgBox "Le rondin a un diamètre de " & Diametre & " et une longueur de "
& Longueur
End Sub

Public Function récupération(Désignation As String) As Boolean
On Error GoTo Erreur_R
récupération = False
Dim Tableau As Variant
Tableau = Split(Désignation, ",")
Diametre = Mid(Tableau(0), InStr(1, Tableau(0), "=") + 1)
Tableau(1) = Mid(Tableau(1), 1, InStr(1, Tableau(1), " "))
Longueur = Mid(Tableau(1), InStr(1, Tableau(1), "=") + 1)
récupération = True
If (Not IsNumeric(Diametre)) And (Not IsNumeric(Longueur)) Then GoTo
Erreur_R
Exit Function
Erreur_R:
récupération = False
End Function

il faudra ajuster tout ça à ton problème mais tu dois pouvoir avancer .
--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"nanou" news:1c7a501c42233$6c416cc0$
oui bien vu on stocke des aciers pour un transformeur
la désignation est bien structurée le code bien respecté
c'est en général la même matière sauf 3 références que 2
autres matières. Pour si peu de références,j'indiquerai
moi-même les poids, mais pour les ronds cela risque
d'être une peu long et surtout c'est la manipulation qui
m'interesse. Je voudrais savoir faire, sait-on jamais ?
merci en tout cas
nanou
Le #5034221
merci de penser à moi
j'ai une table produit avec comme champ : code matière
(clé primaire) désignation (le bla bla bla) dans lequel
se trouve le diamètre du rond dP ou 140 ou 250 que
j'aimerai bien extraire et le placer dans un champ que
j'appellerai valeur nature. d'autre part j'ai une table
des poids avec comme champ : le diamètre et le poids
puisque le poids varie selon le diamètre.

alors après j'essaierai de faire le lien je ne sais pas
encore trop comment mais bon on teste on teste on teste...

-----Message d'origine-----
Il me semblait bien.

dernière question avant que je te propose quelque chose.
ce n'est pas ta désignation qui est la clé primaire ?
dans ta table "Produits" (je ne prend que des exemples)
tu dois avoir des champs comme ceci:
- Numéro (référence produit) texte
- désignation (connu)
- TypeMatière (acier, acier inox, acier outils, bronze,
laiton ....)


tu dois avoir une table "Matière" qui a les champs:
- RéférenceMatière (clé primaire) texte
- PoidsSpécifique numérique
la relation entre la table produits et la table Matière
se fera par les

champs TypeMatière vers RéférenceMatière.
tu peux ainsi par requête avec tes deux tables, calculer
le poids de tout

rondin ou carré.

pour l'extraction du diamètre et longueur, tu peux faire
un fonction comme

"récupération" ci-dessous qui est appelée ici par un
bouton pour l'exemple.

Me.Désignation est le controle formulaire contenant la
désignation du

produit.

Dim Longueur As Long
Dim Diametre As Long

Private Sub Commande0_Click()
If Not récupération(Me.Désignation) Then
MsgBox "la désignation est inexploitable",
vbCritical

Exit Sub
End If
MsgBox "Le rondin a un diamètre de " & Diametre & "
et une longueur de "

& Longueur
End Sub

Public Function récupération(Désignation As String) As
Boolean

On Error GoTo Erreur_R
récupération = False
Dim Tableau As Variant
Tableau = Split(Désignation, ",")
Diametre = Mid(Tableau(0), InStr(1, Tableau(0), "=")
+ 1)

Tableau(1) = Mid(Tableau(1), 1, InStr(1, Tableau
(1), " "))

Longueur = Mid(Tableau(1), InStr(1, Tableau(1), "=")
+ 1)

récupération = True
If (Not IsNumeric(Diametre)) And (Not IsNumeric
(Longueur)) Then GoTo

Erreur_R
Exit Function
Erreur_R:
récupération = False
End Function

il faudra ajuster tout ça à ton problème mais tu dois
pouvoir avancer .

--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"nanou" dans le message de

news:1c7a501c42233$6c416cc0$
oui bien vu on stocke des aciers pour un transformeur
la désignation est bien structurée le code bien respecté
c'est en général la même matière sauf 3 références que 2
autres matières. Pour si peu de références,j'indiquerai
moi-même les poids, mais pour les ronds cela risque
d'être une peu long et surtout c'est la manipulation qui
m'interesse. Je voudrais savoir faire, sait-on jamais ?
merci en tout cas


.



Publicité
Poster une réponse
Anonyme