Rechercher : dans
Par :

Traduction de VBA en algorithme

Dernière réponse le 10 nov 2007 à 20:48:58 so, le 5 nov 2007 à 16:05:46 
 Signaler ce message aux modérateurs

Bonjour,
Je souhaiterais avoir la traduction de ce VBA en algorithme si c'est possible!
merci!

Private Sub BC_ok_Click()

i = 2

While ActiveSheet.Cells(i, 1).Value <> ""
i = i + 1
Wend
ActiveSheet.Cells(i, 1).Value = ZT_nom.Value

ActiveSheet.Cells(i, 2).Value = ZT_ad1.Value
ActiveSheet.Cells(i, 3).Value = ZT_ad2.Value
ActiveSheet.Cells(i, 4).Value = ZT_CP.Value
ActiveSheet.Cells(i, 5).Value = ZT_ville.Value
ActiveSheet.Cells(i, 6).Value = ZT_cedex.Value
ActiveSheet.Cells(i, 7).Value = ZT_tel.Value
ActiveSheet.Cells(i, 8).Value = ZT_fax.Value

End Sub


Private Sub BO_retour_Click()
FM_nouvoclt.Hide
BO_retour = False

FM_Accueil.Show

End Sub

Private Sub Label1_Click()

End Sub

Configuration: Windows XP
Firefox 2.0.0.6

Meilleures réponses pour « Traduction de VBA en algorithme » dans :
VBA et les collections d'objets. VoirVBA et les collections d'objets Quand plusieurs (beaucoup de) contrôles sont mis sur une feuille ou un Userform il est parfois fastidieux d'écrire du code dans chaque évènement des contrôles. Ce Tuto vous permet de traiter vos contrôles comme...
VBA Un timer une seconde tout simple VoirEn VBA, il n'y a pas (du moins à ma connaissance) de composant Timer. On peut en créer un très facilement. Dans un module de feuille Activer/ dés activer le timer : Placer un bouton sur Feuil1 et mettre le code... Private Sub...
Traducteurs en ligne et logiciels de traduction gratuits VoirLes traducteurs en ligne et logiciels gratuits Pour votre travail ou vos études, les traducteurs en ligne et logiciels gratuits de traduction sont plus pratiques qu'un dictionnaire et vous font gagner du temps. Sachez cependant qu'ils ne sont pas...
Introduction à l'algorithmique VoirNotion d'algorithme La mise au point d'un programme informatique se fait en plusieurs étapes. Il s'agit de fournir la solution à un problème, la première étape consiste donc à analyser le problème, c'est-à-dire en cerner les limites et le mettre...

1

so, le 5 nov 2007 à 16:35:42

Bonjour,
j'ai trouvé cet algo mais je sait pas si c'est juste donc dite moi!!

variables
i en entier
LC en entier
nom en caractère
ad1 en caractère
ad2 en caractère
CP en entier
Ville en caractère
cedex en entier
tel en entier
fax en entier

Début

i=2
Tant que
LC<>""
i=i+1

alors
LC [i,1]="nom"
lire"nom"
LC [i,2]="ad1"
lire "ad1"
LC [i,3]="ad2"
lire "ad2"
LC [i,4]="CP"
lire "CP"
LC [i,5]="ville"
lire "ville"
LC [i,6]="cedex"
lire "cedex"
LC [i,7]="tel"
lire "tel"
LC [i,8]="fax"
lire "fax"

Fin tant que
fin

Répondre à so

2

Polux31, le 5 nov 2007 à 16:48:25

Bonjour,

lol, pourquoi faire l'algo si le code existe ??? en principe on fait d'abord l'algo et ensuite on code ...

;o)

Polux

Répondre à Polux31

3

so, le 5 nov 2007 à 16:53:11

Bonjour,

lol ben di moi o moins si sa correspond!

Répondre à so

4

Polux31, le 5 nov 2007 à 19:14:27

Salut,

Non là ça ne va pas ... tu as fait une boucle sans fin ...du moins jusqu'au limite de ligne d'Excel .... que fait le "alors" ?

Tu dis : Tant que la cellule est vide alors j'ajoute 1 à i ... jusque là, c'est bon. Mais après ????

;o)

Polux

Répondre à Polux31

5

linette, le 5 nov 2007 à 19:54:59

Bonjour,
donnes nous la réponse polux stp stp!!

Répondre à linette

6

Polux31, le 5 nov 2007 à 20:05:11
  • +1

Mdrrrr, nan ... je fais pas les exos ... dsl ... j'ai déjà donné assez de remarques et en retour je ne vois même pas un semblant de propositions ... aller on s'y remet, on reprend les cours et les bonnes vieilles méthodes de teste, et on revient ici avec un algo qui tient la route. Ok ?

J'ai aussi une remarque sur la déclaration des variables ... Il y en a 5 de bonnes et 5 de fausses ... ça fait la moyenne, certe, mais ça compile pas le programme ...

;o)

Polux

Répondre à Polux31

7

so, le 6 nov 2007 à 12:28:36

Re,
bah en plus on c'est trompé d'algo c'était pas celui la kon devait faire c'était un autre je vais le coller à la suite c'est toujours un peu le même principe de toutes façon! si tu peu y jeté un oeil ca serai vrémen sympa!

variables
i en entier
LC en entier
Fact en caractère
Date en entier
FDT en caractère
GV en caractère
MM en caractère
VQR en caractère
CH en caractère
BSR en caractère
MV en caractère
RL en caractère
CCL en caractère
ELP en caractère
CA en caractère
PCD en caractère
FJ en caractère
FP en caractère
SOR en caractère


Début

i=2
Tant que
LC<>""
i=i+1
fin tant que

LC [i,1]="clt "
lire"clt"
LC [i,2]="fact"
lire "fact"
LC [i,3]="date"
lire "date"
LC [i,4]="FDT "
lire"FDT"
LC [i,5]="GV"
lire "GV"
LC [i,6]="MM"
lire "MM"
LC [i,7]="VQR"
lire "VQR"
LC [i,8]="CH"
lire "CH"
LC [i,9]="BSR"
lire "BSR"
LC [i,10]="MV"
lire "MV"
LC [i,11]="RL"
lire "RL"
LC [i,12]="CCL"
lire"CCL"
LC [i,13]="ELP"
lire "ELP"
LC [i,14]="CA"
lire "CA"
LC [i,15]="PCD"
lire "PCD"
LC [i,16]="FJ"
lire "FJ"
LC [i,17]="FP"
lire "FP"
LC [i,18]="SOR"
lire "SOR"


Fin

Merci!!

Répondre à so

8

Polux31, le 6 nov 2007 à 12:46:39

Salut,

Ca me parait déjà mieux ... sauf que je ne comprends pas pourquoi "LC" est un entier ? De même pour "Date". Soit "Date" est de type Date (lol) ou bien c'est une chaine de caractères.

Si je traduits en bon français :

Tant que la cellule (i) n'est pas vide, j'ajoute 1 à i et je teste la cellule suivante, sinon je sors du tant que ... et dans chaque cellule de i j'écris le texte qui va bien ... :o)

;o)

Polux

Répondre à Polux31

9

so, le 6 nov 2007 à 12:59:05

Re,

Oki merci pour tes remarques c'est vrément trés sympa de ta part de nous aidé :d donc pour LC je dois le déclaré en caractère?

Répondre à so

10

Polux31, le 6 nov 2007 à 13:38:51

Je crois plutot que c'est un "objet" ... :oD

Mais vous n'en êtes pas encore là ... donc je ferai plutôt, pour être plus clair dans l'algo (garder en tête, qu'une autre personne que vous doit pouvoir traduire votre algo en code ...):

FE = Feuille Active Excel
Cel(i) = cellule courante

donc :

Tant que FE.Cel(i) <> " "
...

Voilà, l'algo est un pseudo langage qui mélange français + code, et qui doit servir un developpeur dans le code de telle ou telle fonction ou procédure.

Donc dans la déclaration des variables, indiquer à quoi sert la variable. Ex : i = entier 'index de boucle initialisé à 2 et incrémenté d'un pas de 1, permettant d'indexé les cellules.

En écrivant ça, j'ai relu l'algo... il y a une chose que je viens de remarquer. Après le tant que, que doit faire le programme ? Il y a un blème là aussi ...

Répondre à Polux31

11

so, le 6 nov 2007 à 13:51:24

Alors g modifier le début de l'algo j'ai pa le temps de faire la suite

Début

i=2
Tant que
FE.cel (i)<>""
i=i+1
ecrire “entrez les informations”

fin tant que

Si j'ai tout compris il faudra donc remplacé LC par FE.cel

Merki!!

Répondre à so

12

so, le 6 nov 2007 à 15:38:55

Donc re-voila l'algo corrigé jespère kil ny a plus derreur!! lol


variables
i en entier
FE en Feuille Active Excel
Cel(i) en cellule courante
Fact en caractère
Date en date
FDT en caractère
GV en caractère
MM en caractère
VQR en caractère
CH en caractère
BSR en caractère
MV en caractère
RL en caractère
CCL en caractère
ELP en caractère
CA en caractère
PCD en caractère
FJ en caractère
FP en caractère
SOR en caractère


Début

i=2
Tant que
FE.cel (i)<>""
i=i+1
ecrire “entrez les informations”

fin tant que

FE.cel [i,1]="clt "
lire"clt"
FE.cel [i,2]="fact"
lire "fact"
FE.cel [i,3]="date"
lire "date"
FE.cel [i,4]="FDT "
lire"FDT"
FE.cel [i,5]="GV"
lire "GV"
FE.cel [i,6]="MM"
lire "MM"
FE.cel [i,7]="VQR"
lire "VQR"
FE.cel [i,8]="CH"
lire "CH"
FE.cel [i,9]="BSR"
lire "BSR"
FE.cel [i,10]="MV"
lire "MV"
FE.cel [i,11]="RL"
lire "RL"
FE.cel [i,12]="CCL"
lire"CCL"
FE.cel [i,13]="ELP"
lire "ELP"
FE.cel [i,14]="CA"
lire "CA"
FE.cel [i,15]="PCD"
lire "PCD"
FE.cel [i,16]="FJ"
lire "FJ"
FE.cel [i,17]="FP"
lire "FP"
FE.cel [i,18]="SOR"
lire "SOR"


Fin

merci!!

Répondre à so

13

so, le 6 nov 2007 à 16:03:18

Voila on a un deuxième souci on essaie de faire un second algo mais disons kon ne sait pas par ou commencer!!!

Donc on doit réalisé un algo qui permet de mettre différentes information sur une même feuille.
On a trois feuilles excel : clients, produits et une feuille récapitulative.
On doit metre dans une quatrième feuille des informations contenus dans les feuilles citer ci-dessus.
Le but de la manoeuvre est de créer une facture avec le nom du client, la désignation du produit et la quantité de produit acheté.

eske tu pouré nous doné une piste pour kon puisse commencer

merki!!

Répondre à so

14

Polux31, le 6 nov 2007 à 16:06:23

Je ne comprends toujours ce que fait le programme après le fin tant que ...Pourquoi faire "lire "clt" ??? de plus si clt est déclaré comme variable, il ne faut les entre-cotes ...

Répondre à Polux31

15

so, le 6 nov 2007 à 16:21:37

Nouvelle version un peu modifier si on a pigé kan on déclare en variable on a pas besoin de les lire après?

variables
i en entier
FE en Feuille Active Excel
Cel(i) en cellule courante
Fact en caractère
Date en date
FDT en caractère
GV en caractère
MM en caractère
VQR en caractère
CH en caractère
BSR en caractère
MV en caractère
RL en caractère
CCL en caractère
ELP en caractère
CA en caractère
PCD en caractère
FJ en caractère
FP en caractère
SOR en caractère


Début

i=2
Tant que
FE.cel (i)<>""
i=i+1
ecrire “entrez les informations”

fin tant que

Répéter
FE.cel [i,1]=clt
FE.cel [i,2]=fact
FE.cel [i,3]=date
FE.cel [i,4]=FDT
FE.cel [i,5]=GV
FE.cel [i,6]=MM
FE.cel [i,7]=VQR
FE.cel [i,8]=CH
FE.cel [i,9]=BSR
FE.cel [i,10]=MV
FE.cel [i,11]=RL
FE.cel [i,12]=CCL
FE.cel [i,13]=ELP
FE.cel [i,14]=CA
FE.cel [i,15]=PCD
FE.cel [i,16]=FJ
FE.cel [i,17]=FP
FE.cel [i,18]=SOR


Fin

merci!

Répondre à so

16

Polux31, le 6 nov 2007 à 16:27:09

Oui c'est ça :oD ... mais il faut instancier les variables quand même ...

ex :
clt en caractères
clt = "clt"
...
et là c'est bien pour le reste.

bon courage pour la suite.

;o)

Répondre à Polux31

17

Amandine, le 10 nov 2007 à 20:45:20

Bonjour,
Merci beaucoup c'est moi qui avait mis ce VBA sur internet et vous m'avez beaucoup aidé.

Répondre à Amandine

18

 ShaBoo, le 10 nov 2007 à 20:48:58

Pas de prob ...

Si on peut aider et non faire c'est mieux ;p

Un p'tit résolu alors ...

Répondre à ShaBoo