A voir également:
- Deux derniers caractères d'un nom
- Caractères ascii - Guide
- Caractères spéciaux clavier azerty - Guide
- Caractères spéciaux - Guide
- Deux caracteres manquent dans l'url ✓ - Forum Programmation
- Deux ecran pc - Guide
7 réponses
varfendell
Messages postés
3256
Date d'inscription
jeudi 27 décembre 2007
Statut
Membre
Dernière intervention
8 février 2020
704
2 juil. 2008 à 14:31
2 juil. 2008 à 14:31
Bonjour,
Vous codez en quelle langage?
Vous codez en quelle langage?
varfendell
Messages postés
3256
Date d'inscription
jeudi 27 décembre 2007
Statut
Membre
Dernière intervention
8 février 2020
704
2 juil. 2008 à 14:40
2 juil. 2008 à 14:40
A....dsl, je ne connait pas ce langage. Je pensé que c'était du C++ auquel j'ais une solution.
Bon courage à vous.
Bon courage à vous.
zavenger
Messages postés
811
Date d'inscription
vendredi 29 février 2008
Statut
Membre
Dernière intervention
20 avril 2012
161
2 juil. 2008 à 14:44
2 juil. 2008 à 14:44
Bonjour,
quelque chose comme :
Sheets("OS").SaveAs CheminOS & "\" & Left(ActiveWorkbook.Name, Len(ActiveWorkbook.Name) - 4) & IndiceOS
quelque chose comme :
Sheets("OS").SaveAs CheminOS & "\" & Left(ActiveWorkbook.Name, Len(ActiveWorkbook.Name) - 4) & IndiceOS
varfendell
Messages postés
3256
Date d'inscription
jeudi 27 décembre 2007
Statut
Membre
Dernière intervention
8 février 2020
704
2 juil. 2008 à 14:58
2 juil. 2008 à 14:58
En C++ il existe une fonction qui permet de selectionner le debut d'une chaine jusqu'a un caractere precis:
m_TypeFich = Str.substr(Str.find_first_of("."))
m_TypeFich contiendra nom de nom.txt par exemple
m_TypeFich = Str.substr(Str.last_first_of("."))
m_TypeFich contiendra txt de nom.txt par exemple
m_TypeFich = Str.substr(Str.find_first_of("."))
m_TypeFich contiendra nom de nom.txt par exemple
m_TypeFich = Str.substr(Str.last_first_of("."))
m_TypeFich contiendra txt de nom.txt par exemple
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bidouilleu_R
Messages postés
1181
Date d'inscription
mardi 27 mai 2008
Statut
Membre
Dernière intervention
12 juillet 2012
293
2 mars 2011 à 09:32
2 mars 2011 à 09:32
et en vba ça existe aussi
ce qui est trompeur c'est que activeWorkBook.name contient "Nom.xls"
mais c'est variable string
Dim CheminOS, NomOS As String
CheminOS = ActiveWorkbook.Path
NomOS = ActiveWorkbook.Name
Sheets("OS").SaveAs CheminOS & "\" & ActiveWorkbook.Name & IndiceOS
donc on peut écrire
NomOS = Left(NomOS, Len(NomOS) - 4) & indiceOSs & ".xls"
explication :
left(lit les charactère de gauche à droite sur la longueur donnée)
je lui donne la longueur total -4 il faut aussi enlever le point
puis ajouter l'indice et le ".xls"
c'est presque comme le c++
ce qui est trompeur c'est que activeWorkBook.name contient "Nom.xls"
mais c'est variable string
Dim CheminOS, NomOS As String
CheminOS = ActiveWorkbook.Path
NomOS = ActiveWorkbook.Name
Sheets("OS").SaveAs CheminOS & "\" & ActiveWorkbook.Name & IndiceOS
donc on peut écrire
NomOS = Left(NomOS, Len(NomOS) - 4) & indiceOSs & ".xls"
explication :
left(lit les charactère de gauche à droite sur la longueur donnée)
je lui donne la longueur total -4 il faut aussi enlever le point
puis ajouter l'indice et le ".xls"
c'est presque comme le c++
Utilisateur anonyme
3 mars 2011 à 01:33
3 mars 2011 à 01:33
Salut,
Ma réponse concerne java comme tu es aussi demandeur...
Tu as "nom.xlsa" et tu voudrais obtenir quoi?
Parceque si tu veux supprimer les 3 derniers caractères tu obtiendras "nom.x" et je doute que ce soit ce que tu veux.
Supposons que tu veux obtenir "noma" on peut faire:
Mais ce n'est peut-être pas non plus ce que tu veux.
Et en plus on n'a pas forcément toujours "unNom.xls" avant la lettre auquel cas on ne pourait pas mettre le type ".xls" en dur.
Alors dis moi ce que tu veux obtenir exactement...
Cordialement,
Dan
Ma réponse concerne java comme tu es aussi demandeur...
Tu as "nom.xlsa" et tu voudrais obtenir quoi?
Parceque si tu veux supprimer les 3 derniers caractères tu obtiendras "nom.x" et je doute que ce soit ce que tu veux.
Supposons que tu veux obtenir "noma" on peut faire:
String monString = "nom.xlsa"; String monString2 = monString.replaceAll(".xls", ""); System.out.println("\n\nmonString = " +"\"" + monString + "\""); System.out.println("monString2 = " +"\"" + monString2 + "\"");
Mais ce n'est peut-être pas non plus ce que tu veux.
Et en plus on n'a pas forcément toujours "unNom.xls" avant la lettre auquel cas on ne pourait pas mettre le type ".xls" en dur.
Alors dis moi ce que tu veux obtenir exactement...
Cordialement,
Dan
Bidouilleu_R
Messages postés
1181
Date d'inscription
mardi 27 mai 2008
Statut
Membre
Dernière intervention
12 juillet 2012
293
3 mars 2011 à 09:53
3 mars 2011 à 09:53
il a une variable nomOS de type string qui contient au départ le nom
du classeur excel : nomOs="nomfichier.xls"
il veut mettre un indice au nom et obtenir nomOS="nomfichierA.xls"
il a placé le "A" dans une variable indiceOS
mais il ne savait pas couper la chaine avant le "."
du classeur excel : nomOs="nomfichier.xls"
il veut mettre un indice au nom et obtenir nomOS="nomfichierA.xls"
il a placé le "A" dans une variable indiceOS
mais il ne savait pas couper la chaine avant le "."
Utilisateur anonyme
3 mars 2011 à 15:26
3 mars 2011 à 15:26
Merci Bidouilleu_R
En java donc par exemple:
En java donc par exemple:
String nomOs = "nomFichier.xls"; String indiceOs = "A"; int ind = nomOs.indexOf("."); String nomOs2 = nomOs.substring(0, ind) + indiceOs; nomOs2+= nomOs.substring(ind); nomOs = nomOs2; System.out.println("nomOs: " + nomOs);
2 juil. 2008 à 14:34
j'ai oublié de préciser le principal.
Je code en VBA sous Excel.