problème procédure - VB/VBA/VBS - Programmation
Marsh Posté le 29-03-2005 à 20:00:36
C'est quoi "procedure" ??? Je metterais : 
Sub ReverseArray(ByVal t() As Integer)  | 
 
Sinon qu'est-ce qui ne marche pas exactement ? Message d'erreur ? Affichage bizarre ?
Marsh Posté le 29-03-2005 à 20:12:19
Ben quand je mets : 
 
Sub ReverseArray(ByVal T() As Integer) 
 
ça me met que l'argument du tableau doit etre ByRef 
 
donc quand je mets 
 
Sub ReverseArray(ByVal T(ByRef) As Integer) 
 
ça me dit que l'argument du tableau doit être objectif 
 
je comprends plus rien 
 
 
La suite est : 
 
 
Dim i As Integer 
Dim T1(5) As Integer 
 
For i = 1 To 5 
T1(i) = T(5 - i + 1) 
Next 
 
For i = 1 To 5 
MsgBox ("valeurs" & T1(i)) 
Next 
 
End 
 
Sub ok() 
Dim T(5) As Integer 
Dim i As Integer 
 
For i = 1 To 5 
T(i) = i * 2 
Next 
MsgBox (tableauT()) 
 
End Sub 
Marsh Posté le 29-03-2005 à 20:21:05
C'est quoi ça : 
Sub ReverseArray(ByVal T(ByRef) As Integer)  | 
 
 
 
Quand il dit qu'il faut mettre ByRef, c'est : 
Sub ReverseArray(ByRef T() As Integer)  | 
 ![]()
Marsh Posté le 29-03-2005 à 20:41:01
ben c'et simple : 
 
tu déclares un entier i de valeur 1 
tu lis ton tableau à l'envers, dans une boucle de 5 à 1 
tu mets tableau(index) dans tableau(i) 
tu incrémentes i de 1 
... 
 
Marsh Posté le 04-04-2005 à 22:45:19
Bonsoir, 
 
Je suis tjrs dessus et je ne vois pas ce qui ne va pas dans le prog ... en fait on a pas vu comment faire une boucle allant de 5 à 1 : 
 
 
Sub tableau(ByRef T() As Integer) 
 
Dim i As Integer 
Dim T1(5) As Integer 
 
    For i = 1 To 5 
        T(i) = T1(5 - i + 1) 
    Next 
 
End Sub 
 
dans cette partie, j'essaie d'écrire que le nouveau tableau T va prendre la valeur du tableau initial en partant à l'envers. pour donc avoir l'ordre décroissant. 
 
Sub test() 
Dim T1(5) As Integer 
Dim i As Integer 
 
    For i = 1 To 5 
        T1(i) = i * 2 
    Next 
 
        Call tableau(5) 
 
End Sub 
 
dans cette partie, je fixe un tableau croissant pour ça j'ai crée un tableau tel que il soit 2 4 6 8 10 croissant. 
et ensuite j'aimerai appeller la procédure du haut afin qu'il s'affiche par ordre décroissant 
 
pourriez vous me dire ce qui ne va pas svp? 
 
merci bcp
Marsh Posté le 29-03-2005 à 19:41:45
Bonsoir,
 j'aimerai savoir si quelqu'un pourrait m'éclairer sur mon, ou mes erreurs svp,  
J'ai un exercice en info, sur les procédures dans VBA il faut que j'écrive la procédure Renverser qui prend comme paramètre un tableau dentiers de 5 cases qui est trié par ordre croissant et le trie cette fois-ci par ordre décroissant.
Le problème : le prof n'a pas mis son cours en ligne, donc je ne me suis aidée que des cours que j'ai pu trouver sur le net, mais bon, c'est pas trop ça : mon programme ne marche donc pas
procedure tableau(T() as Integer)
Dim i, j, aux As Integer
Dim T1(5) As Integer
For i = 1 To 5
T1(i) = T(5 - i + 1)
Next
For i = 1 To 5
MsgBox ("valeurs" & T1(i))
Next
End
Sub ok()
Dim T(5) As Integer
Dim i As Integer
For i = 1 To 5
T(i) = i * 2
Next
msgbox(tableauT())
End Sub
merci !