écriture dans fichier Excel lié

Le
pascallerudulier
Bonjour,

Je viens de changer de PC et peut-être est-ce l'origine de mon
problème; quoi qu'il en soit:

J'utilise des fichiers Excel que je lie dans ma base Access (2003).
Avant le changement de PC, je pouvais écrire dans un champs (dans un
formulaire ou la table même) et ce changement était répercuté, de
manière transparente pour moi, dans le fichier Excel d'origine.

Maintenant il se trouve que je ne peux plus rien écrire, dans
aucun champs, et mis à part le changement de PC je ne comprends pas la
raison.

Est-ce que quelqu'un a rencontré un tel problème et saurait
m'indiquer la marche à suivre pour le corriger?

D'avance merci.

Pascal
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Fabien
Le #17761901
a écrit :
Bonjour,

Je viens de changer de PC et peut-être est-ce l'origine de mon
problème; quoi qu'il en soit:

J'utilise des fichiers Excel que je lie dans ma base Access (2003).
Avant le changement de PC, je pouvais écrire dans un champs (dans un
formulaire ou la table même) et ce changement était répercuté, de
manière transparente pour moi, dans le fichier Excel d'origine.

Maintenant il se trouve que je ne peux plus rien écrire, dans
aucun champs, et mis à part le changement de PC je ne comprends pas la
raison.

Est-ce que quelqu'un a rencontré un tel problème et saurait
m'indiquer la marche à suivre pour le corriger?

D'avance merci.

Pascal


Bonjour,
C'est un probléme de sécurité. Avec les nouvelles versions du pilote
ISAM qui permet de lire les données dans un fichier excel lié, on ne
peut plus les modifier ni les supprimer depuis Access.
Ou alors il faut trouver une ancienne version de ce pilote.
@+
pascallerudulier
Le #17762451
On 6 nov, 12:05, Fabien
a écrit :

> Bonjour,

>     Je viens de changer de PC et peut-être est-ce l'origine de mo n
> problème; quoi qu'il en soit:

>    J'utilise des fichiers Excel que je lie dans ma base Access (200 3).
> Avant le changement de PC, je pouvais écrire dans un champs (dans un
> formulaire ou la table même) et ce changement était répercuté, de
> manière transparente pour moi, dans le fichier Excel d'origine.

>     Maintenant il se trouve que je ne peux plus rien écrire, dans
> aucun champs, et mis à part le changement de PC je ne comprends pas l a
> raison.

>    Est-ce que quelqu'un a rencontré un tel problème et saurait
> m'indiquer la marche à suivre pour le corriger?

> D'avance merci.

> Pascal

Bonjour,
C'est un probléme de sécurité. Avec les nouvelles versions du pilot e
ISAM qui permet de lire les données dans un fichier excel lié, on ne
peut plus les modifier ni les supprimer depuis Access.
Ou alors il faut trouver une ancienne version de ce pilote.
@+



Merci pour la réponse. Ca va m'obliger à créer des import/export, je
me demande quel est l'imbécile qui a bien pu pondre une limitation
pareille?

Cependant je m'interroge: je n'ai pas changé de version ni en Excel ni
en Access (2003); seul mon PC a été récemment remplacé. Peut-on me
confirmer que même ainsi j'ai un nouveau pilote ISAM qui m'a été
installé?

Question subsidiaire: où pourrais-je trouver un ancien pilote ISAM qui
me conviendrait?

Merci d'avance.

Pascal
FFO
Le #17763041
Salut à toi
Je confirme les propos de Fabien ayant était confronté au même souci
J'ai contourné la difficulté en envoyant une table des seules modifications
dans un document Excel qui possède une Macro qui se charge de mettre à jour
le fichier Excel lié
Tout celà orchestré par ce module :

Public Function MiseàjourHST() As Boolean
'on vérifie la présence de modification
Set bds = CurrentDb
Set rst = bds.OpenRecordset("Mise à jour HST")
If rst.RecordCount = 0 Then
MsgBox ("Aucune mise à jour disponible")
Exit Function
End If
'Nettoyage du fichier Excel par l'action d'une Macro du fichier Excel
Dim wdApp As Excel.Application
Set wdApp = CreateObject("Excel.Application")
With wdApp
.Workbooks.Open "C:CheminMise à jour HST.XLS"
.Visible = True
.Run ("Nettoyage")
.ActiveWorkbook.Close SaveChanges:=True
End With
'Exportation des modifications dans le fichier Excel
DoCmd.TransferSpreadsheet acExport, 8, "Mise à jour HST", "C:CheminMise à
jour HST.XLS"
'Mise à jour du fichier Excel lié par action d'une autre Macro du fichier
Excel
With wdApp
.Workbooks.Open "C:CheminMise à jour HST.XLS"
.Visible = True
.Run ("Mise_à_jour")
.ActiveWorkbook.Close
End With
wdApp.Application.Quit
End Function

Celà fonctionne trés bien avec un code de la Macro Excel approprié

Voit pour toi comment l'adapter
Donnes moi des nouvelles !!!!
3stone
Le #17763761
Salut,

"Fabien"
| C'est un probléme de sécurité. Avec les nouvelles versions du pilote
| ISAM qui permet de lire les données dans un fichier excel lié, on ne
| peut plus les modifier ni les supprimer depuis Access.
| Ou alors il faut trouver une ancienne version de ce pilote.


Le problème de... sécurité en question :
http://www.zdnet.fr/actualites/informatique/0,39040745,39307521,00.htm

;-))

--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
MPFA: http://www.mpfa.info/ (infos générales)
Blaise Cacramp
Le #17767421
Bonjour ou bonsoir, selon.

Parfois (pour ne pas dire toujours), quand on "déménage" une base, VBA
"perd" des référencements "exotiques". Il faut aller dans VBA (ALT+F11 -
Alphonse) Outils - références. Décocher les ajouts tel que Microsoft Excel
XX. OK - puis rouvrir le dialogue et recocher les composants.

En espérant que cela serve,

Cdt, Blaise
---- ---- ----



Bonjour,

Je viens de changer de PC et peut-être est-ce l'origine de mon
problème; quoi qu'il en soit:

J'utilise des fichiers Excel que je lie dans ma base Access (2003).
Avant le changement de PC, je pouvais écrire dans un champs (dans un
formulaire ou la table même) et ce changement était répercuté, de
manière transparente pour moi, dans le fichier Excel d'origine.

Maintenant il se trouve que je ne peux plus rien écrire, dans
aucun champs, et mis à part le changement de PC je ne comprends pas la
raison.

Est-ce que quelqu'un a rencontré un tel problème et saurait
m'indiquer la marche à suivre pour le corriger?

D'avance merci.

Pascal
pascallerudulier
Le #17780971
J'ai continue a chercher un moyen et suis tombe, un sur la raison
(http://support.microsoft.com/kb/904953/en-us) et, dans le corps du
billet, un "work around" en method 2.
Merci pour le module FFO.
Pascal.

On 6 nov, 13:59, FFO
Salut à toi
Je confirme les propos de Fabien ayant était confronté au même souc i
J'ai contourné la difficulté en envoyant une table des seules modific ations
dans un document Excel qui possède une Macro qui se charge de mettre à jour
le fichier Excel lié
Tout celà orchestré par ce module :

Public Function MiseàjourHST() As Boolean
'on vérifie la présence de modification
Set bds = CurrentDb
Set rst = bds.OpenRecordset("Mise à jour HST")
If rst.RecordCount = 0 Then
MsgBox ("Aucune mise à jour disponible")
Exit Function
End If
'Nettoyage du fichier Excel par l'action d'une Macro du fichier Excel
Dim wdApp As Excel.Application
Set wdApp = CreateObject("Excel.Application")
With wdApp
    .Workbooks.Open "C:CheminMise à jour HST.XLS"
    .Visible = True
    .Run ("Nettoyage")
    .ActiveWorkbook.Close SaveChanges:=True
End With
'Exportation des modifications dans le fichier Excel
DoCmd.TransferSpreadsheet acExport, 8, "Mise à jour HST", "C:CheminMi se à
jour HST.XLS"
'Mise à jour du fichier Excel lié par action d'une autre Macro du fic hier
Excel
With wdApp
    .Workbooks.Open "C:CheminMise à jour HST.XLS"
    .Visible = True
    .Run ("Mise_à_jour")
    .ActiveWorkbook.Close
End With
wdApp.Application.Quit
End Function

Celà fonctionne trés bien avec un code de la Macro Excel approprié

Voit pour toi comment l'adapter
Donnes moi des nouvelles !!!!


Publicité
Poster une réponse
Anonyme