Requête update champ = valeur d'une cellule

jeanluc065 Messages postés 134 Date d'inscription samedi 23 septembre 2006 Statut Membre Dernière intervention 1 juin 2007 - 8 oct. 2006 à 10:58
jeanluc065 Messages postés 134 Date d'inscription samedi 23 septembre 2006 Statut Membre Dernière intervention 1 juin 2007 - 8 oct. 2006 à 15:30
Bonjour,

En access 2002, j'emploi une commande ( améliorée par Julien ) pour importer les feuilles ( ident1 et ident2) de plusieurs classeurs excell différents dans une  table "mobi" de ma db.
Il y a déjà des mises à jour qui se font mais je voudrais en ajouter une.
Ma question :
Je voudrais que le champ "période" soit mis à jour avec la valeur de la cellule (C:5) de la feuille (référence )
Qui pourrait me fournir le code ?

Merci d'avance
JL

Private Sub ImportThisFilemobiToDB(ByVal FileToImport As String, _
ByVal TableName As String, ByVal DBName As String)
     Dim SQL As String
     Dim SQL1 As String
     Dim SQL2 As String
     DoCmd.TransferSpreadsheet acImport, 8, TableName, FileToImport, True, "ident1!"
     DoCmd.TransferSpreadsheet acImport, 8, TableName, FileToImport, True, "ident2!"     

    ' 1ère mise à jour du champ ref de la table mobi par le nom du fichier importé     SQL "UPDATE mobi SET ref '" & FileToImport & "' WHERE IsNull(ref) = True;"
      ' 2ème mise à jour du champ ref de la table mobi par le une partie du champ ref 
      '(extrait du nom du fichier importé )
      SQL1 "UPDATE mobi set ref Mid(ref, InStrRev(ref, """") + 1)"
      DoCmd.RunSQL SQL1

      'c'est ici que çà devrait se passer     SQL2 "UPDATE mobi set periode   valeur de la cellule C5 de la feuille "référence"
     DoCmd.RunSQL SQL2

      End Sub

2 réponses

cs_wape Messages postés 262 Date d'inscription samedi 21 décembre 2002 Statut Membre Dernière intervention 19 décembre 2010 12
8 oct. 2006 à 14:25
Bonjour,

Pour lire la valeur d'une cellule d'un classeur fermé, essaye ceci :

Sub LireValeurCelluleDeClasseurFerme()


Dim oXlApp As Object


'Créer une instance Excel
Set oXlApp = CreateObject("Excel.Application")


'Lire la valeur de la cellule C5 de la feuille 'référence' du classeur 'C:\MonClasseur.xls"
MaValeur = oXlApp.ExecuteExcel4Macro("'C:\[MonClasseur.xls]référence'!R5C3")
MsgBox "Valeur lue: " & MaValeur


'Quitter Excel
oXlApp.Quit


'Libérer les ressources
Set oXlApp = Nothing


End Sub

wape
0
jeanluc065 Messages postés 134 Date d'inscription samedi 23 septembre 2006 Statut Membre Dernière intervention 1 juin 2007
8 oct. 2006 à 15:30
Re bonjour Wape,

Merci pour l'astcue, mais je vais lire la valeur, ok.
Et après, comment je l'attribue au champ période de ma table mobi ?
Merci d'avance.
jl
0
Rejoignez-nous