bonjour,
j'utilise OOo 2.0.2 sous XP,
pour =Ecrire cette sub je me suis basee sur les exemples du livre =
macros et
API de Marcelly et Godard.
la BDD a ete creee avec base d'OOo 2.0
Je recupere sans probleme les donnees que j'incremente dans 
un tableau pour
les afficher dans une boite de dialogue.
Je repere les modifications faites dans les champs des boites de dialogue
et je les reecris dans le meme tableau.
je recupere bien les modifs
pour mettre a jour la BDD j'utilise le code suivant et il ne fonctionne pas
du tout...
Sub majDonnees()
On Error GoTo Erreurs
dim maRequete As Object, resuQuery As Object
dim mesRows as long, monRow as long
dim mesColonnes as long, maColonne as long
dim nbColonnes as long
dim instrSQL As String, monSignet As Variant
dim info As String, cr As String

dim i as long
dim test1 as string, monType
cr = chr(13) ' retour a la ligne, pour les messages
ConnecterSource
' Texte de la requ=EAte
instrSQL = "select * from " & """signataires""" & " order by " &
"""ID_signataires""" & ""
' Envoyer la requete
maRequete = maConnexion.createStatement()
resuQuery = maRequete.executeQuery(instrSQL)

'nombre de colonne
nbColonnes = resuQuery.columns.count-1

resuQuery.beforefirst()
do while resuQuery.next
monrow=resuQuery.row
for i = 0 to nbColonnes
monType=resuQuery.columns(i).TypeName
test1 = tabSignataires ( monrow, i)
select case monType
case "INTEGER"
test1 = Cint(tabSignataires ( monrow, i))
msgbox test1
resuQuery.updateShort(i, test1)
case "VARCHAR"
test1 = CStr(tabSignataires ( monrow, i))
resuQuery.updateString(i, test1)
case "LONGVARCHAR"
test1 = CStr(tabSignataires ( monrow, i))
resuQuery.updateString(i,test1)
end select
next
resuQuery.updateRow
loop


DeconnecterSource
Exit Sub
Erreurs:
DeconnecterSource
erreur_num=err()
erreur_txt=error(erreur_num)
erreur_ligne = Erl()
MsgBox("erreur n=B0 " + erreur_num + " =E0 la ligne " + erreur_ligne + =
chr(13) +
erreur_txt, 1 + 16, "Macro recupcurseur")
End Sub
merci pour votre aide


Laurence BOTTIN (DGMT/SG/AG2), bureau informatique 
ministère des Transports, de l'Equipement, du Tourisme et de la Mer 
direction générale de la Mer et des Transports  
(: +33 1 40 81 17 27 Fax : +33 1 40 81 37 95 
localisation des bureaux : Grande Arche sud La Défense 
<mailto:[EMAIL PROTECTED]>


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Répondre à