Précédent   Forum des professionnels en informatique > Logiciels > Solutions d'entreprise > Business Intelligence > Crystal Reports > Formules
Formules Forum sur l'utilisation des formules sous Crystal reports
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 01/07/2004, 10h48   #1
Membre à l'essai
 
Inscription : avril 2004
Messages : 53
Détails du profil
Informations forums :
Inscription : avril 2004
Messages : 53
Points : 23
Points : 23
Par défaut [CR] Récupération d'une chaine (Formule)

Bonjour,
j'aurais besoin de selectionner le numero dans un champs mais il n'est pas placé tout le temps a la meme place une fois précédé de 3 caractères et une autre fois précédé de 2.

xxx_888_xx
xx_888_xx

il faut qu'a chaque ligne je créée une formule qui récupère ce numéro.

Si quelqu'un a une idée de la formule a utiliser merci de me la donner
theclear est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/07/2004, 11h39   #2
Modérateur
 
Avatar de L.nico
 
Homme Nicolas LAURET
Chef de projet en SSII
Inscription : novembre 2003
Messages : 1 024
Détails du profil
Informations personnelles :
Nom : Homme Nicolas LAURET
Localisation : France, Bas Rhin (Alsace)

Informations professionnelles :
Activité : Chef de projet en SSII
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : novembre 2003
Messages : 1 024
Points : 1 744
Points : 1 744
Réponse (Le code est en syntaxe Basic - CR 8.5)
En considérant que ton numéro est de taille fixe 3 chiffres :

Code :
1
2
3
4
5
6
Dim I AS Number
FOR I = 3 TO Len({Champ}) - 3
    IF IsNumeric(Mid({Champ}, I, 3)) Then
       Formula = Mid({Champ}, I, 3)
    End IF
Next
__________________
Modérateur Business Intelligence / Windev

A lire avant de poster
Si vous avez obtenu la réponse à votre question alors cliquez sur le bouton
L.nico est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/07/2004, 11h58   #3
Membre à l'essai
 
Inscription : avril 2004
Messages : 53
Détails du profil
Informations forums :
Inscription : avril 2004
Messages : 53
Points : 23
Points : 23
oki merci mais en fait j'av pas remarké y'a une lettre et ca fait :

le mieux ca serait fde récupérer ce qu'il y a entre les tirets je sais pas si c'est possible.
theclear est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/07/2004, 15h08   #4
Modérateur
 
Avatar de L.nico
 
Homme Nicolas LAURET
Chef de projet en SSII
Inscription : novembre 2003
Messages : 1 024
Détails du profil
Informations personnelles :
Nom : Homme Nicolas LAURET
Localisation : France, Bas Rhin (Alsace)

Informations professionnelles :
Activité : Chef de projet en SSII
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : novembre 2003
Messages : 1 024
Points : 1 744
Points : 1 744
pourrais-tu être un peu plus clair STP ...
__________________
Modérateur Business Intelligence / Windev

A lire avant de poster
Si vous avez obtenu la réponse à votre question alors cliquez sur le bouton
L.nico est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/07/2004, 09h11   #5
Membre à l'essai
 
Inscription : avril 2004
Messages : 53
Détails du profil
Informations forums :
Inscription : avril 2004
Messages : 53
Points : 23
Points : 23
ba le numero que je dois selectionner est entre tiret est-ce qu'une formule pourrait me permettre de désigner la partie du texte entre tiret... je pense pas
theclear est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/07/2004, 09h22   #6
Modérateur
 
Avatar de L.nico
 
Homme Nicolas LAURET
Chef de projet en SSII
Inscription : novembre 2003
Messages : 1 024
Détails du profil
Informations personnelles :
Nom : Homme Nicolas LAURET
Localisation : France, Bas Rhin (Alsace)

Informations professionnelles :
Activité : Chef de projet en SSII
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : novembre 2003
Messages : 1 024
Points : 1 744
Points : 1 744
Entre autre une solution :

Code :
1
2
3
4
5
6
7
8
9
Dim I AS Number
Dim J AS Number
I = InStr({Champ}, "-")
J = InStr(I + 1, {Champ}, "-")
IF I <> 0 AND J <> 0 Then
   Formula = Mid({Champ}, I + 1, J - I - 1)
Else
   Formula = "-RIEN-"
End IF
la formule récupére la valeur entre les 2 premiers tirets ...
Si ton texte avant le nombre contient un tiret ça fausse la formule.
Mais ça on peut le corriger en testant que la valeur récupérée est bien numérique,
sinon on boucle et on continue la recherche ....
C'est donc faisable bien sûr ...
__________________
Modérateur Business Intelligence / Windev

A lire avant de poster
Si vous avez obtenu la réponse à votre question alors cliquez sur le bouton
L.nico est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/07/2004, 11h19   #7
Membre à l'essai
 
Inscription : avril 2004
Messages : 53
Détails du profil
Informations forums :
Inscription : avril 2004
Messages : 53
Points : 23
Points : 23
OKI merci beaucoup je crois que ca va me suffire .
theclear est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 15h13.


 
 
 
 
Partenaires

Hébergement Web