Besion dun coup de main=)
Fermé
etienne11017
Messages postés
4
Date d'inscription
jeudi 21 août 2008
Statut
Membre
Dernière intervention
22 août 2008
-
21 août 2008 à 18:29
etienne11017 - 22 août 2008 à 11:39
etienne11017 - 22 août 2008 à 11:39
A voir également:
- Besion dun coup de main=)
- Bagage à main - Guide
- Comment télécharger toutes les photos de google photos d'un coup ? - Guide
- Scan ligne de la main gratuit - Télécharger - Photo & Graphisme
- Coup de pouce internet - Accueil - Box & Connexion Internet
- Comment se désabonner de coup d'un soir - Forum Consommation & Internet
8 réponses
wilfried_42
Messages postés
907
Date d'inscription
mardi 19 août 2008
Statut
Contributeur
Dernière intervention
8 décembre 2009
244
21 août 2008 à 18:52
21 août 2008 à 18:52
bonjour
j'ai rien compris mais j'essaye
dim montext as string, i as integer, impair as string, pair as string
montext = "Ma valeur est celle ci"
' Pour recuperer les lettre de postion impaire
impair = ""
for i = 1 to len(montext) step 2
impair = impair & mid(montext,i,1)
next i
' Recuperer le lettes en position paire
pair = ""
for i = 2 to len(montext) step 2
pair = pair & mid(montext,i,1)
next i
msgbox impair & vbcrlf & pair
j'ai rien compris mais j'essaye
dim montext as string, i as integer, impair as string, pair as string
montext = "Ma valeur est celle ci"
' Pour recuperer les lettre de postion impaire
impair = ""
for i = 1 to len(montext) step 2
impair = impair & mid(montext,i,1)
next i
' Recuperer le lettes en position paire
pair = ""
for i = 2 to len(montext) step 2
pair = pair & mid(montext,i,1)
next i
msgbox impair & vbcrlf & pair
eriiic
Messages postés
24603
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
15 décembre 2024
7 247
21 août 2008 à 23:17
21 août 2008 à 23:17
Bonsoir,
ta façon de faire est assez 'lourde' mais la syntaxe que tu aurais dû respecter pour mid(chaine,départ, nbre) est :
lettre = Mid(texte_a_coder, 2 * j, 1)
et du coup ta boucle devrais être
For j = 1 To longueur_texte / 2
et comme souvent en informatique il souvent plus simple de prendre le problème autrement donc regarde de près la réponse de wilfried avec step 2.
eric
ta façon de faire est assez 'lourde' mais la syntaxe que tu aurais dû respecter pour mid(chaine,départ, nbre) est :
lettre = Mid(texte_a_coder, 2 * j, 1)
et du coup ta boucle devrais être
For j = 1 To longueur_texte / 2
et comme souvent en informatique il souvent plus simple de prendre le problème autrement donc regarde de près la réponse de wilfried avec step 2.
eric
wilfried_42
Messages postés
907
Date d'inscription
mardi 19 août 2008
Statut
Contributeur
Dernière intervention
8 décembre 2009
244
22 août 2008 à 07:09
22 août 2008 à 07:09
re:
comme eriiic me confirme que j'ai compris quelque chose, voici une autre boucle
comme eriiic me confirme que j'ai compris quelque chose, voici une autre boucle
dim montext as string, i as integer, impair as string, pair as string montext = "Ma valeur est celle ci" ' Pour recuperer les lettre de postion impaire impair = "" : pair = "" for i = 1 to len(montext) if i mod 2 = 1 then ' donne le reste de la division par 2, donne 1 si impair, 0 si pair impair = impair & mid(montext,i,1) else pair = pair & mid(montext,i,1) end if next i msgbox impair & vbcrlf & pair
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bonjour
La suite ... 'VBA aide SVP :) pb dans boucle for' :
https://forums.commentcamarche.net/forum/affich-8014257-vba-aide-svp-pb-dans-boucle-for#0
# Par 'etienne11017', le jeudi 21 août 2008 à 21:47:38.
Merci
La suite ... 'VBA aide SVP :) pb dans boucle for' :
https://forums.commentcamarche.net/forum/affich-8014257-vba-aide-svp-pb-dans-boucle-for#0
# Par 'etienne11017', le jeudi 21 août 2008 à 21:47:38.
Merci
wilfried_42
Messages postés
907
Date d'inscription
mardi 19 août 2008
Statut
Contributeur
Dernière intervention
8 décembre 2009
244
22 août 2008 à 08:41
22 août 2008 à 08:41
re:
pour l'inverse, j'a mes deux variables Impair et Pair
pour l'inverse, j'a mes deux variables Impair et Pair
dim recup as string recup = "" for i = 1 to len(impair) + len(pair) if i mod 2 = 1 then recup = recup & mid(impair,i,1) else recup = recup & mid(pair,i,1) end if next i
Rebonjour à tous et toutes
Merci 'wilfried_42' :))
D'autres solutions différentes ? Éventuellement ?
Merci à tous et toutes
Merci 'wilfried_42' :))
D'autres solutions différentes ? Éventuellement ?
Merci à tous et toutes
pour la parité j'ai utilisé modulo 2=0...
pour decoder j'ai fait l'inverse du codage:
codage:
Sub codeAvocat_QuandClic()
texte_a_coder = Range("texte_a_coder").Value
longueur_texte = Len(texte_a_coder)
message_code = ""
For j = 1 To longueur_texte
lettre = Mid(texte_a_coder, j, 1)
lettre = UCase(lettre)
Worksheets("code").Select
For i = 2 To 39
If Worksheets("code").Cells(i, 2).Value = lettre Then
lettre = Worksheets("code").Cells(i, 3).Value
Exit For
End If
Next i
message_code = message_code & lettre
Next j
Worksheets("codeur").Select
Worksheets("codeur").Range("texte_decode").Value = message_code
End Sub
el voici le decodage:
Sub decodeAvocat_QuandClic()
texte_a_decoder = Range("texte_a_decoder").Value
longueur_texte = Len(texte_a_decoder)
message_code = ""
For j = 1 To longueur_texte
lettre = Mid(texte_a_decoder, j, 1)
lettre = UCase(lettre)
Worksheets("code").Select
For i = 2 To 39
If Worksheets("code").Cells(i, 3).Value = lettre Then
lettre = Worksheets("code").Cells(i, 2).Value
Exit For
End If
Next i
message_decode = message_decode & lettre
Next j
Worksheets("decodeur").Select
Worksheets("decodeur").Cells(7, 2).Value = message_decode
End Sub
voilà! merci beaucoup pour votre aide! je progresse!!!=)
pour decoder j'ai fait l'inverse du codage:
codage:
Sub codeAvocat_QuandClic()
texte_a_coder = Range("texte_a_coder").Value
longueur_texte = Len(texte_a_coder)
message_code = ""
For j = 1 To longueur_texte
lettre = Mid(texte_a_coder, j, 1)
lettre = UCase(lettre)
Worksheets("code").Select
For i = 2 To 39
If Worksheets("code").Cells(i, 2).Value = lettre Then
lettre = Worksheets("code").Cells(i, 3).Value
Exit For
End If
Next i
message_code = message_code & lettre
Next j
Worksheets("codeur").Select
Worksheets("codeur").Range("texte_decode").Value = message_code
End Sub
el voici le decodage:
Sub decodeAvocat_QuandClic()
texte_a_decoder = Range("texte_a_decoder").Value
longueur_texte = Len(texte_a_decoder)
message_code = ""
For j = 1 To longueur_texte
lettre = Mid(texte_a_decoder, j, 1)
lettre = UCase(lettre)
Worksheets("code").Select
For i = 2 To 39
If Worksheets("code").Cells(i, 3).Value = lettre Then
lettre = Worksheets("code").Cells(i, 2).Value
Exit For
End If
Next i
message_decode = message_decode & lettre
Next j
Worksheets("decodeur").Select
Worksheets("decodeur").Cells(7, 2).Value = message_decode
End Sub
voilà! merci beaucoup pour votre aide! je progresse!!!=)