OVH Cloud OVH Cloud

ACCESS 2002 et Win XP vs Win 2000

11 réponses
Avatar
B
Salut,
Rassurez-moi, une application .mdb 2002 créée sur une machine sous Win XP
doit fonctionner à tout coup sur une machine Sous Win 2000pro ?
Sinon, quels peuvent être les problèmes ?
Merci.
Beaucoup.

@ +
b(°!°)rbbu
PS : ... je sais je suis un peu lourd !... Mais si ça marche pas le patron
me vire ...

10 réponses

1 2
Avatar
Raymond [mvp]
Bonsoir.

normalement oui, je ne vois pas ce qui peut arriver. par acquit de
conscience, quand tu arrives sur win2000 recompiles ta base. c'est quand tu
changes d'access que ça peut poser problème.
on prévoit quel poste pour te recaser ? où ?

--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"" a écrit dans le message de
news:
Salut,
Rassurez-moi, une application .mdb 2002 créée sur une machine sous Win XP
doit fonctionner à tout coup sur une machine Sous Win 2000pro ?
Sinon, quels peuvent être les problèmes ?
Merci.
Beaucoup.

@ +
b(°!°)rbbu
PS : ... je sais je suis un peu lourd !... Mais si ça marche pas le patron
me vire ...




Avatar
B
Bonsoir,
tu me rassures, C 5 pas ...
Si ça marche pas, j'irai ... faire de la poésie !
... ou bien je me met à WINDEV, y parait que ça marche bien d'après le
copain du patron ...
Merci.
@ +
b(°!°)rbbu

"Raymond [mvp]" a écrit dans le message de
news:
Bonsoir.

normalement oui, je ne vois pas ce qui peut arriver. par acquit de
conscience, quand tu arrives sur win2000 recompiles ta base. c'est quand
tu

changes d'access que ça peut poser problème.
on prévoit quel poste pour te recaser ? où ?

--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"" a écrit dans le message de
news:
Salut,
Rassurez-moi, une application .mdb 2002 créée sur une machine sous Win
XP


doit fonctionner à tout coup sur une machine Sous Win 2000pro ?
Sinon, quels peuvent être les problèmes ?
Merci.
Beaucoup.

@ +
b(°!°)rbbu
PS : ... je sais je suis un peu lourd !... Mais si ça marche pas le
patron


me vire ...








Avatar
Benoit Compoint [MS]
Bonsoir,

Je n'ai pas eu le temps de lire toutes les réponses qui vous ont déjà été
données, lorsque vous avez posé cette question plusieurs fois il y a
quelques jours.

Cependant je vous rappelle que pour augmenter la portabilité de votre
application Access 2002 qui pilote via automation Excel et Word, vous
devriez utiliser la technique dite "late binding" au lieu d'utiliser la
technique "early binding".
Pour plus d'informations, consultez la page Web suivante :
http://support.microsoft.com/default.aspx?scid=KB;EN-US;247579

En fait j'ai noté dans votre code source que vous panachiez l'usage du late
binding et du early binding pour une même référence (Word par exemple).

Ainsi j'ai vu votre code source ci-dessous :
Dim wdApp As Word.Application
Set wdApp = CreateObject("Word.Application")

En early binding classique, le code devrait être :
Dim wdApp As Word.Application
Set wdApp = new Word.Application

Mais je vous recommande de décocher la référence vers Word afin d'utiliser
le "late binding" :
Dim wdApp As Object
Set wdApp = CreateObject("Word.Application")

D'autre part je vous conseille de décocher la référence vers MSO.DLL si elle
est inutile, et dans le cas contraire de comparer la version de cette DLL
sur les deux postes concernés.

Pour isoler le problème vous devriez tester sur le poste cible Windows 2000,
dans une base vierge générée et compilée sur votre poste (puis
éventuellement recompilée sur le poste cible), une petite partie de votre
code VBA qui piloterait Word en ne conservant que la référence vers Word
(outre les références Access et VBA).
Puis recommencer de même avec une petite partie de votre code VBA, dans une
autre base vierge, qui piloterait Excel en ne conservant que la référence
vers Excel (outre les références Access et VBA).
Puis recommencer de même avec une petite partie de votre code VBA, dans une
autre base vierge, qui utiliserait MSO.DLL en ne conservant que la référence
vers MSO.DLL (outre les références Access et VBA).

Enfin je vous rappelle que si Word (par exemple) n'est pas correctement
installé sur une station de travail, il est normal d'obtenir des erreurs
lorsque vous tenter de le piloter via Automation. Quand vous comparez sur
deux postes le fonctionnement d'Access 2002 avec Excel 2002 et Word 2002, il
est important de vérifier les versions exactes d'Office XP (quels Service
Packs avez-vous installé pour Office XP ?) sur ces deux postes.

Benoit Compoint

"" wrote in message
news:
Bonsoir,
tu me rassures, C 5 pas ...
Si ça marche pas, j'irai ... faire de la poésie !
... ou bien je me met à WINDEV, y parait que ça marche bien d'après le
copain du patron ...
Merci.
@ +
b(°!°)rbbu

"Raymond [mvp]" a écrit dans le message de
news:
Bonsoir.

normalement oui, je ne vois pas ce qui peut arriver. par acquit de
conscience, quand tu arrives sur win2000 recompiles ta base. c'est quand
tu

changes d'access que ça peut poser problème.
on prévoit quel poste pour te recaser ? où ?

--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"" a écrit dans le message de
news:
Salut,
Rassurez-moi, une application .mdb 2002 créée sur une machine sous Win
XP


doit fonctionner à tout coup sur une machine Sous Win 2000pro ?
Sinon, quels peuvent être les problèmes ?
Merci.
Beaucoup.

@ +
b(°!°)rbbu
PS : ... je sais je suis un peu lourd !... Mais si ça marche pas le
patron


me vire ...












Avatar
Raymond [mvp]
Bonsoir benoit.

pour les références, je me suis mis à jour aujourd'hui un petit module que
j'ai mis sur mon site :
http://access.seneque.free.fr/telecharger/loadref.zip qu'on utilise lors des
premiers tests . On définit les librairies qu'on doit avoir sur chaque
access, 97, 2000, 2002 ou 2003 on décoche toutes les références et on lance
la fonction qui ira lire le bon fichier selon le niveau access. ça marche à
99,99% avec toujours une marge d'erreur mais c'est très simple à utiliser
car tout en linéaire.

Pour le word par exemple, on passe par un word.application pour développer
l'application pour bénéficier des assistants et lorsque ça marche on passe
par un create. Le tout c'est d'y penser.
--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"Benoit Compoint [MS]" a écrit dans le
message de news:
Bonsoir,

Je n'ai pas eu le temps de lire toutes les réponses qui vous ont déjà été
données, lorsque vous avez posé cette question plusieurs fois il y a
quelques jours.


Avatar
B
Salut,
Un peu tard (je part Now chez le "patron"), mais sympa d'intervenir ...
Merci.

@ +
b(°!°)rbbu

"Benoit Compoint [MS]" a écrit dans le
message de news:
Bonsoir,

Je n'ai pas eu le temps de lire toutes les réponses qui vous ont déjà été
données, lorsque vous avez posé cette question plusieurs fois il y a
quelques jours.

Cependant je vous rappelle que pour augmenter la portabilité de votre
application Access 2002 qui pilote via automation Excel et Word, vous
devriez utiliser la technique dite "late binding" au lieu d'utiliser la
technique "early binding".
Pour plus d'informations, consultez la page Web suivante :
http://support.microsoft.com/default.aspx?scid=KB;EN-US;247579

En fait j'ai noté dans votre code source que vous panachiez l'usage du
late

binding et du early binding pour une même référence (Word par exemple).

Ainsi j'ai vu votre code source ci-dessous :
Dim wdApp As Word.Application
Set wdApp = CreateObject("Word.Application")

En early binding classique, le code devrait être :
Dim wdApp As Word.Application
Set wdApp = new Word.Application

Mais je vous recommande de décocher la référence vers Word afin d'utiliser
le "late binding" :
Dim wdApp As Object
Set wdApp = CreateObject("Word.Application")

D'autre part je vous conseille de décocher la référence vers MSO.DLL si
elle

est inutile, et dans le cas contraire de comparer la version de cette DLL
sur les deux postes concernés.

Pour isoler le problème vous devriez tester sur le poste cible Windows
2000,

dans une base vierge générée et compilée sur votre poste (puis
éventuellement recompilée sur le poste cible), une petite partie de votre
code VBA qui piloterait Word en ne conservant que la référence vers Word
(outre les références Access et VBA).
Puis recommencer de même avec une petite partie de votre code VBA, dans
une

autre base vierge, qui piloterait Excel en ne conservant que la référence
vers Excel (outre les références Access et VBA).
Puis recommencer de même avec une petite partie de votre code VBA, dans
une

autre base vierge, qui utiliserait MSO.DLL en ne conservant que la
référence

vers MSO.DLL (outre les références Access et VBA).

Enfin je vous rappelle que si Word (par exemple) n'est pas correctement
installé sur une station de travail, il est normal d'obtenir des erreurs
lorsque vous tenter de le piloter via Automation. Quand vous comparez sur
deux postes le fonctionnement d'Access 2002 avec Excel 2002 et Word 2002,
il

est important de vérifier les versions exactes d'Office XP (quels Service
Packs avez-vous installé pour Office XP ?) sur ces deux postes.

Benoit Compoint

"" wrote in message
news:
Bonsoir,
tu me rassures, C 5 pas ...
Si ça marche pas, j'irai ... faire de la poésie !
... ou bien je me met à WINDEV, y parait que ça marche bien d'après le
copain du patron ...
Merci.
@ +
b(°!°)rbbu

"Raymond [mvp]" a écrit dans le message de
news:
Bonsoir.

normalement oui, je ne vois pas ce qui peut arriver. par acquit de
conscience, quand tu arrives sur win2000 recompiles ta base. c'est
quand



tu
changes d'access que ça peut poser problème.
on prévoit quel poste pour te recaser ? où ?

--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"" a écrit dans le message de
news:
Salut,
Rassurez-moi, une application .mdb 2002 créée sur une machine sous
Win




XP
doit fonctionner à tout coup sur une machine Sous Win 2000pro ?
Sinon, quels peuvent être les problèmes ?
Merci.
Beaucoup.

@ +
b(°!°)rbbu
PS : ... je sais je suis un peu lourd !... Mais si ça marche pas le
patron


me vire ...
















Avatar
B
Salut,
G pris note de ta mise à jour ...
Merci.

@ +
b(°!°)rbbu

"Raymond [mvp]" a écrit dans le message de
news:
Bonsoir benoit.

pour les références, je me suis mis à jour aujourd'hui un petit module que
j'ai mis sur mon site :
http://access.seneque.free.fr/telecharger/loadref.zip qu'on utilise lors
des

premiers tests . On définit les librairies qu'on doit avoir sur chaque
access, 97, 2000, 2002 ou 2003 on décoche toutes les références et on
lance

la fonction qui ira lire le bon fichier selon le niveau access. ça marche
à

99,99% avec toujours une marge d'erreur mais c'est très simple à utiliser
car tout en linéaire.

Pour le word par exemple, on passe par un word.application pour développer
l'application pour bénéficier des assistants et lorsque ça marche on passe
par un create. Le tout c'est d'y penser.
--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"Benoit Compoint [MS]" a écrit dans le
message de news:
Bonsoir,

Je n'ai pas eu le temps de lire toutes les réponses qui vous ont déjà
été


données, lorsque vous avez posé cette question plusieurs fois il y a
quelques jours.






Avatar
B
Salut Benoit,
Je crois que j'ai trouvé (enfin) le Champion que je cherchais depuis
longtemps ...
Merci, mais ... champion qu'à moitié !
Je m'explique :
Le "patron" ayant acheté un nouveau PC configuré (selon mon souhait) sous
W2000pro et Office XP, j'y ai installé mon application qui a refusé de
fonctionner jusqu'à ce que j'effectue les modifications de "binding" (quel
barbarisme ! Kes ça veut dire ?) signalées dans ton message !
Et là, MIRACLE ! ça a marché ! ! !
Mon cher Benoit, tu seras PRESQUE un champion COMPLET quand tu me diras
pourquoi avec mon code "batard" ça marche sur un poste en WinXP et un autre
en W98 et pas sur les postes en W2000 ?
Reste, quand-même, un bug persistant, relevé ce matin sur un seul PC (pas le
neuf, un autre sous W2000 aussi):
A l'insertion d'un nouvel enregistrement j'ai toujours le message " la
méthode 'value' de l'objet combo-box a échoué "; dont un bout de code :

'------ début code déconne -------
If Me!Copain.Value = "Toto" Then
Me!Notation.Value = 5
Else
Me!Notation.Value = 18
End if
' ------ fin code déconne --------

Faudrait que tu me dises ou est l'erreur (sachant que ce code marche sur
tous les postes sauf sur 1)
Là, Benoit, tu seras LE CHAMPION TOUTES CATEGORIES ...
@ +
et encore merci quand-même...
b(°!°)rbbu


"Benoit Compoint [MS]" a écrit dans le
message de news:
Bonsoir,

Je n'ai pas eu le temps de lire toutes les réponses qui vous ont déjà été
données, lorsque vous avez posé cette question plusieurs fois il y a
quelques jours.

Cependant je vous rappelle que pour augmenter la portabilité de votre
application Access 2002 qui pilote via automation Excel et Word, vous
devriez utiliser la technique dite "late binding" au lieu d'utiliser la
technique "early binding".
Pour plus d'informations, consultez la page Web suivante :
http://support.microsoft.com/default.aspx?scid=KB;EN-US;247579

En fait j'ai noté dans votre code source que vous panachiez l'usage du
late

binding et du early binding pour une même référence (Word par exemple).

Ainsi j'ai vu votre code source ci-dessous :
Dim wdApp As Word.Application
Set wdApp = CreateObject("Word.Application")

En early binding classique, le code devrait être :
Dim wdApp As Word.Application
Set wdApp = new Word.Application

Mais je vous recommande de décocher la référence vers Word afin d'utiliser
le "late binding" :
Dim wdApp As Object
Set wdApp = CreateObject("Word.Application")

D'autre part je vous conseille de décocher la référence vers MSO.DLL si
elle

est inutile, et dans le cas contraire de comparer la version de cette DLL
sur les deux postes concernés.

Pour isoler le problème vous devriez tester sur le poste cible Windows
2000,

dans une base vierge générée et compilée sur votre poste (puis
éventuellement recompilée sur le poste cible), une petite partie de votre
code VBA qui piloterait Word en ne conservant que la référence vers Word
(outre les références Access et VBA).
Puis recommencer de même avec une petite partie de votre code VBA, dans
une

autre base vierge, qui piloterait Excel en ne conservant que la référence
vers Excel (outre les références Access et VBA).
Puis recommencer de même avec une petite partie de votre code VBA, dans
une

autre base vierge, qui utiliserait MSO.DLL en ne conservant que la
référence

vers MSO.DLL (outre les références Access et VBA).

Enfin je vous rappelle que si Word (par exemple) n'est pas correctement
installé sur une station de travail, il est normal d'obtenir des erreurs
lorsque vous tenter de le piloter via Automation. Quand vous comparez sur
deux postes le fonctionnement d'Access 2002 avec Excel 2002 et Word 2002,
il

est important de vérifier les versions exactes d'Office XP (quels Service
Packs avez-vous installé pour Office XP ?) sur ces deux postes.

Benoit Compoint

"" wrote in message
news:
Bonsoir,
tu me rassures, C 5 pas ...
Si ça marche pas, j'irai ... faire de la poésie !
... ou bien je me met à WINDEV, y parait que ça marche bien d'après le
copain du patron ...
Merci.
@ +
b(°!°)rbbu

"Raymond [mvp]" a écrit dans le message de
news:
Bonsoir.

normalement oui, je ne vois pas ce qui peut arriver. par acquit de
conscience, quand tu arrives sur win2000 recompiles ta base. c'est
quand



tu
changes d'access que ça peut poser problème.
on prévoit quel poste pour te recaser ? où ?

--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"" a écrit dans le message de
news:
Salut,
Rassurez-moi, une application .mdb 2002 créée sur une machine sous
Win




XP
doit fonctionner à tout coup sur une machine Sous Win 2000pro ?
Sinon, quels peuvent être les problèmes ?
Merci.
Beaucoup.

@ +
b(°!°)rbbu
PS : ... je sais je suis un peu lourd !... Mais si ça marche pas le
patron


me vire ...
















Avatar
Anor
Bonjour Benoit

Benoit Compoint [MS] :
|
| En early binding classique, le code devrait être :
| Dim wdApp As Word.Application
| Set wdApp = new Word.Application
|
| Mais je vous recommande de décocher la référence vers Word afin
| d'utiliser le "late binding" :
| Dim wdApp As Object
| Set wdApp = CreateObject("Word.Application")
|

Une question idiote :
lorsque la référence est cochée, on peut utiliser la syntaxe
Dim wdApp As New Word.Application

- Est-ce que ce cette méthode à un nom ? ("early binding" peut-être ?)

merci d'avance

--
Arnaud
--------------------------------------------------
*Avant toute chose* : http://users.skynet.be/mpfa/
Access Memorandum - http://memoaccess.free.fr
/Réponses souhaitées sur ce forum, merci/
--------------------------------------------------
Avatar
Benoit Compoint [MS]
Bonsoir à tous,

Dans un de vos précédents posts (), j'ai noté la phrase suivante :
"J'ai "registré" msado25.tlb après avoir constaté dans le registre quelques
"invraisemblances".

Je me demande si vous avez simplement coché la référence MSADO25.TLB ou si
vous avez aussi (ré)inscrit msado25.tlb cette bibliothèque dans la base de
registre de Windows 2000 en exécutant le programme regtlib.exe.
J'ai déjà été confronté à un message d'erreur similaire dans une combobox.
J'ai résolu ce problème en remplaçant une réference vers MSADO15.DLL par une
référence vers MSADO25.TLB.
L'application échouait (avant mon intervention) sur Windows 2000 (MDAC 2.5)
mais fonctionnait correctement sur la station Windows XP où elle avait été
créée (MDAC 2.7).

A part la vérification des références cochées dans le projet VBA, vous
pouvez aussi essayer d'utiliser le code VBA suivant.
J'ai déjà vu un cas similaire où l'usage de la propriété Text a réglé le
problème.
Je suppose que le contrôle Notation est votre contrôle ComboBox, mais je ne
crois pas que vous l'ayez précisé.

'------------------------------------
If Me!Copain.Value = "Toto" Then
Me!Notation.Text= 5
Else
Me!Notation.Text= 18
End if
'------------------------------------

à la place de votre code VBA :

'------------------------------------
If Me!Copain.Value = "Toto" Then
Me!Notation.Value = 5
Else
Me!Notation.Value = 18
End if
'------------------------------------

A part cela, vous pouvez essayer de remplacer la syntaxe suivante
Me!Notation.Value=5
Me!Notation.Value = 18

par une syntaxe plus explicite :
Forms!MyMainForm!MySubFormCtrl.Form!Notation.Value=5
Forms!MyMainForm!MySubFormCtrl.Form!Notation.Value
En supposant que le contrôle Notation est placé sur un contrôle
sous-formulaire nommé MySubFormCtrl dans un formulaire principal nommé
MyMainForm.
J'ai déjà vu un cas similaire où l'usage d'une syntaxe explicite a réglé le
problème.

Benoît Compoint



"" wrote in message
news:
Salut Benoit,
Je crois que j'ai trouvé (enfin) le Champion que je cherchais depuis
longtemps ...
Merci, mais ... champion qu'à moitié !
Je m'explique :
Le "patron" ayant acheté un nouveau PC configuré (selon mon souhait) sous
W2000pro et Office XP, j'y ai installé mon application qui a refusé de
fonctionner jusqu'à ce que j'effectue les modifications de "binding" (quel
barbarisme ! Kes ça veut dire ?) signalées dans ton message !
Et là, MIRACLE ! ça a marché ! ! !
Mon cher Benoit, tu seras PRESQUE un champion COMPLET quand tu me diras
pourquoi avec mon code "batard" ça marche sur un poste en WinXP et un
autre

en W98 et pas sur les postes en W2000 ?
Reste, quand-même, un bug persistant, relevé ce matin sur un seul PC (pas
le

neuf, un autre sous W2000 aussi):
A l'insertion d'un nouvel enregistrement j'ai toujours le message " la
méthode 'value' de l'objet combo-box a échoué "; dont un bout de code :

'------ début code déconne -------
If Me!Copain.Value = "Toto" Then
Me!Notation.Value = 5
Else
Me!Notation.Value = 18
End if
' ------ fin code déconne --------

Faudrait que tu me dises ou est l'erreur (sachant que ce code marche sur
tous les postes sauf sur 1)
Là, Benoit, tu seras LE CHAMPION TOUTES CATEGORIES ...
@ +
et encore merci quand-même...
b(°!°)rbbu


"Benoit Compoint [MS]" a écrit dans le
message de news:
Bonsoir,

Je n'ai pas eu le temps de lire toutes les réponses qui vous ont déjà
été


données, lorsque vous avez posé cette question plusieurs fois il y a
quelques jours.

Cependant je vous rappelle que pour augmenter la portabilité de votre
application Access 2002 qui pilote via automation Excel et Word, vous
devriez utiliser la technique dite "late binding" au lieu d'utiliser la
technique "early binding".
Pour plus d'informations, consultez la page Web suivante :
http://support.microsoft.com/default.aspx?scid=KB;EN-US;247579

En fait j'ai noté dans votre code source que vous panachiez l'usage du
late

binding et du early binding pour une même référence (Word par exemple).

Ainsi j'ai vu votre code source ci-dessous :
Dim wdApp As Word.Application
Set wdApp = CreateObject("Word.Application")

En early binding classique, le code devrait être :
Dim wdApp As Word.Application
Set wdApp = new Word.Application

Mais je vous recommande de décocher la référence vers Word afin
d'utiliser


le "late binding" :
Dim wdApp As Object
Set wdApp = CreateObject("Word.Application")

D'autre part je vous conseille de décocher la référence vers MSO.DLL si
elle

est inutile, et dans le cas contraire de comparer la version de cette
DLL


sur les deux postes concernés.

Pour isoler le problème vous devriez tester sur le poste cible Windows
2000,

dans une base vierge générée et compilée sur votre poste (puis
éventuellement recompilée sur le poste cible), une petite partie de
votre


code VBA qui piloterait Word en ne conservant que la référence vers Word
(outre les références Access et VBA).
Puis recommencer de même avec une petite partie de votre code VBA, dans
une

autre base vierge, qui piloterait Excel en ne conservant que la
référence


vers Excel (outre les références Access et VBA).
Puis recommencer de même avec une petite partie de votre code VBA, dans
une

autre base vierge, qui utiliserait MSO.DLL en ne conservant que la
référence

vers MSO.DLL (outre les références Access et VBA).

Enfin je vous rappelle que si Word (par exemple) n'est pas correctement
installé sur une station de travail, il est normal d'obtenir des erreurs
lorsque vous tenter de le piloter via Automation. Quand vous comparez
sur


deux postes le fonctionnement d'Access 2002 avec Excel 2002 et Word
2002,


il
est important de vérifier les versions exactes d'Office XP (quels
Service


Packs avez-vous installé pour Office XP ?) sur ces deux postes.

Benoit Compoint

"" wrote in message
news:
Bonsoir,
tu me rassures, C 5 pas ...
Si ça marche pas, j'irai ... faire de la poésie !
... ou bien je me met à WINDEV, y parait que ça marche bien d'après le
copain du patron ...
Merci.
@ +
b(°!°)rbbu

"Raymond [mvp]" a écrit dans le message
de



news:
Bonsoir.

normalement oui, je ne vois pas ce qui peut arriver. par acquit de
conscience, quand tu arrives sur win2000 recompiles ta base. c'est
quand



tu
changes d'access que ça peut poser problème.
on prévoit quel poste pour te recaser ? où ?

--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"" a écrit dans le message de
news:
Salut,
Rassurez-moi, une application .mdb 2002 créée sur une machine sous
Win




XP
doit fonctionner à tout coup sur une machine Sous Win 2000pro ?
Sinon, quels peuvent être les problèmes ?
Merci.
Beaucoup.

@ +
b(°!°)rbbu
PS : ... je sais je suis un peu lourd !... Mais si ça marche pas
le





patron
me vire ...




















Avatar
B
Bonsoir,
Concernant la réf à ADO, elle était inutile et je l'ai virée !
C'était donc pas ça le problème.
Remplacer .Value par .Text, je veux bien et j'essayerai à la rentrée chez le
"patron".
Mais ce que je n'arrive pas à comprendre, personne ne semble pouvoir
l'expliquer, c'est pourquoi entre 2 configs l'une marche et l'autre plante !
! !
Y'a qq chose qui m'échappe ; genre un peu surréaliste ...
Quant au fait de remplacer Me!Etc... par Forms!NomduForm!Etc... j'ai vu de
partout qu'on préconisai l'inverse, alors faudrait savoir !
Surréalisme, je vous dit !
Enfin, on verra bien à la rentrée.
Bonne fêtes et merci à tous.

@ +
b(°!°)rbbu

"Benoit Compoint [MS]" a écrit dans le
message de news:
Bonsoir à tous,

Dans un des précédents posts de , j'ai noté :
"J'ai "registré" msado25.tlb après avoir constaté dans le registre
quelques

"invraisemblances".

Je me demande si vous avez simplement coché la référence MSADO25.TLB ou si
vous avez aussi (ré)inscrit msado25.tlb cette bibliothèque dans la base de
registre de Windows 2000 en exécutant le programme regtlib.exe.
J'ai déjà été confronté à un message d'erreur similaire dans une combobox.
J'ai résolu ce problème en remplaçant une réference vers MSADO15.DLL par
une

référence vers MSADO25.TLB.
L'application échouait (avant mon intervention) sur Windows 2000 (MDAC
2.5)

mais fonctionnait correctement sur la station Windows XP où elle avait été
créée (MDAC 2.7).

A part la vérification des références cochées dans le projet VBA, vous
pouvez aussi essayer d'utiliser le code VBA suivant :

If Me!Copain.Value = "Toto" Then
Me!Notation.Text= 5
Else
Me!Notation.Text= 18
End if

à la place de votre code VBA :

If Me!Copain.Value = "Toto" Then
Me!Notation.Value = 5
Else
Me!Notation.Value = 18
End if

Je suppose que le contrôle Notation est votre contrôle ComboBox, mais je
ne

crois pas que vous l'ayez précisé.
J'ai déjà vu un cas similaire où cela a réglé le problème.

A part cela, vous pouvez essayer de remplacer la syntaxe suivante
Me!Notation.Value=5
Me!Notation.Value = 18

par une syntaxe plus explicite :
Forms!MyMainForm!MySubFormCtrl.Form!Notation.Value=5
Forms!MyMainForm!MySubFormCtrl.Form!Notation.Value
En supposant que le contrôle Notation est placé sur un contrôle
sous-formulaire nommé MySubFormCtrl dans un formulaire principal nommé
MyMainForm.

Benoît Compoint

"" wrote in message
news:
Bonsoir à vous tous,

Vous fâchez pas !
J'ai pas voulu vous offenser en parlant de Mr Compoint ...
De toute manière, il a pas encore trouvé la réponse à mon autre bug,
tout


ingénieur Microsoft qu'il est !
... Heu ... vous avez pas une idée par hasard ?

@ +
b(°!°)rbbu

"Pierre CFI [mvp]" a écrit dans le message de
news:
moi, ma pauvre mére n'a toujours rien compris a ce qu'elle avait crée,
parfois je me reconnais méme pas :o)))


--
Pierre CFI
MVP Microsoft Access
Mail : http://cerbermail.com/?z0SN8cN53B

Site pour bien commencer
http://users.skynet.be/mpfa/
Site perso
http://access.cfi.free.fr
"Raymond [mvp]" a écrit dans le message
de



news:
Bonsoir Pierre.

Benoit Compoint est ingénieur Microsoft !

Cela aide ;-)))


pas obligatoirement, moi je suis bien ingénieur-chef de ma soupe
quand




je
l'ai mangée et quelquefois il est difficile de reconnaître les
ingrédients.


--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"3stone" a écrit dans le message de
news:%
Salut,

""

PS : pour le "binding" c'est benoit compain qu'a trouvé ...



Benoit Compoint est ingénieur Microsoft !

Cela aide ;-)))
















--
@ +
b(°!°)rbbu
"Benoit Compoint [MS]" a écrit dans le
message de news: e6x#
Bonsoir à tous,

Dans un de vos précédents posts (), j'ai noté la phrase suivante :
"J'ai "registré" msado25.tlb après avoir constaté dans le registre
quelques

"invraisemblances".

Je me demande si vous avez simplement coché la référence MSADO25.TLB ou si
vous avez aussi (ré)inscrit msado25.tlb cette bibliothèque dans la base de
registre de Windows 2000 en exécutant le programme regtlib.exe.
J'ai déjà été confronté à un message d'erreur similaire dans une combobox.
J'ai résolu ce problème en remplaçant une réference vers MSADO15.DLL par
une

référence vers MSADO25.TLB.
L'application échouait (avant mon intervention) sur Windows 2000 (MDAC
2.5)

mais fonctionnait correctement sur la station Windows XP où elle avait été
créée (MDAC 2.7).

A part la vérification des références cochées dans le projet VBA, vous
pouvez aussi essayer d'utiliser le code VBA suivant.
J'ai déjà vu un cas similaire où l'usage de la propriété Text a réglé le
problème.
Je suppose que le contrôle Notation est votre contrôle ComboBox, mais je
ne

crois pas que vous l'ayez précisé.

'------------------------------------
If Me!Copain.Value = "Toto" Then
Me!Notation.Text= 5
Else
Me!Notation.Text= 18
End if
'------------------------------------

à la place de votre code VBA :

'------------------------------------
If Me!Copain.Value = "Toto" Then
Me!Notation.Value = 5
Else
Me!Notation.Value = 18
End if
'------------------------------------

A part cela, vous pouvez essayer de remplacer la syntaxe suivante
Me!Notation.Value=5
Me!Notation.Value = 18

par une syntaxe plus explicite :
Forms!MyMainForm!MySubFormCtrl.Form!Notation.Value=5
Forms!MyMainForm!MySubFormCtrl.Form!Notation.Value
En supposant que le contrôle Notation est placé sur un contrôle
sous-formulaire nommé MySubFormCtrl dans un formulaire principal nommé
MyMainForm.
J'ai déjà vu un cas similaire où l'usage d'une syntaxe explicite a réglé
le

problème.

Benoît Compoint



"" wrote in message
news:
Salut Benoit,
Je crois que j'ai trouvé (enfin) le Champion que je cherchais depuis
longtemps ...
Merci, mais ... champion qu'à moitié !
Je m'explique :
Le "patron" ayant acheté un nouveau PC configuré (selon mon souhait)
sous


W2000pro et Office XP, j'y ai installé mon application qui a refusé de
fonctionner jusqu'à ce que j'effectue les modifications de "binding"
(quel


barbarisme ! Kes ça veut dire ?) signalées dans ton message !
Et là, MIRACLE ! ça a marché ! ! !
Mon cher Benoit, tu seras PRESQUE un champion COMPLET quand tu me diras
pourquoi avec mon code "batard" ça marche sur un poste en WinXP et un
autre

en W98 et pas sur les postes en W2000 ?
Reste, quand-même, un bug persistant, relevé ce matin sur un seul PC
(pas


le
neuf, un autre sous W2000 aussi):
A l'insertion d'un nouvel enregistrement j'ai toujours le message " la
méthode 'value' de l'objet combo-box a échoué "; dont un bout de code :

'------ début code déconne -------
If Me!Copain.Value = "Toto" Then
Me!Notation.Value = 5
Else
Me!Notation.Value = 18
End if
' ------ fin code déconne --------

Faudrait que tu me dises ou est l'erreur (sachant que ce code marche sur
tous les postes sauf sur 1)
Là, Benoit, tu seras LE CHAMPION TOUTES CATEGORIES ...
@ +
et encore merci quand-même...
b(°!°)rbbu


"Benoit Compoint [MS]" a écrit dans le
message de news:
Bonsoir,

Je n'ai pas eu le temps de lire toutes les réponses qui vous ont déjà
été


données, lorsque vous avez posé cette question plusieurs fois il y a
quelques jours.

Cependant je vous rappelle que pour augmenter la portabilité de votre
application Access 2002 qui pilote via automation Excel et Word, vous
devriez utiliser la technique dite "late binding" au lieu d'utiliser
la



technique "early binding".
Pour plus d'informations, consultez la page Web suivante :
http://support.microsoft.com/default.aspx?scid=KB;EN-US;247579

En fait j'ai noté dans votre code source que vous panachiez l'usage du
late

binding et du early binding pour une même référence (Word par
exemple).




Ainsi j'ai vu votre code source ci-dessous :
Dim wdApp As Word.Application
Set wdApp = CreateObject("Word.Application")

En early binding classique, le code devrait être :
Dim wdApp As Word.Application
Set wdApp = new Word.Application

Mais je vous recommande de décocher la référence vers Word afin
d'utiliser


le "late binding" :
Dim wdApp As Object
Set wdApp = CreateObject("Word.Application")

D'autre part je vous conseille de décocher la référence vers MSO.DLL
si



elle
est inutile, et dans le cas contraire de comparer la version de cette
DLL


sur les deux postes concernés.

Pour isoler le problème vous devriez tester sur le poste cible Windows
2000,

dans une base vierge générée et compilée sur votre poste (puis
éventuellement recompilée sur le poste cible), une petite partie de
votre


code VBA qui piloterait Word en ne conservant que la référence vers
Word



(outre les références Access et VBA).
Puis recommencer de même avec une petite partie de votre code VBA,
dans



une
autre base vierge, qui piloterait Excel en ne conservant que la
référence


vers Excel (outre les références Access et VBA).
Puis recommencer de même avec une petite partie de votre code VBA,
dans



une
autre base vierge, qui utiliserait MSO.DLL en ne conservant que la
référence

vers MSO.DLL (outre les références Access et VBA).

Enfin je vous rappelle que si Word (par exemple) n'est pas
correctement



installé sur une station de travail, il est normal d'obtenir des
erreurs



lorsque vous tenter de le piloter via Automation. Quand vous comparez
sur


deux postes le fonctionnement d'Access 2002 avec Excel 2002 et Word
2002,


il
est important de vérifier les versions exactes d'Office XP (quels
Service


Packs avez-vous installé pour Office XP ?) sur ces deux postes.

Benoit Compoint

"" wrote in message
news:
Bonsoir,
tu me rassures, C 5 pas ...
Si ça marche pas, j'irai ... faire de la poésie !
... ou bien je me met à WINDEV, y parait que ça marche bien d'après
le




copain du patron ...
Merci.
@ +
b(°!°)rbbu

"Raymond [mvp]" a écrit dans le message
de



news:
Bonsoir.

normalement oui, je ne vois pas ce qui peut arriver. par acquit de
conscience, quand tu arrives sur win2000 recompiles ta base. c'est
quand



tu
changes d'access que ça peut poser problème.
on prévoit quel poste pour te recaser ? où ?

--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"" a écrit dans le message de
news:
Salut,
Rassurez-moi, une application .mdb 2002 créée sur une machine
sous






Win
XP
doit fonctionner à tout coup sur une machine Sous Win 2000pro ?
Sinon, quels peuvent être les problèmes ?
Merci.
Beaucoup.

@ +
b(°!°)rbbu
PS : ... je sais je suis un peu lourd !... Mais si ça marche pas
le





patron
me vire ...
























1 2