Fonction Characters(debut, long)
Résolu
Gac51
Messages postés
7
Date d'inscription
Statut
Membre
Dernière intervention
-
Gac51 Messages postés 7 Date d'inscription Statut Membre Dernière intervention -
Gac51 Messages postés 7 Date d'inscription Statut Membre Dernière intervention -
A voir également:
- Fonction Characters(debut, long)
- Fonction si et - Guide
- Pc long a demarrer - Guide
- Fonction miroir - Guide
- Fonction moyenne excel - Guide
- Chanteur cheveux long année 80 - Forum Musique / Radio / Clip
4 réponses
yg_be
Messages postés
23541
Date d'inscription
Statut
Contributeur
Dernière intervention
Ambassadeur
1 584
bonsoir, peut-ête ainsi?
[A1].Characters(12, InStr([A1], "-") - 12).Font.Bold = True
Bonjour
peut-^tre à mettre en fonction ou macro paramétrée
Option Explicit
'------------------------------
Sub vvvv()
Dim derlig As Integer, Lig As Integer
Dim Cptr As Byte, xxx As String, separe, Debut As Byte, Fin As Byte
derlig = Columns("A").Find(what:="*", searchdirection:=xlPrevious).Row
For Lig = 1 To derlig
For Cptr = 1 To 2
xxx = Choose(Cptr, "-", "(")
separe = Split(Cells(Lig, "A"), xxx)
Debut = Len(separe(0)) + 1
Fin = Len(separe(1))
Cells(Lig, "A").Characters(Debut, Fin).Font.Bold = True
Next
Next
End Sub
peut-^tre à mettre en fonction ou macro paramétrée
Merci Michel pour cette réponse mais je pensais qu'elle serait aussi simple que celle de YG_be du style
[A1].Characters(InStr([A1], "-"), InStr([A1], "-") ).Font.Bold = True
comme je le disait j'ai essayé quelque chose comme ça ma cela ne fonctionne pas !!!
ton code fonctionne surement très bien mais cela sera peut être dur (pour moi) pour l'incorporé dans mon code.
Private Sub transfert ()
Sheets ("pilotage").Select
Sheets ("pilotage").[b65000].(xlup).offset(1,0).select
ActiveCell.Offset (0,1).value = now
ActiveCell.Offset (0,2).value = Thisworbook.sheets("type").[ag7]
ActiveCell.Offset (0,2).Characters (12, InStr (ActiveCell.Offset (0,4),"-") -12) .Font.FontStyle="gars"
ActiveCell.Offset (0,3).value = Thisworbook.sheets("type").[ah7]
'etc..
end sub
Comme tu peux le constater j'ai bien incorporé le code de YG_be, mais le contenu de ma cellule " Thisworbook.sheets("type").[ag7] " a changé c'est pourquoi j'ai besoin de 2 codes bien distinct pour l'incorporé dans d'autre.
Mon problème étant bien de formaté le contenu de ma cellule après transfert comme suit :
COM/CHA - DURANT Thibault - 0612345467 (0017654)
en deux codes
d'abord ce qui entre les tirets dans ce cas nom et prénom et en suite ce qu'il y a entre parenthèses si il y a lieu. je n'ai pas forcement de code après le numéro de téléphone
ex: COM/CHA - DURANT Thibault - 0612345467
[A1].Characters(InStr([A1], "-"), InStr([A1], "-") ).Font.Bold = True
comme je le disait j'ai essayé quelque chose comme ça ma cela ne fonctionne pas !!!
ton code fonctionne surement très bien mais cela sera peut être dur (pour moi) pour l'incorporé dans mon code.
Private Sub transfert ()
Sheets ("pilotage").Select
Sheets ("pilotage").[b65000].(xlup).offset(1,0).select
ActiveCell.Offset (0,1).value = now
ActiveCell.Offset (0,2).value = Thisworbook.sheets("type").[ag7]
ActiveCell.Offset (0,2).Characters (12, InStr (ActiveCell.Offset (0,4),"-") -12) .Font.FontStyle="gars"
ActiveCell.Offset (0,3).value = Thisworbook.sheets("type").[ah7]
'etc..
end sub
Comme tu peux le constater j'ai bien incorporé le code de YG_be, mais le contenu de ma cellule " Thisworbook.sheets("type").[ag7] " a changé c'est pourquoi j'ai besoin de 2 codes bien distinct pour l'incorporé dans d'autre.
Mon problème étant bien de formaté le contenu de ma cellule après transfert comme suit :
COM/CHA - DURANT Thibault - 0612345467 (0017654)
en deux codes
d'abord ce qui entre les tirets dans ce cas nom et prénom et en suite ce qu'il y a entre parenthèses si il y a lieu. je n'ai pas forcement de code après le numéro de téléphone
ex: COM/CHA - DURANT Thibault - 0612345467
Bonjour,
d'abord ce qui entre les tirets dans ce cas nom et prénom et en suite ce qu'il y a entre parenthèses si il y a lieu. je n'ai pas forcement de code après le numéro de téléphone
--
c'est ce que je t"ai proposé
Excuse moi de t'avoir dérangé
Michel
d'abord ce qui entre les tirets dans ce cas nom et prénom et en suite ce qu'il y a entre parenthèses si il y a lieu. je n'ai pas forcement de code après le numéro de téléphone
--
c'est ce que je t"ai proposé
Excuse moi de t'avoir dérangé
Michel
Excuse moi Michel je ne voulais en aucun cas être désagréable, c'est juste que mon niveau en Vba est très limité et que je ne sais pas vraiment comment incorporé ton code au mien.
je vais travaillé dessus ce week-end je te tien au courant de mon avancé.
Encore mille pardons.
je vais travaillé dessus ce week-end je te tien au courant de mon avancé.
Encore mille pardons.
tu peux simplement remplacer le code que je t'ai proposé par:
Dim Cptr As Byte, xxx As String, separe, Debut As Byte, Fin As Byte For Cptr = 1 To 2 xxx = Choose(Cptr, "-", "(") If InStr([a1], xxx) Then separe = Split([a1], xxx) Debut = Len(separe(0)) + 2 Fin = Len(separe(1)) + 1 - Cptr [a1].Characters(Debut, Fin).Font.Bold = True End If Next
Mais j'ai d'autres problèmes.
Dans un 1er temps plutôt que de commencer à la 12 lettre je veux mettre en gras ce que j'ai entre tiret
ex :COM/CHA - DURANT Thibault - 0612345467 (0017654)
j'ai essayé d'adapter le code mais cela n'a pas fonctionné.
Dans un 2ème temps j'ai besoin de mettre en gras les valeur entre parenthèses dans le cas ou il y a une valeur
ex : il peut y avoir deux codes
COM/CHA - DURANT Thibault - 0612345467 (0017654)
ou
COM/CHA - DURANT Thibault - 0612345467
Merci d'avance pour votre aide