|
|
|
|
georgette, le jeudi 19 janvier 2006 à 15:41:11Bonjour georgette,
Tu peux essayer ça : Function TRANSFO(Chaine) Dim I As Integer I = 1 Do While UCase(Left(Chaine, I)) = Left(Chaine, I) I = I + 1 Loop TRANSFO = Left(Chaine, I - 1) & "." End Function |
Wouaouuu merci pour le code, c'est super sympa !! Je le testerai demain au taf'. Un grand merci de nouveau ! |
Et oui, c'est encore moi... par curiosité j'ai finalement testé chez moi, et apparement il me manque une librairie car quand j'éxécute il me dit "projet ou bibliothèque introuvable" et me surligne LEFT.
Par hasard, sais tu qu'elle bibliothèque il me faut ?
|
Alors là c'est incompréhensible, la condition de sortie n'est pas valide. En effet mon programme plante à cause d'un dépassement de capacité de la variable 'i' (il arrive à 32700), pourtant ton code me semble cohérent...
Dim Chaine As String Dim rr As String Chaine = "MARTIN Bob" Dim I As Integer I = 1 Do While UCase(Left(Chaine, I)) = Left(Chaine, I) I = I + 1 Loop rr = Left(Chaine, I - 1) & "." MsgBox (rr) Franchement je vois pas d'ou ça peut venir. Bon sinon, il me manquait en effet la librairie Excel, donc merci beaucoup de l'info !!
|
En faite moi je testais ta fonction sous Access, dans un formulaire.
J'ai testé sous Excel, j'ai donc inséré ta fonction dans Visual Basic Editor et mis =TRANSFO(A1) dans une cellule mais ça me retourne #NOM? Je dois pas savoir utiliser cette chose là... |
salut Georgette,
As-tu déclaré ta fonction en Public dans un module, afin qu'elle soit accessible depuis une feuille ? A+, Kobaya. |
Salut Kobaya !
Oui, dans excel j'ai tapé dans (feuil1) de Visual Basic Editor le code qui suit : Public Function TRANSFO(Chaine) Dim I As Integer I = 1 Do While UCase(Left(Chaine, I)) = Left(Chaine, I) I = I + 1 Loop TRANSFO = Left(Chaine, I - 1) & "." End Function Mais lorsque je teste ma fonction j'ai '#NOM?' dans la cellule ou j'appelle la fonction C'est bizare kan meme
|
Salut Lami20j !
En faite je crois qu'il y a un petit quiproquo, je parle d'Excel, car sous Acces la fonction ne marche pas (la condition d'arret de la boucle ne fonctionne pas) . Donc, je ne vois pas sous Excel le menu Insertion/module. J'ai donc rentré la fonction dans le VBE, car apparement il n'y a pas de module sous Excel (du moins pas dans ma version) et j'ai ce fichue #NOMS? qui apparait....
|
re !
Nickel Chrome, ça marche !! Par contre c'est bizare ke la condition d'arret de marche pas sous Access... Merci beaucoup en tout cas ! Et bonne fin de soirée !
|
Formidable ! Ta fonction marche nickel ! Un grand merci, c'est super sympa !! |