Probleme de taille (apperement)

Résolu
cs_faucheuse Messages postés 308 Date d'inscription jeudi 10 janvier 2008 Statut Membre Dernière intervention 27 octobre 2011 - 20 mars 2008 à 15:51
Kristof_Koder Messages postés 918 Date d'inscription vendredi 3 août 2007 Statut Membre Dernière intervention 27 octobre 2008 - 20 mars 2008 à 17:15
Bon alors je sais pas trop si il s'agit plus d'un probleme de bureautique ou de programmation lol, l'avenir me le dira (qui ca???...je sors)
Normalement apres avoir régler ce probleme mon programme sera complet et parfait(on peut toujours réver)

Alors voila j'utilise ce code dans ma macro :
cell = Range("A1").Value
Mid(cell, 6) = TextBox1.Value
Range("A1").Value = cell

en fait j'essaye de changer "open 0.0.0.0" en "open 10.0.0.15" (pour ceux qui me connaissent par mes anciens post, c'est la fameuse adresse ip que je voulais changer^^)
Le probleme c'est que apres la transformation avec la fonction mid, dans la cellule A1 je me retrouve avec "open 10.0.0." et ca ne se termine pas.
Pourquoi donc?? probleme de format? taille?

13 réponses

Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
20 mars 2008 à 15:58
Pourquoi ne pas faire :

Range("A1").Value = "open " & TextBox1.Value

ou, au pire:

Range("A1").Value = Left$(Range("A1").Value, 6) & TextBox1.Value
3
cs_faucheuse Messages postés 308 Date d'inscription jeudi 10 janvier 2008 Statut Membre Dernière intervention 27 octobre 2011
20 mars 2008 à 16:00
et comment je dois faire alors?
J'ai essayer de déclarer cell comme double, mais ca change rien, et dans une autre cellule j'ai un plus grand texte qui passe tout seul.
0
jrivet Messages postés 7392 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
20 mars 2008 à 16:00
Salut,
Tu serais bien le premier pour qui la taille serait un problème (je sui s parti déjà)

Pour ton problème que contient TextBox1.Value 
lors du changement?
pourquoi ne pas entrer directement TOUTE l'adresseIP dans le Textbox?

@+: Ju£i?n
Pensez: Réponse acceptée
0
jrivet Messages postés 7392 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
20 mars 2008 à 16:01
Re,
Tiens,[auteur/RENFIELD/2359.aspx Renfield] tu as corrigé ton post

@+: Ju£i?n
Pensez: Réponse acceptée
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
20 mars 2008 à 16:04
corrigé ? non, on ne peut pas, même les admins, (sauf ceux qui ont la main sur la BDD)

par contre, je peux supprimer des posts
0
cs_faucheuse Messages postés 308 Date d'inscription jeudi 10 janvier 2008 Statut Membre Dernière intervention 27 octobre 2011
20 mars 2008 à 16:08
ok
Range("A1").Value = "open " & TextBox1.Value
a l'air de bien fonctionner, je vous promet de me coucher tot se soir pour eviter de vous poser des questions aussi bete demain (d'ailleurs je vais piquer un somme ... a non zut vla le patron)
0
cs_faucheuse Messages postés 308 Date d'inscription jeudi 10 janvier 2008 Statut Membre Dernière intervention 27 octobre 2011
20 mars 2008 à 16:10
omg j'ai oublié de dire merci
MERCI!!!

Mais au fait, je comprend quand meme pas pourquoi ma solution fonctionnait pas, quelqu'un pourrait m'expliquer svp (vous avez le droit de répondre "t'yreflechira demain" si vous considérez que c'est une autre question idiote XD)
0
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
20 mars 2008 à 16:18
modifier un bout de chaine via Mid comme tu cherchais a le faire n'autorise pas a dépasser...

simplifions ton code :

Dim cell As String
cell = "open 0.0.0.0"
Mid$(cell, 6) = "10.0.0.15"
MsgBox cell
=> "open 10.0.0."

si tu avais eu :

Dim cell As String
cell = "open 0.000.0.0"
Mid$(cell, 6) = "10.0.0.15"
MsgBox cell

tu aurais eu deux caractères de plus à modifier
on aurait bien obtenu "open 10.0.0.15"
0
cs_faucheuse Messages postés 308 Date d'inscription jeudi 10 janvier 2008 Statut Membre Dernière intervention 27 octobre 2011
20 mars 2008 à 16:22
c'est bete comme truc, je vois pas trop l'interet d'avoir fait une limite ici mais ca doit servir autre part.
En tout cas merci Renfield
0
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
20 mars 2008 à 16:27
modifier une chaine via Mid permet d''eviter de réallouer la chaine en question, et permet donc de gagner en temps d'execution.
faire ce genre de controles ralentirait la chose.

si tu veux avoir le loisir de dépasser, il te faudra de toutes facon réallouer... donc on concatène de nos elements pour créer une nouvelle chaine.
0
Kristof_Koder Messages postés 918 Date d'inscription vendredi 3 août 2007 Statut Membre Dernière intervention 27 octobre 2008 10
20 mars 2008 à 16:34
Renfield < La fonction Mid$() en L-Value, ca ne te gène pas toi ?
0
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
20 mars 2008 à 16:37
non, pourquoi ?

permet de modifier des caractères d'une chaine sans réallouer celle-ci => gain de perf
0
Kristof_Koder Messages postés 918 Date d'inscription vendredi 3 août 2007 Statut Membre Dernière intervention 27 octobre 2008 10
20 mars 2008 à 17:15
Ben va falloir que je teste ca car franchement, j'ai jamais pensé que cela fonctionnait !!
0
Rejoignez-nous