Mise à jour Classeur sans ouvrir un Deuxième

Bonjour à tous;

je me trouve devant un classeur volumineux qui met du temps à s'ouvrir et à s'actualiser à partir d'une base de donnée, ce dernier met à jour un deuxième classeur, alors est-ce possible de mettre à jour le classeur N°2 sans ouvrir le premier.

Merci à Tous

Hosni

Bonjour,

Il est possible de le faire, mais avant il vous faudra absolument activer un composant comme suit.

1- Presser les touches ALT + F11

2- Selectionner dans la barre menu Outil

3- Selectionner dans la barre menu Référence

4- Activer selon votre version Excel le composant : Microsoft ActiveX Data Objects [2.0] ou [autre] Library.

Vous trouverez ci-après un exemple de ce qui peut-être fait sur Excel, vous constaterez :

Sub ajoutEnregistrement()
Dim Cn As ADODB.Connection
Dim Fichier As String, Feuille As String, strSQL As String
Dim LaDate As Date
Dim PrixUnit As Integer
Dim leNom As String, lePrenom As String
Fichier = "C:\Base.xls"
Feuille = "Feuil1"
'Les données à insérer:
LaDate = CDate("26/05/2006")
leNom = "NomTest"
lePrenom = "PrenomTest"
PrixUnit = 40
Set Cn = New ADODB.Connection
With Cn
.Provider = "MSDASQL"
.ConnectionString = "Driver={Microsoft Excel Driver (*.xls)};" & _
"DBQ=" & Fichier & "; ReadOnly=False;"
.Open
End With
'Les données doivent être indiquées dans le même ordre que les champs dans la base de données.
strSQL = "INSERT INTO [" & Feuille & "$] " _
& "VALUES (#" & LaDate & "#, " & _
"'" & leNom & "', " & _
"'" & lePrenom & "', " & _
PrixUnit & ")"
Cn.Execute strSQL
Cn.Close
Set Cn = Nothing
End Sub
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()

Si cela répond à votre question parfait, dans le cas contraire merci de bien vouloir joindre un fichier ainsi une solution plus appropriée vous sera alors proposée pour résoudre votre léger soucis.

Cdt

Air_2

Bonjour à Tous;

Salut à Toi Air_2; Merci pour ta réponse, que je viens de consulter, en fait pour ta réponse d'après ce que j'ai compris c'est l'ajout de données d'un classeur vers un autre, seulement pour mon cas c'est juste une actualisation de données, ces dernières se trouvent dans un classeur de base et le deuxième classeur puise ces données afin de leur faire subir un traitement sans les changer. Alors est-il possible de faire des recherches (RECHERCHEV) dans le classeur de Base sans l'ouvrir?

NB/ Pour la pièce jointe, les fichiers sont volumineux et ne passent pas, j’essaierai de faire autrement.

Merci à Plus

Hosni

Bonsoir Hosni,

Désolé j'ai confondu, tu trouveras la fonction native d'excel :

=RECHERCHEV("DVP";'C:\Documents and
Settings\mimi\dossier\excel\[ClasseurBase.xls]Feuil1'!$A:$B;2;FAUX) ' l'apostrophe devant le Cet les crochets sont à respecter

Si tu avais des problèmes la formule décomposée :

=RECHERCHEV("DVP"; _

Apostrophe importante -------------------------------------> ' C:\Documents andSettings\mimi\dossier\excel\ _

crochets importants ------------------------------------------------> [ClasseurBase.xls] _

si 3ieme feuille alors (Feuil3 ' ) avec l'apostrophe -----> Feuil1 ' ! $A:$B _ dollars importants

----------------------------------------------------------------------------> ;2;FAUX)

Encore désolé

Air_2

Bonjour le Forum

Salut à Toi Air; merci pour ta préoccupation, je prend en compte ta réponse que je viens de lire et je la met en application, je te donnerai réponse après.

Merci encore et à bientôt

Hosni

Rechercher des sujets similaires à "mise jour classeur ouvrir deuxieme"