Comment faire cette mise en forme automatique ? [Excel] - Programmation
Marsh Posté le 31-08-2001 à 20:40:43
A mon avis, il faut passer par de la prog VBA. 
Tu crées une macro vide et tu essaies quelque chose comme ça: 
 
Dim sBuf as string 
Dim aBuf 
 
sBuf = sheets("NomFeuille_1" ).Cells(x, y) ' (x,y) = cellule contenant ton 1 
 
aBuf = Split(sBuf, "-" ) ' Excel 2000, sinon la programmer (cf + bas) 
 
' Puis boucle sur ta colonne à remplir 
For i = 1 To UBound(aBuf) 
 ActiveSheet.Cells(i, 2) = aBuf(i) 
Next i 
 
NB: la fonction Split apparait avec VB6 et VBA sous Office2000 
Si ton Excel est plus ancien, voici le code de la fonction Split() 
 
Public Function Split(ByVal sIn As String, Optional sDelim As _ 
 String, Optional nLimit As Long = -1, Optional bCompare As _ 
  VbCompareMethod = vbBinaryCompare) As Variant 
 Dim sRead As String, sOut() As String, nC As Integer 
 If sDelim = "" Then 
   Split = sIn 
 End If 
 sRead = ReadUntil(sIn, sDelim, bCompare) 
 Do 
   ReDim Preserve sOut(nC) 
   sOut(nC) = sRead 
   nC = nC + 1 
   If nLimit <> -1 And nC >= nLimit Then Exit Do 
   sRead = ReadUntil(sIn, sDelim) 
 Loop While sRead <> "" 
 ReDim Preserve sOut(nC) 
 sOut(nC) = sIn 
 Split = sOut 
End Function 
 
Je ne suis plus sur de savoir si l'initialisation des params fonctionne sur Excel97 & - 
Si ça pose un pb de syntaxe, il faut modifier le code en faisant des init de nLimit avec: 
if ismissing(nLimit) then nLimit = -1 
et de VbCompareMethod avec: 
if ismissing(VbCompareMethod) then VbCompareMethod = vbBinaryCompare 
 
 
Je crois avoir été complet 
 
A+ 
Marsh Posté le 30-08-2001 à 23:13:06
Comment faire pour que tous les noms qu il y a en 1 et séparé par des "-" se mettent en forme comme en 2 automatiquement ?
PS : le 1 et le 2 sont sur des feuilles differentes.
Merci de m'éclairer