begin process at 2012 02 14 16:05:35
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive Visual Basic & VB.NET

 > 

Archives Visual Basic

 > 

VBA

 > 

traitement de chaîne de caractères pour tri


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

traitement de chaîne de caractères pour tri

mercredi 19 janvier 2005 à 17:58:46 | traitement de chaîne de caractères pour tri

Daydayer

lorsque je fait 'fichier.Name', j'obtiens 'nomdufichier.doc' (il s'agit de doc word).
j'aimerais enlever ce '.doc', comment dois-je faire??

par ailleurs, j'aimerais choisir parmi ces fichiers ('WPtruc-51', 'WPtruc-52', 'WP-truc53') celui qui a le plus grand chiffre de fin... comment accéder à ces chiffre.
je suis novice en VB et j'ai un peu de mal...

merci de votre aide!

  Daydayerement Vôtre    
mercredi 19 janvier 2005 à 18:32:28 | Re : traitement de chaîne de caractères pour tri

econs

Administrateur CodeS-SourceS

pour enlever le .doc :

chaine = "toto.doc"
ma_nouvelle_chaine = Left(chaine,Len(chaine)-4)

Manu
-------------------------------------------
Une question bien posée, c'est une chance de réponse bien adaptée.
mercredi 19 janvier 2005 à 18:34:28 | Re : traitement de chaîne de caractères pour tri

econs

Administrateur CodeS-SourceS
Pour le reste de la question ...

dans le nom de tes fichiers :
WPtruc-51.doc
WPtruc-52.doc

Le tiret est-il toujours présent ?
Le nombre est-il toujours entouré par un tiret et le point du ".doc" ?




Manu
-------------------------------------------
Une question bien posée, c'est une chance de réponse bien adaptée.
mercredi 19 janvier 2005 à 19:14:40 | Re : traitement de chaîne de caractères pour tri

Daydayer


merci pour la 1ère partie!
oui, les chiffre sont toujours entourés de .doc et d'un tiret (mais il se peut que par la suite, il n'y ait plus le .doc)

  Daydayerement Vôtre    
mercredi 19 janvier 2005 à 19:50:55 | Re : traitement de chaîne de caractères pour tri

ifix

if faut tester tous tes noms de fichiers avec :

chaine = "Wptruc51.doc"
ma_nouvelle_chaine = Left(chaine,Len(chaine)-4)
for x= 1 to len(ma_nouvelle_chaine)
     If right(ma_nouvelle_chaine,x)="-" then 
      ' il faut absolument que tu es le symbole "-" dans ton nom de fichier         
      numero_fichier=mid(ma_nouvelle_chaine,x)
     end if
next
msgbox numero_fichier

Pour enumerer tes noms de fichiers , tout depend s 'ils sont dans un repertoire , une listbox ou une feuille de calcul

Ifix
mercredi 19 janvier 2005 à 20:13:55 | Re : traitement de chaîne de caractères pour tri

econs

Administrateur CodeS-SourceS
Dim Chiffre As Long
Dim PremierIndice As Long
Dim SecondIndice As Long


Machaine = "WPtruc-51.doc"
PremierIndice = Instr(1,MaChaine,"-",vbTextCompare)+1
SecondIndice = Len(MaChaine)-4

Chiffre = Val(Mid(MaChaine,PremierIndice,SecondIndice-PremierIndice+1))

Manu
-------------------------------------------
Une question bien posée, c'est une chance de réponse bien adaptée.
mercredi 19 janvier 2005 à 20:19:03 | Re : traitement de chaîne de caractères pour tri

ifix

une petite remarque pour Econs:

si il y a un autre "-" dans le nom du fichier, ton code ne marchera pas

mercredi 19 janvier 2005 à 20:27:47 | Re : traitement de chaîne de caractères pour tri

cqui789

juste pour en rajouter et parceque tu n'est pas sure que le point doc soit la,

Dim Chiffre As Long
Dim PremierIndice As Long
Dim SecondIndice As Long
' Dim machaine As String

' machaine = "WPtruc-51.doc"
PremierIndice = InStr(1, machaine, "-", vbTextCompare) + 1
SecondIndice = InStr(1, machaine, ".", vbTextCompare) + 1
If SecondIndice = 0 Then SecondIndice = Len(machaine)

Chiffre = Val(Mid(machaine, PremierIndice, SecondIndice - PremierIndice + 1))

si tu est sure que le nombre n'a que deux chiffres, tu peut faire encore plus simple...


jeudi 20 janvier 2005 à 13:32:21 | Re : traitement de chaîne de caractères pour tri

econs

Administrateur CodeS-SourceS
ifix > Je sais bien que plusieurs tirets font planter mon code, mais il ne donne pas de précision de ce côté.

cqui789 > Plusieurs points dans le nom font aussi planter ton code.

Ce qu'il faut avant tout, c'est une description précise du type de chaine qu'on aura à traiter. Ensuite, on pourra sortir un algo correct.


Manu
-------------------------------------------
Une question bien posée, c'est une chance de réponse bien adaptée.
jeudi 20 janvier 2005 à 13:44:03 | Re : traitement de chaîne de caractères pour tri

Daydayer

bon alors,pour être plus précise sur le type de chaine à traiter, et bien elle aura cette tete : 

WP17-descriptionNumero.doc

 en fait, 'description' sera collée à 'Numero', celui-ci étant un vrai numéro.ce sera un numéro à deux chiffres exactement ,pas plus (ou peut etre à un chiffre).c'est par rapport à ce numero que j'aurai à choisir : je devrai prendre le nom qui a ce numéro le plus grand.


merci de votre patience!
ça fait du bien de sentir aidée.
  Daydayerement Vôtre    

1 2

Cette discussion est classée dans : traitement, tri, doc, caractères, chaîne


Répondre à ce message

Sujets en rapport avec ce message

Traitement de texte [ par Benj1105 ] Bonjour ! Serait-il possible de m' expliquer, comment rechercher une chaine de caractères dans un textbox, la surligner (selectionnée), et écrire comm Combien de ";" dans une chaîne de caractères ? [ par wiranata ] slt !je cherche une fonction VB permettant de retourner un integer du nb d'un caractère défini dans une chaîne donnée ?exple : combien y a-t-il de ';' chaîne de caractères [ par lisessc ] Bjr !Je voudrai savoir quelle sont les syntaxes du len() et du left$() en VBA!ça serai super sympa que quelqu'un réponde. Merci d'avance fonction de traitement de caractères [ par jeremy4920 ] G cree un programme avec une fonction Midau depart G: JP100 JP101 024.1039et a l'arrivée G: J|P|1|0|0| |J|P|1|0|1| |0|2|4|.|1|0|3|9|mai je veu JP100| Caractères spéciaux avec la commande SendKeys [ par ShadowMan ] Quand j'utilise la commande SendKeys pour envoyer une chaîne de caractères et que cette chaîne contient des caractères spéciauc il me fait une erreur. rechercher un guillemet dans une chaîne de caractères [ par hotsauce ] bonjour à tous,je souhaite rechercher dans une variable donnée le caractère guillemet; voici le code que j'utilise:if instr(1,val, " " ")0 then msgbox Traitement, découpage d'une Chaîne de caractere en 3 champs [ par rdomjan ] BonjourApplication access 2000 et VBAJ'ai une chaine de caractere dans un champs allant jusqu'a 240 caractere, que je doit couper après un espace avec 1/suppression d'un caractère dans une chaîne - 2/ comparaison de deux chaines de caractères [ par guig ] 1/ comment faire pour supprimer un caractère dans une chainede caractères.Ex : Une phrase se termine par un point.JE SOUHAITE SUPPRIMER TOUS LES E.2/ Remplacement d'une chaîne de caractères [ par phenrent76 ] bonjour - je cherche dans un fichier texte, à remplacer une chaîne de caractères qui commence et qui fini toujours par trois caractères identiques. j' supprimer le premier caratère de la chaîne de caractères [ par jordinette ] re bonjour!cette fois-ci, j'ai une variable Adresse (string) et je voudrai supprimer le premier, ou les 2 ou 3 premiers caractères (tjs en vba). exple


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,998 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales