Mise à jour fichier fermé

Pierre31

XLDnaute Junior
Bonjour et bonne année à toutes et tous,

Je souhaite mettre à jour à partir dès données du fichier1 un enregistrement du fichier2 qui a la même clef que celle du fichier1

Fichier1

Clef = MG011030000
Data1=Préventif
Data2= Rectifieuse
Data3= 15-25-003
Data4=11/01/2010

Fichier2

Clef Data1 Data2 Data3 Data4

MG120930000 Curatif Tour 15-19-001 12/12/2009
MG011030000 Curatif Rectifieuse 15-25-003 11/01/2010
MG011030002 Préventif Fraiseuse 15-18-002 11/01/201

D'avance merci pour votre coopération.

Bonne journée.
Cordialement
Pierre
 

CBernardT

XLDnaute Barbatruc
Re : Mise à jour fichier fermé

Bonjour Pierre31 et le forum,

Un essai pour transférer des données d'un fichierA vers un FichierB fermé.

Les données à transférer peuvent être sur une ou plusieurs lignes du tableau.
 

Pièces jointes

  • FichiersTravail.zip
    17.1 KB · Affichages: 47

Pierre31

XLDnaute Junior
Re: Re : Mise à jour fichier fermé

Bonjour CBernardT,

Merci pour ta solution, celle-ci fonctionne mais dans le cas d'une mise à jour d'une liste. Dans mon cas je dois mettre à jour des données d'enregistrements déjà existants. J'ai donc fini par trouver la solution suivante

Sub miseAJour_Enregistrement()
Dim Cn As ADODB.Connection
Dim Fichier As String, Feuille As String, strSQL As String
Dim Clef As String
Dim TypeInterv As String
Dim DateEffect
Dim NumCde As String

Fichier = "C:\Documents and Settings\Q0568\Bureau\ESSAI\Fermé.xls"

Feuille = Range("B7").Value
CodeDoc = Range("B1").Value
TypeInterv = Range("B4").Value
DateEffect = Range("B5").Value
NumCde = Range("D2").Value

Set Cn = New ADODB.Connection
With Cn
.Provider = "MSDASQL"
.ConnectionString = "Driver={Microsoft Excel Driver (*.xls)};" & _
"DBQ=" & Fichier & "; ReadOnly=False;"
.Open
End With
'Met à jour la valeur du "Data3" si le Champ "Clef" correspond à la variable "CodeDoc"
strSQL = "UPDATE [" & Feuille & "$] SET " & _
"Data3 = '" & TypeInterv & "' WHERE Clef = '" & CodeDoc & "'"

Cn.Execute strSQL

strSQL = "UPDATE [" & Feuille & "$] SET " & _
"Data4 = '" & DateEffect & "' WHERE Clef = '" & CodeDoc & "'"

Cn.Execute strSQL

strSQL = "UPDATE [" & Feuille & "$] SET " & _
"Data5 = '" & NumCde & "' WHERE Clef = '" & CodeDoc & "'"

Cn.Execute strSQL

Cn.Close
Set Cn = Nothing



End Sub

Dans cet exemple je met à jour 3 données d'un enregistrement existant dans mon fichier fermé.

Bonne journée.

Cordialement
Pierre
 

Pierre31

XLDnaute Junior
Re: Re : Mise à jour fichier fermé

De nouveau bonjour à toutes et tous,

J'ai de nouveau un problème. Lorsque le tableau de base de données du fichier fermé ne commence pas en ligne 1 mais en ligne (x), pour moi ligne 6, la solution ci-dessous ne fonctionne pas

strSQL = "UPDATE [" & Feuille & "$] SET " & _
"Data3 = '" & TypeInterv & "' WHERE Clef = '" & CodeDoc & "'"

car l'entête de colonne "Clef" est en cellule "A6".

Comment peut-on dans ce cas, faire en sorte que la recherche soit effectuée a partir d'une plage autre que la ligne 1 ?

D'avance merci pour votre coopération.

Cordialement

Pierre
 

Statistiques des forums

Discussions
312 428
Messages
2 088 342
Membres
103 821
dernier inscrit
Lorient56