Article View: free.it.visual-basic
Article #260Re: Ciclo 'For each file in.....'
From: Rafunk
Date: Fri, 17 Nov 2006 15:28
Date: Fri, 17 Nov 2006 15:28
112 lines
4874 bytes
4874 bytes
AntFast wrote: > "Rafunk" <zero@none0.it> ha scritto nel messaggio > news:455d7d69$0$3205$4fafbaef@reader2.news.tin.it... >> AntFast wrote: >>> "Rafunk" <zero@none0.it> ha scritto nel messaggio >>> news:455c525a$0$7637$4fafbaef@reader1.news.tin.it... >>>> AntFast wrote: >>>>> Ciao a tutti. >>>>> Come si fa riportare il controllo all'inizio del ciclo >>>>> 'for each file in ......' >>>>> Cioe', se si e' verificata una condizione, deve saltare >>>>> il codice che viene a valle (codice2) e ripartire dal >>>>> 'for each file in ......' >>> ..[cut..] >>> >>>> Sempre che tu non voglia reinizializzare il loop, ripartendo dal >>>> primo elemento. >>>> In tal caso sei costretto ad usare GoTo (che si dovrebbe usare con >>>> parsimonia >>>> per evitare di rendere poco leggibile e "spaghettoso" il codice). >>> >>> Ciao Raf >>> "For each file in ....... " non significa che per ogni file del >>> gruppo esegue il codice a valle ? >> >> S�. >> >>> Non capisco perche' con l'istruzione GoTo debba >>> reinizializzare il loop, ripartendo dal primo elemento :-( >>> Non dovrebbe passare all'elemento successivo ? >> >> Mi spiego meglio. Intendevo dire: se la tua condizione deve >> determinare una >> ripartenza del loop, allora devi usare GoTo. >> >> StartLoop: >> for each file in fld.Files >> ....codice >> ....codice >> if condizione then >> GoTo StartLoop >> endif >> ....codice2 >> ....codice2 >> next >> > > Ciao Raf e grazie per la pazienza che mi usi.. > Quindi, se ho ben capito, NON e' possibile passare > il controllo all'istruzione "for each...." dall'interno del > ciclo stesso.... peccato! La stessa cosa vale anche > per il ciclo for...next ? Evidentemente non mi sono ancora spiegato bene: intendevo dire che il GoTo � l'unico modo semplice per reinizializzare il loop (a meno di non usare 2 loop nidificati, ma lasciamo stare), NON che non puoi usare GoTo in altri casi! > Secondo me, se si potesse, si snellirebbe molto di piu' > il codice, esempio: > For each..... > ...codice... > if condizione then "TORNA a forn each...." (e quindi passa > all'elemento successivo del gruppo) > ....codice... > ....codice... > if condizione2 then "TORNA a forn each...." (come sopra..) > ....codice... > ....codice... > next > Anziche' : > For each..... > ...codice... > if NOT condizione then > ....codice... > ....codice... > if NOT condizione2 then > ....codice... > ....codice... > end if > end if > next > Specialmente se le condizioni scritte sono molteplici. > Nel caso nostro dovremmo annidare tanti if...end if . > E cosi' ? > Ti auguro un buon fine settimana.... > AnfFast Con GoTo si pu� fare saltare da/a qualunque punto del codice (purch� nella stessa sub/function)! Ma in questo caso non si deve tanto far saltare al For quanto al Next (che effettua l'incremento o il passaggio all'elemento seguente nella collection). Effettivamente in casi come questi anch'io uso il GoTo per migliorare la leggibilit� del codice: For each..... ...codice... if condizione then GoTo Prossimo ....codice... ....codice... if condizione2 then GoTo Prossimo ....codice... ....codice... Prossimo: next Buon WE pure a te. Ciao Raf ----------------------------------------------------- Funk: cooler than the other side of the pillow.
Technical Details
Message-ID:
<455dd521$0$3208$4fafbaef@reader2.news.tin.it>Path:
arc1-ca.pugleaf.net!g2news2.google.com!news4.google.com!border1.nntp.dca.giganews.com!nntp.giganews.com!aotearoa.belnet.be!news.belnet.be!newsgate.cistron.nl!xs4all!feeder.news-service.com!feeder.news-service.com!proxad.net!213.200.89.82.MISMATCH!tiscali!newsfeed1.ip.tiscali.net!nntp.eutelia.it!feeder.news.tin.it!spool.news.tin.it!not-for-mailReferences:
<VqP6h.9067$mZ5.239@tornado.fastwebnet.it> <455c525a$0$7637$4fafbaef@reader1.news.tin.it> <ew17h.10071$mZ5.8834@tornado.fastwebnet.it> <455d7d69$0$3205$4fafbaef@reader2.news.tin.it> <Xlk7h.12369$mZ5.8352@tornado.fastwebnet.it>Show Full Headers
Complete Article Headers
X-Google-Thread: f94ee,1434dad1ca015974 X-Google-Attributes: gidf94ee,public X-Google-Language: ITALIAN,CP1252 Path: arc1-ca.pugleaf.net!g2news2.google.com!news4.google.com!border1.nntp.dca.giganews.com!nntp.giganews.com!aotearoa.belnet.be!news.belnet.be!newsgate.cistron.nl!xs4all!feeder.news-service.com!feeder.news-service.com!proxad.net!213.200.89.82.MISMATCH!tiscali!newsfeed1.ip.tiscali.net!nntp.eutelia.it!feeder.news.tin.it!spool.news.tin.it!not-for-mail From: "Rafunk" <zero@none0.it> Newsgroups: free.it.visual-basic References: <VqP6h.9067$mZ5.239@tornado.fastwebnet.it> <455c525a$0$7637$4fafbaef@reader1.news.tin.it> <ew17h.10071$mZ5.8834@tornado.fastwebnet.it> <455d7d69$0$3205$4fafbaef@reader2.news.tin.it> <Xlk7h.12369$mZ5.8352@tornado.fastwebnet.it> Subject: Re: Ciclo 'For each file in.....' Date: Fri, 17 Nov 2006 16:28:27 +0100 MIME-Version: 1.0 Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: 8bit X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 6.00.2800.1437 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1441 Lines: 113 Message-ID: <455dd521$0$3208$4fafbaef@reader2.news.tin.it> Organization: TIN.IT (http://www.tin.it) X-Comments: Please send technical notifications to newsmaster@tin.it NNTP-Posting-Host: 82.50.196.150 X-Trace: 1163777313 reader2.news.tin.it 3208 82.50.196.150:4108 X-Complaints-To: Please send abuse reports to abuse@tin.it