TomSilver
Messages postés7Date d'inscriptionjeudi 23 octobre 2008StatutMembreDernière intervention15 janvier 2009
-
17 nov. 2008 à 11:01
lillith212
Messages postés1229Date d'inscriptionvendredi 16 novembre 2007StatutMembreDernière intervention16 juin 2009
-
17 nov. 2008 à 14:25
Voilà le problème que je rencontre. Je souhaite formater une cellule Excel pour que quand je rentre dedans une adresse ip, exemple 10.155.3.22 , ma cellule m'affiche 010.155.003.022
lillith212
Messages postés1229Date d'inscriptionvendredi 16 novembre 2007StatutMembreDernière intervention16 juin 2009 17 nov. 2008 à 13:43
dim tab() as string
dim i as integer
tab=split(tacellule,".")
for i=0 to 3
i = len(tab(i))
Select case i
case 0
tab(i)="000"
case 1
tab(i)="00" & tab(i)
case 2
tab(i)="0" & tab(i)
case else
msgbox (erreur dans la saisie"
end select
next
tacellule = tab(0) & "." & tab(1) & "." & tab(2) & "." & tab(3)
TomSilver
Messages postés7Date d'inscriptionjeudi 23 octobre 2008StatutMembreDernière intervention15 janvier 2009 17 nov. 2008 à 14:23
Merci çà marche au poil j'ai juste modifié deux, trois truc :
Dimtab1() As String
Dim i As Integer
Dim g as Integer tab1 = Split( tacellule").Value , ".")
For i = 0 To 3
<gras>g = Len(tab1(i))
Select Case g
Case 0
tab1(i) = "000"
Case 1
tab1(i) = "00" & tab1(i)
Case 2
tab1(i) = "0" & tab1(i)
Case Else
MsgBox "erreur dans la saisie"
End Select
Next
Range("</gras> ").Value</gras> = tab1(0) & "." & tab1(1) & "." & tab1(2) & "." & tab1(3)
End Sub
lillith212
Messages postés1229Date d'inscriptionvendredi 16 novembre 2007StatutMembreDernière intervention16 juin 2009 17 nov. 2008 à 11:20
Re,
Tu n'a qu'a rajouter par code le ou les "0" pour formater la cellule
Donc
tu fractionne ton contenu en repérant le point
Ensuite tu testes la chaine, si elle la longueur est inférieur à 3 alors tu complete avec des "0"
Voila...
Bon courage
TomSilver
Messages postés7Date d'inscriptionjeudi 23 octobre 2008StatutMembreDernière intervention15 janvier 2009 17 nov. 2008 à 13:19
' Je propose un format (donc pas besoin de macro, dans les props de la cellule) :
' 000"."000"."000"."000
J'ai déjà essayé. Ca m'oblige à rentrer l'adresse comme ceci : 010168001010 pour avoir 010.168.001.010 c'est pas très ergonomique.
Autre exemple si je rentre 1015001 pour une ip : 10.150.0.1 çà affichera : 000.001.015.001
En gros il faudrais ou trouver un format qui fait que si j'entre une ip : 10.168.1.10 il m'affiche 010.168.001.010 avec comme repère les "." .Ou récupérer l'ip dans une variable compter le nombre de caractères entre chaque point et si ce nombre est infèrieur à 3 rajouté le nombre de 0 qu'il faut.
Je piétine un peu mais je pense pouvoir y parvenir. Dans les format cellule le point n'agit pas comme la virgule. Si comme format j'ai 00.00 et que je rentre 10 dans la cellule le résultat sera 00.10 alors que je désirerai avoir 10.00 La virgule le fait ce résultat mais avec une seule virgule. Donc pas de format 00,00,00,00 puis une virgule sur une IP c'est pas très joli non plus.
C'est peu être pas possible comme format à faire, donc je pense me diriger vers le vba pour le résoudre.