begin process at 2012 02 16 14:07:31
  Trouver un code source :
 
dans
 
Accueil > Forum > 

VB.NET et VB 2005

 > 

Base de données

 > 

SQL Server

 > 

Boucle for dans une datatable


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

Boucle for dans une datatable

mercredi 30 juillet 2008 à 16:20:49 | Boucle for dans une datatable

Xavleb

Bonjour,

Je developpe une application utilisant une base de donnée sql serveur permettant l'adressage ip d'une entreprise. Tout dabord, je fais un select pour ensuite remplir une datatable. Ensuite je voudrais faire une boucle for qui me permette de verifier chaque ligne de ma table jusqu'a la dernière ligne. Et si on trouve une valeur égale à la variable Ipp alors on appel une fonction qui modifie Ipp et on recommence la boucle. Le problème c'est que ma boucle for ne fonctionne pas et je ne sais pas pourquoi. Merci d'avance pour vos réponses. le code est le suivant:

      

        strsql1 = "SELECT T_MATER.ADR_IP FROM T_MATER, T_SS_PLAGE WHERE ADR_DEB_SSP='" & ssp & "' AND T_MATER.ID_SSP=T_SS_PLAGE.ID_SSP"

 '  recupération de toutes les @ IP où la sous plage = ssp

       

        objetcommand = New SqlCommand(strsql1)

        objetdataadapter = New SqlDataAdapter(objetcommand)

        objetcommand.Connection() = con

        objetdataadapter.Fill(objetdataset, "T_MATER")

        objetdatatable = objetdataset.Tables("T_MATER")

 ' mettre le contenu dans une datatable   

 

           For rownumber = 0 To rownumber = objetdatatable.Rows.Count - 1

          ' pour toutes les lignes de ma datatable

                          If objetdatatable.Rows(rownumber).Item("ADR_IP") = Ipp Then
                            ' psi le contenu de la ligne rownumber 
                               est egal à la variable Ipp (à l'addresse)

               

                         Dim nbal2 As String

                          nbal2 = propos_ip(troisdernierchar2, troisdernierchar)

                          rownumber = -1
' pour appel de la fonction et remise de rang à zéro pour recommencer la boucle et revérifier               
                          EndIf

            rownumber += 1' j'incrémente la ligne et je recommence la verification

        Next

 

 

    J'éspère avoir été clair. Si qqn peut corriger mon(mes) erreurs svp.

Xavier.

mercredi 30 juillet 2008 à 18:48:14 | Re : Boucle for dans une datatable

LIBRE_MAX

Réponse acceptée !
Salut,
je connais pas trop vb net, mais renseignes toi sur les paramètres de ta connection ou de ton objet Command.
Je crois bien que c' est une question de curseur qui doit être dynamic, si toutefois c' est une question de boucle qui n' avance pas.


... Y'en a même qui disent qu'ils l'ont vu voler.
mercredi 30 juillet 2008 à 22:26:23 | Re : Boucle for dans une datatable

Galain

Membre Club
Réponse acceptée !
Salut je ne te donnerais surement pas la solution mais plusieurs choses me chiffonnent
1 ) For rownumber = 0 To rownumber = objetdatatable.Rows.Count - 1 à remplacer par For rownumber = 0 To objetdatatable.Rows.Count - 1

2)  If objetdatatable.Rows(rownumber).Item("ADR_IP") = Ipp Then
   cette condition reviendra sans arrêt car tu ne modifies aucun des 2 éléments dans le code qui est déclenché par cette condition
  
  explication = IF A= B then
       on ne modifie ni A ni B
  end if

Le condition reviendra alors à l'identique et la boucle For tournera sans fin

3) Utiliser un Do Loop qui encadre la boucle (éviter de modifier la variable de boucle)
Dim Trouve as Boolean = False
Do
      For ..............
             Application.doevents()
             if A = B then
                   traitement de cette condition (faire en sorte que cette condition pour cette ligne ne revienne pas : voir au dessus)
                   Trouve  = True
                   Exit do ' on sort de la boucle For  Next
             End If
     Next
     If Trouve = False Then Exit Do  ' on sort de la boucle Do car plus rien à traiter
loop

J'espère que cela t'aidera

La théorie, c'est quand on sait tout et que rien ne fonctionne. La pratique, c'est quand tout fonctionne et que personne ne sait pourquoi.

GRENIER Alain
jeudi 31 juillet 2008 à 11:27:30 | Re : Boucle for dans une datatable

Xavleb

Merci de vos réponses. Cependant je ne suis pas arrivé à faire foncyionner ma boucle, mais je m'y suis pris autrement, j'ai utiilser la méthode foundrow. Les paramètres de connection étaient bon Libre_max. Sino pour répondre à alain, je modifiait mon paramètre B mais je l'ai pas mis dans le message, car le pb ne venait pas de là. Je pense qu'il venait du fait qu' il n'y a pas d'enregistrement courant pour une datatable,pas de pointeur sur un enregistrement, c'est nous même qui gérons RowNumber, une simple variable qui contient le numéro de l'enregistrement (l'index du DataRow) sur lequel on travaillez. Et je pense que je le gérais mal.



Cette discussion est classée dans : boucle, ip, datatable, for, rownumber


Répondre à ce message

Sujets en rapport avec ce message

Boucle For et concaténation [ par Vinie ] Bonjour,J'ai dans une page un select1 qui contient plusieurs options choisies à partir d'un select2, tout ça étant contenu dans un FORM et envoyé à un Arreter l'execution pendant une boucle For [ par fbrt ] Bonjour a tousJe cherche un moyen pour arreter une boucle For pendant son execution a partir d'un bouton annuler. Si je mets un bouton , son évenement probleme boucle next for [ par casav ] For i = 1 To 4 If "LblImg" & i & .Caption "" And "Lblvirage" & l & .Caption "" Theninstructionsnext ilblimg et lbl virage representent 2 labelsPo Probleme avec un Shell dans une Boucle For [ par AmaRiNo ] Voici mon problème, For Shell("c:\prog.exe") Test1("c:\prog.out") 'fichier créer par prog.exeNextJ'ai essayer plusieurs code que j'ai trouver sur problème avec la fonction getPixel dans une boucle For [ par Battant ] Bonjour à tous,Je suis en train de créer un programme d'annalyse d'image en utlisant la fonction getpixel progrmmée par un des membre de VBfrance.Voil Probleme de boucle [ par lebalrog ] Salut a tous!G un GROS probleme ke j arrive pas a resoudre. G une boucle for qui est assez importante en taille, et kand je lance le prog, il me dit " Aidez-moi SVP Boucle for each dans access [ par Enzino ] Bonjour à tous,PROBLEME AVEC BOUCLE "for each"*******************************Mon but est de parcourir le formulaire "F_Facturation" et de faire la som boucle for each [ par Enzino ] Quelqu'un pourrait-il m'expliquer comment fonctionne la boucle for each dans Access ??for each xxxx in xxxxnextCe sont les xxx que je ne comprends p boucle for each, recuperer l'adresse d'une cellule sous excel [ par vincent82 ] bonjourvoila ma question :j'effectue une boucle for each sur un range de cellulesfor each valeur in range("A1:A7")valeur contient alors successivement Gestion d'Interuption et boucle for, while. [ par xor02 ] Salut,j'aimerais savoir comment il faut faire pour intérompre une boucle "FOR". Par exemple j'ai deux boutons commandes "OK" et "CANCEL". Lorsque je c


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 : 2,714 sec (3)

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