Incrémenter chaine de caractères [Résolu]

paul2k33 5 Messages postés mercredi 26 novembre 2008Date d'inscription 28 décembre 2008 Dernière intervention - 19 déc. 2008 à 16:23 - Dernière réponse : paul2k33 5 Messages postés mercredi 26 novembre 2008Date d'inscription 28 décembre 2008 Dernière intervention
- 19 déc. 2008 à 19:20
salut a tous

j'ai besoin d'aide pour mon projet
enfaite je dois incrémenter les chaine de caractères  en vb
par exemple :
AB devient BC
ou
ABC devient BCD

j'ai essaye mais sa ne marche passss , j'arrive que a incrementer qu une seule lettre
AB devien AC
 mais je veux  AB devien BC

aidez moi !!!!! merciiiiiiiiiiiiiiiii
Afficher la suite 

Votre réponse

6 réponses

MOUSSAOUIAAZIZ 48 Messages postés samedi 5 août 2006Date d'inscription 9 novembre 2009 Dernière intervention - 19 déc. 2008 à 19:10
+3
Utile
Salut;
je voi que tu a fait une erreur ; j'ai ecrit  b=b+c  et non b=a+b
et moi aussi j'ai fait une ereur il faut initialiser "b" chaque fois 
don le code devient :  
Private Sub Command1_Click()
Dim a As String     ' chaine de caractères  source par exemple "ABC"
Dim b As String     ' chaine de caractères  detination donc b = "BCD"
Dim c As String     ' variable intermediare
Dim d As Integer       ' variable intermediare
Dim i  As Integer     ' por la boucle 1
Dim j As Integer      ' por la boucle 2


a = "ABC"


For j = 1 To 2  'nb est le nombre c'est combien de
  b = ""    ' initialisation de b ici
  For i = 1 To Len(a)
      c = Left(a, i)
      c = Right(c, 1)
      d = Asc(c)   'Asc est une fonction qui renvoi le code ascci
      d = d + 1     'on l'incrimente
      c = Chr(d)    'Chr est la fonction inverse de Asc      b b + c   ' ici   b b+c et non b = a+c
  Next i


' b résultats intermédiaire   ici tu peut l'afficher


  Print b 'AFFICHER
  a = b


Next j
End Sub

et je suis sure qu'il mareche tres bien;
cordialement, a+
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de MOUSSAOUIAAZIZ
MOUSSAOUIAAZIZ 48 Messages postés samedi 5 août 2006Date d'inscription 9 novembre 2009 Dernière intervention - 19 déc. 2008 à 17:04
0
Utile
salut;
tu peu faire ca :

Dim a As String     'chaine de caractères  source par exemple "ABC"
Dim b As String    'chaine de caractères  detination donc b = "BCD" 
Dim c As String     ' variable intermediare
Dim d As Byte      ' variable intermediare
Dim i  as byte

b = ""
a = "ABCDEF"


For i = 1 To Len(a)
    c = Left(a, i)
    c = Right(c, 1)
    d = Asc(c)   'Asc est une fonction qui renvoi le code ascci 
    d = d + 1      'on l'incrimente
    c = Chr(d)    'Chr est la fonction inverse de Asc
    b = b + c     
Next i


N’hésiter pas a poser tes questions si tu n’a pas compris ça…
a+
Commenter la réponse de MOUSSAOUIAAZIZ
paul2k33 5 Messages postés mercredi 26 novembre 2008Date d'inscription 28 décembre 2008 Dernière intervention - 19 déc. 2008 à 17:18
0
Utile
merci pour repondre Moussaoui


enfaite mon projet
le client saisie un mots et un nombre   (le nombre c'est combien de fois  ca doit incrementer)
par exemple il tabe "ABC" et le nombre 2 

affichage
BCD
CDE

tu vois !!! c'est ca le projet


merciii
Commenter la réponse de paul2k33
paul2k33 5 Messages postés mercredi 26 novembre 2008Date d'inscription 28 décembre 2008 Dernière intervention - 19 déc. 2008 à 17:19
0
Utile
merci pour repondre Moussaoui


enfaite mon projet
le client saisie un mots et un nombre   (le nombre c'est combien de fois  ca doit incrementer)
par exemple il tabe "ABC" et le nombre 2 

affichage
BCD
CDE

tu vois !!! c'est ca le projet


merciii
Commenter la réponse de paul2k33
MOUSSAOUIAAZIZ 48 Messages postés samedi 5 août 2006Date d'inscription 9 novembre 2009 Dernière intervention - 19 déc. 2008 à 18:12
0
Utile
Salut ;


Donc on va  faire  une simple modification , avec deux boucle imbriquée :



<?xml:namespace prefix o ns "urn:schemas-microsoft-com:office:office" /??>
 





Dim a As String     ' chaine de caractères  source par exemple "ABC"
Dim b As String     ' chaine de caractères  detination donc b = "BCD" 
Dim c As String     ' variable intermediare
Dim d As Byte       ' variable intermediare
Dim i  as byte      ' por la boucle 1
dim j as byte       ' por la boucle 2






b = ""
a = "ABCDEF"





for j = 1 to nb   ‘nb est le nombre c'est combien de fois  ca doit incrementer)


  For i = 1 To Len(a)
      c = Left(a, i)
      c = Right(c, 1)
      d = Asc(c)   'Asc est une fonction qui renvoi le code ascci 
      d = d + 1      'on l'incrimente
      c = Chr(d)    'Chr est la fonction inverse de Asc
      b = b + c     
  Next i






‘ b résultats intermédiaire   ici tu peut l’afficher









a = b





Next j






 






Et en fin le résultat final est dans ‘b’, tu peu afficher les résultats intermédiaire  





Ou bien si tu n’a pas intéresser par les  résultats intermédiaire  





Donc met ‘ d d + nb’ au lieu de ‘d d + <?xml:namespace prefix = st1 ns = "urn:schemas-microsoft-com:office:smarttags" /??><st1:metricconverter w:st="on" productid="1’">1’</st1:metricconverter> dans le premier code.  
Commenter la réponse de MOUSSAOUIAAZIZ
paul2k33 5 Messages postés mercredi 26 novembre 2008Date d'inscription 28 décembre 2008 Dernière intervention - 19 déc. 2008 à 19:20
0
Utile
MERCI BEAUCOUP MOUSSAOUI


A+
Commenter la réponse de paul2k33

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.