Mark ... adesso è chiaro!
Dovresti essere un pò meno criptico nelle informazioni che fornisci ... purtroppo, non conoscendosi, non si può sapere a priori il livello di conoscenza di tutti gli utenti del forum.
Il Wizard di VisualStudio, dietro le quinte, crea un DataSet che non è niente altro che un contenitore dei dati presente nel Db ma disconesso da quest'ultimo.
E' su questo contenitore che devi lavorare.
Sempre dietro le quinte, VisualStudio crea un oggetto DataAdapter che possiamo definire "un'automazione delle operazioni di select,update etc ...."
Pertanto dovrai, eseguire il tuo ciclo For..Each per aggiornare i dati iterando le riche della DataTable presente nel Dataset e, successivamente, fare l'Update del Dataset UNA VOLTA SOLA con l'aiuto del dataAdapter.
Attenzione però che(se non mi confondo con l'udo del CommandBuilder) la tabella deve avere un campo chiave primaria, altrimenti, durante le operazioni di Update e Delete, ti viene restituita un'eccezione in quanto il DataAdapter non è in grado di creare le query adatte.
Venendo al codice:
For Each row As DataRow In TuoDataSet.Tables("NomeTabella").Rows
row.Item("NomeDelCampoDaAggiornare") = "NuovoValore"
Next
TuoDataAdapter.Update(TuoDataSet)
Ovviamente, dovrai un pò adattare il codice allo scenario della tua applicazione.... ad ogni modo il concetto è questo.
Questa soluzione, ti è stata data perchè non mi va di mettere troppa carne sul fuoco, ma ritengo che sia un peccato non sfruttare la forte tipizzazione del DataSet, ma forse è un pò presto per parlare anche di questo.
Rimango comunque a disposizione per ulteirori info a riguardo.
Facci sapere...
Ciao