Extraction de données access vers feuille excel déjà existante ... liaison dde

Soyez le premier à donner votre avis sur cette source.

Snippet vu 24 794 fois - Téléchargée 59 fois

Contenu du snippet

Ce code permet, à partir d'access 97, d'extraire les données d'un ou plusieurs champs vers un fichier excel existant et vers des cellules bien précise que vous aurez auparavant nommées.
Il vous suffit de créer un bouton Commande1, de remplacer [Text1] par le nom de votre champ et de nommer les cellules du fichier excel que vous allez utiliser par la suite (ici cette cellule s'appelle NomCellule).
Copiez-collez le code ci-dessous dans la partie "Evenement" et "Sur Clic"
A vous de jouer !

Source / Exemple :


Private Sub OuvrirExcel(Programme, Fichier)
Shell Programme & " " & Fichier, vbNormalFocus
End Sub

Private Sub Commande1_Click()
On Error GoTo Err_Commande1_Click

Dim Canal As Double
Dim Monfichier As String
Dim Champ1 As String

'Attribue un nom à votre champ, le champ est Text1
Champ1 = [Text1]

'Défini le nom de votre fichier Excel
Monfichier = "nomdevotrefichier.xls"

'Ouvre Excel
OuvrirExcel "c:\Program Files\Microsoft Office\Office\excel.exe", Monfichier

'Crée la liaison DDE
Canal = DDEInitiate("Excel", "[nomdevotrefichier.xls]Feuil1")

'Copie le texte 
DDEPoke Canal, "NomCellule", Champ1

'Ferme la liaison DDE
DDETerminate Canal

Exit_Commande1_Click:
    Exit Sub

Err_Commande1_Click:
    MsgBox Err.Description
    Resume Exit_Commande1_Click
End Sub

Conclusion :


Version Corrigée. Merci à bliTZ

A voir également

Ajouter un commentaire

Commentaires

ryanryan1970
Messages postés
7
Date d'inscription
samedi 27 mai 2006
Statut
Membre
Dernière intervention
15 mars 2009

mais comment faire sous vb.net
cs_acee
Messages postés
5
Date d'inscription
mardi 8 avril 2003
Statut
Membre
Dernière intervention
13 janvier 2004

Bonjour,

J'ai l'erreur suivante lorsque j'exécute cette ligne
DDEPoke Canal, "NomCellule", Champ1

L'autre application ne peut exécuter la fonction DDE ou la récupération que vous avez tentée.

Quelqu'un a une idée?
Msgbox
Messages postés
67
Date d'inscription
lundi 1 juillet 2002
Statut
Membre
Dernière intervention
1 septembre 2006

Si les liaisons DDE sont demodees, les OLE le sont encore plus, vu qu'elles sont plus vieilles et surement pas plus rapides et plus compatibles.
Merci bliTZ ... j'avais pas vu l'erreur ! Je le modifie de suite.
Ceci a une erreur:

'Ouvre Excel
OuvriExcel "c:Program FilesMicrosoft OfficeOfficeexcel.exe", Monfichier

Correction

'Ouvre Excel
OuvrirExcel "c:Program FilesMicrosoft OfficeOfficeexcel.exe", Monfichier

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.