If WorNot <> 0 Then 'If there is at least a Space in the Taxon Name
TransfoTaxon = Left(Taxon, 1) & ". " & Right(Taxon, LengthTaxon - WorNot)
Else
TransoTaxon = Left(Taxon, 4)
End If
End Function
Mon but est de transformer une chaine de caracteres de la facon suivante : si elle est composee d'un seul mot, on prend les 4 premieres lettres de ce mot, si la chaine est composee de deux mots, on prend la premiere lettre du premier mot, suivie d un point et d un espace, puis le deuxieme mot.
Je pense que mon probleme vient de l utilisation de la fonction InStr, puisque pour etre honnete, je n'arrive meme pas a m'en servir dans une feuille de calcul. Je suis plutot curieux de savoir ce qui cloche ici !
If WorNot > 0 Then 'If there is at least a Space in the Taxon Name
TransfoTaxon = Left(Taxon, 1) & ". " & Right(Taxon, LengthTaxon - WorNot) '--> tu prends pas le second mot, il faut utiliser la fonction mid je pense.
TransfoTaxon = Left(Taxon,1) & ". " & Mid(Taxon,WorNot +1, LengthTaxon - WorNot)
Else
TransoTaxon = Left(Taxon, 4)
End If
End Function
Essaie ca
S.L.B.
<hr />-- Le règlement tu liras -- Des recherches tu feras -- Le style SMS tu banniras --
-- De la validation pertinente tu feras -- Du respect tu auras -- <
cs_Taeris
Messages postés14Date d'inscriptionmardi 25 septembre 2007StatutMembreDernière intervention29 octobre 2008 29 oct. 2008 à 15:03
Merci, ca me fait deja une partie du probleme de regle !
Ceci
dit il reste un probleme avec les strings d'un seul mot (sans espace
donc) : Il n'affiche rien du tout. J'ai essaye de lui faire afficher la
valeur de WorNot dans une cellule a cote, mais si je rajoute la ligne
Worksheets(1).Range("P2").Value = WorNot
il me renvoie l'erreur #VALUE! ... J'ai un peu de mal a saisir. Est ce que c'est parceque WorNot = Null ?