begin process at 2012 02 14 11:51:55
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive Visual Basic & VB.NET

 > 

Archives Visual Basic

 > 

J'AI BESOIN D'AIDE !!!! :)

 > 

probleme pour passer un tableau a une fonction


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

probleme pour passer un tableau a une fonction

mardi 6 décembre 2005 à 08:32:57 | probleme pour passer un tableau a une fonction

D3m3T05

salut a tous. j'ai un petit probleme de passage de tableau a une fonction. voicit le code:
deuxieme question, pour sortir des boucle qui permette de remplir les tableaux via les InputBox il faut rentrer le mot "fin" le probleme c'est que le dernier argument de mon tableau devient alors le mot "fin" comment, apres etre sortit de la boucle "effacer" la derniére entrée du tableaux (donc le mot fin). merci pour vos conseils. 

Option Compare Database
Option Explicit

----------------------------------------------------------------------------------------------
Sub testCreationrequeteDynamique()

'declaration des variables
Dim nomBase, ordreTris(20), condition(20), szEnd As String <<< voicit les tableaux
Dim intOrdreTris, intCondition As Integer    
Dim intSortieBoucle As Integer

szEnd = "fin"
intOrdreTris = 0
intSortieBoucle = 0

'1ere question :
'demande a l'utilisateur le nom de la base de donnée a ouvrir
nomBase = InputBox( _
"entrez le nom de la base de donnée a ouvrir", "nomBase", "currentDb", "5000", "5000")
'fin de l'etape de selection de base de donnée

'2eme question
'boucle gerant l'ordre de tris
Do Until intSortieBoucle <> 0

ordreTris(intOrdreTris) = InputBox( _
"entrez l'ordre de tris, triez par ordre decroissant en entrant DESC a la fin de votre selection. mettez fin a la selection en tapant fin ", _
"orderTris", "Nomducompteur", "5000", "5000")

If ordreTris(intOrdreTris) = szEnd Or intOrdreTris > 20 Then
intSortieBoucle = 1
End If

intOrdreTris = intOrdreTris + 1

Loop
'fin de la question sur l'ordre de tris

'on remet intSortieBoucle a 0
intSortieBoucle = 0

3eme question
'on met intOrdreTris a 0 comme ca on accede au premier enregistrement
intOrdreTris = 0

'boucle gerant les condition de tris
Do Until intSortieBoucle <> 0

condition(intCondition) = InputBox("entrez la condition relative a " & ordreTris(intOrdreTris) & " les condition peuvente etre (par exemple pour date : >#30/09/2005# : trierat les enregistrement datant d'apres le 30/09/2005.)(voir page 165-171 de l'assistant visuel d'access)mettez fin a la saisie par fin." _
, "condition", "", "5000", "5000")

If condition(intCondition) = szEnd Then
intSortieBoucle = 1
End If

intCondition = intCondition + 1
intOrdreTris = intOrdreTris + 1

Loop
'fin de la boucle gerant les condition de tris.


'passage des donnée a la fonction
Call AffichageRequeteDynamique(nomBase, ordreTris(20), intOrdreTris, condition(20), intCondition)

<<et la je recoit  le message "erreur de complation type d'argument By ref incompatible." et la variable nom base est mise en surbrillance>> 


End Sub

----------------------------------------------------------------------------------------------
'voicit la fonction a laquelle les donnée sont passée:

Sub AffichageRequeteDynamique(nomBase As String, _
 ordreTris1() As String, intOrdreTris1 As Integer, _
condition1() As String, intCondition1 As Integer)

'ici le reste du code va utiliser les variables


End Sub

mardi 6 décembre 2005 à 11:15:15 | Re : probleme pour passer un tableau a une fonction

vpoyo

Réponse acceptée !
salut,

pour le passage de tableau il faut passer par "référence" si tu as quelques bases de C c'est équivalent aux pointeurs
pour celà il suffit de mettre le mot clé byref dans la déclaration des pamètres de la procédure (sub) AffichageRequeteDynamique

ton second problème est juste une "petite erreur d'algo". récupère le retour de ton inputbox dans une variable de type string.
ensuite tu test si cette variable est différent de fin, et dans ce cas là tu l'ajoute a ton tableau sinon tu as fini et tu quittes la boucle.
en résumé, plus simple que de chercher à l'enlever, il suffit de pas le mettre :)

Vincent
mardi 6 décembre 2005 à 14:50:27 | Re : probleme pour passer un tableau a une fonction

D3m3T05

un grand merci a vincent pour sa réponse claire et précise qui m'a ete tres utile. en plus j'ai tout compris (pour une fois).


Cette discussion est classée dans : fin, fonction, condition, intordretris, intcondition


Répondre à ce message

Sujets en rapport avec ce message

creation de list box sous VBA [ par D3m3T05 ] bonjour a tous, j'ai un petit probleme. je ne sait pas comment creer une listBox. si vous pourriez m'indiquer comment creer une listoxB comprenant une Vb.net s'arrette à la 1er condition!!! [ par Goldeneye007 ] Vb.net délire quand je met une condition avec un si et un sinon le programme regarde toujours la 1ere condition pk?Vlà le si : Function <fo Trouver 1 caractère dans une String en partant de la fin........... [ par cissou06 ] Bonjour!Voilà, j'ai une numérotation de titre, par exemple "1.12.3" et je voudrais avoir la position du dernier "." dans cette chaîne de caractères. J Appel a une fonction [ par sbouquet ] Bien le bonjourlorsque je fais appel, dans une fonction x, a une fonction y, est il possible en plus de definir la position a laquelle x doit se refer Déclenchement d'une fonction après la fin d'une autre [ par furio31 ] Salut, Je débute en dvp d'applications windows sous Visualbasic.net.Voilà mon problème :Je veux déclencher une fonction 2 dès qu'une autre fonction 1 [Debutant VBscript] Fonction de nettoyage à lancer à la fin du script (fin normal ou provoqué) [ par ludobzh ] Je ne connais pas VB ni VBscript, j'ai commencé un script mais j'ai un soucis: Ce script créé un fichier temporaire qui est utilisé en lecture un peu Suspendre jusqu'à la fin de l'éxecution d'une fonction [ par RPG3000 ] Salut tout le monde :)J'ai une fonction fnDownloadFile, qui est appelée a plusieurs points du programme. Je souhaiterai que le programme puisse suspen Critère de tri dans une requête et condition ... [ par philippebezoteaux ] Bonjour,Je cherche à faire une fonction de tri dans une requête par rapport à un champ donné.Ca c'est plutôt simple mais je voudrais que cette conditi remplir une ligne en rouge en fonction d'une condition [ par jiffey ] Bonjour à vous,   Je souhaiterais écrire un code VB qui remplisse une ligne à chaque fois qu'une condition est réalisée.   Concrètement dans m Date de fin de mois [ par tolt ] Bonjour,Avez-vous svp une petite fonction qui vous renvois à partir de la date du jour la date de fin de mois.Exemple : Nous sommes le 25/06/2008 et l


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,950 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales