Un code qui sert à controler un n° de siret
ptiville1
Messages postés
30
Statut
Membre
-
Azer_Ty Messages postés 108 Statut Membre -
Azer_Ty Messages postés 108 Statut Membre -
Bonjour,
voila un code trouvé sur le web, il sert à controler un n° de siret
je cherche al integrer dans un formulaire d inscription mais je galere
si une ame charitable peut m aider merci d avance.
Voici le code,
Option Explicit
Public Function Siren_IsValid(ByVal pvValue As Variant) As Boolean
Dim i As Integer
Dim v As Integer
Dim iLuhnKey As Integer
Siren_IsValid = False
If Not IsNumeric(pvValue) Then Exit Function
If Len(Format$(CDbl(pvValue), "000000000")) <> 9 Then Exit Function
If pvValue = "000000000" Then Exit Function
iLuhnKey = 0
For i = 1 To Len(pvValue)
v = CInt(Mid$(pvValue, i, 1))
'*** Siren : les chiffres PAIRS pour le Siren sont doublés
If (i Mod 2) = 0 Then
v = v * 2
End If
If v >= 10 Then
iLuhnKey = iLuhnKey + (v - 9)
Else
iLuhnKey = iLuhnKey + v
End If
Next i
Siren_IsValid = (iLuhnKey Mod 10 = 0)
End Function
Public Function Siret_IsValid(ByVal pvValue As Variant) As Boolean
Dim i As Integer
Dim v As Integer
Dim iLuhnKey As Integer
Siret_IsValid = False
If Not IsNumeric(pvValue) Then Exit Function
If Len(Format$(CDbl(pvValue), "00000000000000")) <> 14 Then Exit Function
If pvValue = "00000000000000" Then Exit Function
If Not Siren_IsValid(Left$(pvValue, 9)) Then Exit Function
iLuhnKey = 0
For i = 1 To Len(pvValue)
v = CInt(Mid$(pvValue, i, 1))
'*** Siret : les chiffres IMPAIRS sont doublés
If (i Mod 2) = 1 Then
v = v * 2
End If
If v >= 10 Then
iLuhnKey = iLuhnKey + (v - 9)
Else
iLuhnKey = iLuhnKey + v
End If
Next i
Siret_IsValid = (iLuhnKey Mod 10 = 0)
End Function
voila un code trouvé sur le web, il sert à controler un n° de siret
je cherche al integrer dans un formulaire d inscription mais je galere
si une ame charitable peut m aider merci d avance.
Voici le code,
Option Explicit
Public Function Siren_IsValid(ByVal pvValue As Variant) As Boolean
Dim i As Integer
Dim v As Integer
Dim iLuhnKey As Integer
Siren_IsValid = False
If Not IsNumeric(pvValue) Then Exit Function
If Len(Format$(CDbl(pvValue), "000000000")) <> 9 Then Exit Function
If pvValue = "000000000" Then Exit Function
iLuhnKey = 0
For i = 1 To Len(pvValue)
v = CInt(Mid$(pvValue, i, 1))
'*** Siren : les chiffres PAIRS pour le Siren sont doublés
If (i Mod 2) = 0 Then
v = v * 2
End If
If v >= 10 Then
iLuhnKey = iLuhnKey + (v - 9)
Else
iLuhnKey = iLuhnKey + v
End If
Next i
Siren_IsValid = (iLuhnKey Mod 10 = 0)
End Function
Public Function Siret_IsValid(ByVal pvValue As Variant) As Boolean
Dim i As Integer
Dim v As Integer
Dim iLuhnKey As Integer
Siret_IsValid = False
If Not IsNumeric(pvValue) Then Exit Function
If Len(Format$(CDbl(pvValue), "00000000000000")) <> 14 Then Exit Function
If pvValue = "00000000000000" Then Exit Function
If Not Siren_IsValid(Left$(pvValue, 9)) Then Exit Function
iLuhnKey = 0
For i = 1 To Len(pvValue)
v = CInt(Mid$(pvValue, i, 1))
'*** Siret : les chiffres IMPAIRS sont doublés
If (i Mod 2) = 1 Then
v = v * 2
End If
If v >= 10 Then
iLuhnKey = iLuhnKey + (v - 9)
Else
iLuhnKey = iLuhnKey + v
End If
Next i
Siret_IsValid = (iLuhnKey Mod 10 = 0)
End Function
A voir également:
- Un code qui sert à controler un n° de siret
- Code ascii - Guide
- Comment déverrouiller un téléphone quand on a oublié le code - Guide
- Code puk bloqué - Guide
- Code activation windows 10 - Guide
- Comment créer un qr code - Guide
1 réponse
Bonsoir,
J'ai essayé de traduire le code en javascript mais j'ignore ce que ça peux donner :
Bonne continuation.
J'ai essayé de traduire le code en javascript mais j'ignore ce que ça peux donner :
<script>
function isNumeric(chaine){
var reg = new RegExp("[0-9]{" + chaine.length + "}");
return reg.test(chaine);
}
function Siren_IsValid(pvValue){
var i;
var v;
var iLuhnKey;
var IsValid = false;
if(isNumeric(pvValue) == false)
return false;
if(pvValue.length != 9)
return false;
if(pvValue == "000000000")
return false;
iLuhnKey = 0;
for(i = 1; i <= pvValue.length; i++)
{
v = CInt(Mid$(pvValue, i, 1));
// *** Siren : les chiffres PAIRS pour le Siren sont doublés
if(i % 2 == 0)
v = v * 2 ;
if(v >= 10)
{
iLuhnKey = iLuhnKey + (v - 9);
}
else
{
iLuhnKey = iLuhnKey + v;
}
}
if(iLuhnKey % 10 == 0)
IsValid = true;
return IsValid;
}
function Siret_IsValid(pvValue){
var i;
var v;
var iLuhnKey;
IsValid = false;
if(isNumeric(pvValue) == false)
return false;
if(pvValue.length != 14)
return false;
if(pvValue == "00000000000000")
return false;
if(Siren_IsValid(Left$(pvValue, 9)))
return false;
iLuhnKey = 0;
for(i = 1; i <= pvValue; i++)
{
v = CInt(Mid$(pvValue, i, 1))
// *** Siret : les chiffres IMPAIRS sont doublés
if(i % 2 == 1)
v = v * 2;
if(v >= 10)
{
iLuhnKey = iLuhnKey + (v - 9);
}
else
{
iLuhnKey = iLuhnKey + v;
}
}
if(iLuhnKey % 10 == 0)
IsValid = true;
}
function maFonction(){
var resu = Siret_IsValid(document.getElementById('num').value);
alert(resu);
}
</script>
<body>
<input type="text" id="num" value="" />
<br />
<input type="button" value="Verifier" onClick="maFonction()" />
</body>
Bonne continuation.