Modification celulle ( date )

gopo

XLDnaute Junior
Bonjour,

Je viens demander de l'aide ici, car je cherche, je teste, mais ca ne marche pas enfin je doit surment bloqué quelque part, c'est pour cela que je vien ici.

Je voudrais changé la date d'une celulle dans plusieur classeur fermé, pour éviter que le futur utilisateur est l'obligation de le faire sur touts les classeurs, je voudrais que grâce a une maccro,X celulles se modifient ( je veux juste changé l'année des dates se trouvant dans les feuilles des classeurs fermé ).

J'ai effectué ceci :
__________________________________________


Le modèle ADO permet aussi d'écrire dans une cellule spécifique:
La macro suivante insère un texte dans la cellule G30 du classeur fermé.
Vba

Sub exportDonneeDansCelluleClasseurFerme()
Dim Cn As ADODB.Connection
Dim Cd As ADODB.Command
Dim Rst As ADODB.Recordset
Dim Fichier As String

Fichier = "C:\Documents and Settings\mimi\dossier\LeClasseur.xls"

Set Cn = New ADODB.Connection
Cn.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=" & Fichier & ";" & _
"Extended Properties=""Excel 8.0;HDR=No;"";"

Set Cd = New ADODB.Command
Cd.ActiveConnection = Cn
Cd.CommandText = "SELECT * FROM [Feuil1$G30:G30]"

Set Rst = New ADODB.Recordset
Rst.Open Cd, , adOpenKeyset, adLockOptimistic
Rst(0).Value = "Donnée test"
Rst.Update

Cn.Close
Set Cn = Nothing
Set Cd = Nothing
Set Rst = Nothing
End Sub

_______________________________________________

ps : j'ai activé les références suivante :
- Microsoft ADO ext x.x for DLL and Security.
- Microsoft ActiveX Data Objects x.x Library.

Mais rien ne change, rien ne se passe .... enfin voilà, j'aurai besoin d'aide, je suis stagiaire et je voudrais réussir la derniere étape de mon travail !!

je vous remercie d'avoir pris le temps de lire mon sujet, et au plaisir.

Cordialement, GoPo.
 

gopo

XLDnaute Junior
Re : Modification celulle ( date )

C'est vrais, mais j'ai effectuer ceci pour ajouter, plutot que de modifié, pour voir si au moin j'arrivais a faire quelque chose d'un classeur fermé !! mais non ^^

voici le code pour l'UPDATE :

Sub miseAJour_Enregistrement()
Dim Cn As ADODB.Connection
Dim Fichier As String, Feuille As String, strSQL As String
Dim PrixUnit As Integer
Dim leNom As String

Fichier = "C:\Base.xls"
Feuille = "Feuil1"
leNom = "NomTest"
PrixUnit = 45

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 "Champ4" si le "Champ2" correspond à la variable "leNom"
strSQL = "UPDATE [" & Feuille & "$] SET " & _
"Champ4 = " & PrixUnit & " WHERE Champ2 = '" & leNom & "'"

Cn.Execute strSQL

Cn.Close
Set Cn = Nothing
End Sub
 

Discussions similaires

Statistiques des forums

Discussions
312 088
Messages
2 085 200
Membres
102 816
dernier inscrit
bolivier