Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Windows 7

8 réponses
Avatar
Goupil
Du forum, Bonjour,

Je viens de basculer mes PC sur Windows 7 dont je suis actuellement
pleinement satisfait, toutefois, je viens de constater que mon Access 2003
bloque systématiquement sur la fonction VBA "SendKeys".
A chaque fois que je l'utilise, j'ai un message "Accès interdit" et le
traitement s'arrête.
Quelqu'un aurait-il une idée ?

Merci d'avance

Goup'

8 réponses

Avatar
jero
Salut,
1-Il faudrait avoir la ligne de code
2-SendKeys est à éviter (qui te dit que la combinaison de touches sera
toujours valide, notamment après la sortie d'une nouvelle version du
logiciel)
A+
"Goupil" a écrit dans le message de news:
4b479804$0$947$
Du forum, Bonjour,

Je viens de basculer mes PC sur Windows 7 dont je suis actuellement
pleinement satisfait, toutefois, je viens de constater que mon Access 2003
bloque systématiquement sur la fonction VBA "SendKeys".
A chaque fois que je l'utilise, j'ai un message "Accès interdit" et le
traitement s'arrête.
Quelqu'un aurait-il une idée ?

Merci d'avance

Goup'



Avatar
Goupil
Bonjour,

En fait, il s'agit d'une application que j'utilise à titre perso pour mon
boulot:
SendKeys "{PGUP}"
SendKeys "{NumLock}"
J'utilise aussi SendKeys "{F4}" pour ouvrir automatiquement une liste
déroulante.

Je sais que ce mode de rpogrammation est loin d'être "élégant" mais
existe-il un autre moyen d'arriver à un résultat équivalent ?

Merci d'avance à ceux qui peuvent m'aider.
Goup'



"jero" <~ a écrit dans le message de news:

Salut,
1-Il faudrait avoir la ligne de code
2-SendKeys est à éviter (qui te dit que la combinaison de touches sera
toujours valide, notamment après la sortie d'une nouvelle version du
logiciel)
A+
"Goupil" a écrit dans le message de news:
4b479804$0$947$
Du forum, Bonjour,

Je viens de basculer mes PC sur Windows 7 dont je suis actuellement
pleinement satisfait, toutefois, je viens de constater que mon Access
2003 bloque systématiquement sur la fonction VBA "SendKeys".
A chaque fois que je l'utilise, j'ai un message "Accès interdit" et le
traitement s'arrête.
Quelqu'un aurait-il une idée ?

Merci d'avance

Goup'







Avatar
Michel__D
Bonjour,

Goupil a écrit :
Du forum, Bonjour,

Je viens de basculer mes PC sur Windows 7 dont je suis actuellement
pleinement satisfait, toutefois, je viens de constater que mon Access 2003
bloque systématiquement sur la fonction VBA "SendKeys".
A chaque fois que je l'utilise, j'ai un message "Accès interdit" et le
traitement s'arrête.
Quelqu'un aurait-il une idée ?

Merci d'avance

Goup'



Comme t'as déja dit Jero, ne pas utiliser la fonction VBA "SendKeys" qui
s'applique toujours sur
l'élément actif or un événeement systême peux faire apparaître une
boite de dialoque modale qui
recevra donc les appels correspondant aux sendkeys, je te laisse
imaginer ce que cela peut provoquer.
Avatar
Dom74
Michel__D a écrit :
Bonjour,

Goupil a écrit :
Du forum, Bonjour,

Je viens de basculer mes PC sur Windows 7 dont je suis actuellement
pleinement satisfait, toutefois, je viens de constater que mon Access
2003 bloque systématiquement sur la fonction VBA "SendKeys".
A chaque fois que je l'utilise, j'ai un message "Accès interdit" et le
traitement s'arrête.
Quelqu'un aurait-il une idée ?

Merci d'avance

Goup'



Comme t'as déja dit Jero, ne pas utiliser la fonction VBA "SendKeys" qui
s'applique toujours sur
l'élément actif or un événeement systême peux faire apparaître une boite
de dialoque modale qui
recevra donc les appels correspondant aux sendkeys, je te laisse
imaginer ce que cela peut provoquer.



Bonsoir,

D'accord, mais si notre ami doit envoyer malgré tout sa séquence de
touches, sans utiliser SendKeys, il fait comment ?

Cordialement,

Dominique.
Avatar
Michel__D
Re,

Dom74 a écrit :
Michel__D a écrit :
Bonjour,

Goupil a écrit :
Du forum, Bonjour,

Je viens de basculer mes PC sur Windows 7 dont je suis actuellement
pleinement satisfait, toutefois, je viens de constater que mon
Access 2003 bloque systématiquement sur la fonction VBA "SendKeys".
A chaque fois que je l'utilise, j'ai un message "Accès interdit" et
le traitement s'arrête.
Quelqu'un aurait-il une idée ?

Merci d'avance

Goup'



Comme t'as déja dit Jero, ne pas utiliser la fonction VBA "SendKeys"
qui s'applique toujours sur
l'élément actif or un événeement systême peux faire apparaître une
boite de dialoque modale qui
recevra donc les appels correspondant aux sendkeys, je te laisse
imaginer ce que cela peut provoquer.



Bonsoir,

D'accord, mais si notre ami doit envoyer malgré tout sa séquence de
touches, sans utiliser SendKeys, il fait comment ?

Cordialement,

Dominique.



En premier, revoir la façon de prcéder et surtout l'utilité de la chose,
car ouvrir automatiquement une liste déroulante
j'ai du mal à comprendre l'intérèt.

Sinon les possibilités ultimes sont d'utiliser les appels systèmes via
les DLL.
Avatar
jero
Re bonjour,
Apparemment tu utilises SendKeys qu'au sein de ton appli. Access.
Pour SendKeys "{F4}" tu peux déjà remplacer par : (on suppose que la liste
s'appelle lstChamp
Private Sub lstChamp_GotFocus()
Me.lstChamp.Dropdown
End Sub
Dans quel contexte utilises-tu SendKeys "{PGUP}" ?
A+
jpg

"Goupil" a écrit dans le message de news:
4b483c00$0$929$
Bonjour,

En fait, il s'agit d'une application que j'utilise à titre perso pour mon
boulot:
SendKeys "{PGUP}"
SendKeys "{NumLock}"
J'utilise aussi SendKeys "{F4}" pour ouvrir automatiquement une liste
déroulante.

Je sais que ce mode de rpogrammation est loin d'être "élégant" mais
existe-il un autre moyen d'arriver à un résultat équivalent ?

Merci d'avance à ceux qui peuvent m'aider.
Goup'



"jero" <~ a écrit dans le message de news:

Salut,
1-Il faudrait avoir la ligne de code
2-SendKeys est à éviter (qui te dit que la combinaison de touches sera
toujours valide, notamment après la sortie d'une nouvelle version du
logiciel)
A+
"Goupil" a écrit dans le message de news:
4b479804$0$947$
Du forum, Bonjour,

Je viens de basculer mes PC sur Windows 7 dont je suis actuellement
pleinement satisfait, toutefois, je viens de constater que mon Access
2003 bloque systématiquement sur la fonction VBA "SendKeys".
A chaque fois que je l'utilise, j'ai un message "Accès interdit" et le
traitement s'arrête.
Quelqu'un aurait-il une idée ?

Merci d'avance

Goup'











Avatar
jero
Bonjour,
D'accord, mais si notre ami doit envoyer malgré tout sa séquence de
touches, sans utiliser SendKeys, il fait comment ?


J'ai envie de répondre : pourquoi envoyer une séquence de touches si on peut
faire autrement ? Et si demain, Microsoft modifie l'affectation des touches
de fonction pour Access (ou autre) ?
1-Pour F4 voir ce que j'ai écris le 09/01 à 19h26
2-Pour PGUP, il faut déjà savoir dans quel contexte... Si c'est pour faire
défiler des enregistrements dans un formulaire continu, je pense qu'avec
GoToRecord...
3-Pour NumLock (c'est un peu plus compliqué, mais il suffit de copier/coller
le code suivant dans un module standard)
Const NUM_LOCK = &H90
Const SCROLL_LOCK = &H91
Const CAPS_LOCK = &H14
Const KEYEVENTF_EXTENDEDKEY = &H1
Const KEYEVENTF_KEYUP = &H2
Public Sub NumLock(OnOff As Boolean)
Dim NumLockState As Boolean
Dim ArrayKeys(0 To 255) As Byte
GetKeyboardState ArrayKeys(0)
NumLockState = ArrayKeys(NUM_LOCK)
If NumLockState <> OnOff Then '
keybd_event NUM_LOCK, &H45, KEYEVENTF_EXTENDEDKEY Or 0, 0
keybd_event NUM_LOCK, &H45, KEYEVENTF_EXTENDEDKEY Or
KEYEVENTF_KEYUP, 0
End If
End Sub
Appel : NumLock True (ou NumLock False)
Note : on utilise ici une des API de Windows (je n'ai rien inventé... tous
ces renseignements sont fournis par Microsoft, on trouve tout ça sur le web,
il suffit d'adapter...)
Remarque : à adapter si besoin est à ScrollLock ou CapsLock
Tiens, je viens de trouver ça sur le web :
I am upgrading from Access 97 to Access 2007. The following code works in
97 but not in 07. This code works by copying and pasting selected text into
a field. Each time text is copied it pastes the text at the end of the
previous >text. It fails to work because it overwrites the previous text.
DoCmd.RunCommand acCmdCopy
DoCmd.GoToControl "NamedOther"
SendKeys "{F2}", True
DoCmd.RunCommand acCmdPaste
SendKeys "/ ", True


Donc, avec Windows 7, SendKeys "passe mal"...
A+ et bon week-end sous le neige
jpg

"Dom74" a écrit dans le message de news:
O4S9%
Michel__D a écrit :
Bonjour,

Goupil a écrit :
Du forum, Bonjour,

Je viens de basculer mes PC sur Windows 7 dont je suis actuellement
pleinement satisfait, toutefois, je viens de constater que mon Access
2003 bloque systématiquement sur la fonction VBA "SendKeys".
A chaque fois que je l'utilise, j'ai un message "Accès interdit" et le
traitement s'arrête.
Quelqu'un aurait-il une idée ?

Merci d'avance

Goup'



Comme t'as déja dit Jero, ne pas utiliser la fonction VBA "SendKeys" qui
s'applique toujours sur
l'élément actif or un événeement systême peux faire apparaître une boite
de dialoque modale qui
recevra donc les appels correspondant aux sendkeys, je te laisse imaginer
ce que cela peut provoquer.



Bonsoir,

D'accord, mais si notre ami doit envoyer malgré tout sa séquence de
touches, sans utiliser SendKeys, il fait comment ?

Cordialement,

Dominique.


Avatar
Goupil
Bonjour,

Je ne connaissait pas cette instruction d'ouverture de liste déroulante,
merci pour le tuyau !
En ce qui concerne le PGUP, je l'utilise sur un grand formulaire tabulaire:
J'envoie un instruction qui m'envoie au dernier enregistrement (je ne vois
que celui-ci en haut de l'écran), ensuite, le PGUP me permet de visualiser
TOUTE la dernière page.
Je n'ai pas trouvé d'autre instruction pour arriver à ce résultat, donc ça
ne marche plus pour Windows 7 :-(

Goup'


"jero" <~ a écrit dans le message de news:

Re bonjour,
Apparemment tu utilises SendKeys qu'au sein de ton appli. Access.
Pour SendKeys "{F4}" tu peux déjà remplacer par : (on suppose que la
liste s'appelle lstChamp
Private Sub lstChamp_GotFocus()
Me.lstChamp.Dropdown
End Sub
Dans quel contexte utilises-tu SendKeys "{PGUP}" ?
A+
jpg

"Goupil" a écrit dans le message de news:
4b483c00$0$929$
Bonjour,

En fait, il s'agit d'une application que j'utilise à titre perso pour mon
boulot:
SendKeys "{PGUP}"
SendKeys "{NumLock}"
J'utilise aussi SendKeys "{F4}" pour ouvrir automatiquement une liste
déroulante.

Je sais que ce mode de rpogrammation est loin d'être "élégant" mais
existe-il un autre moyen d'arriver à un résultat équivalent ?

Merci d'avance à ceux qui peuvent m'aider.
Goup'



"jero" <~ a écrit dans le message de news:

Salut,
1-Il faudrait avoir la ligne de code
2-SendKeys est à éviter (qui te dit que la combinaison de touches sera
toujours valide, notamment après la sortie d'une nouvelle version du
logiciel)
A+
"Goupil" a écrit dans le message de news:
4b479804$0$947$
Du forum, Bonjour,

Je viens de basculer mes PC sur Windows 7 dont je suis actuellement
pleinement satisfait, toutefois, je viens de constater que mon Access
2003 bloque systématiquement sur la fonction VBA "SendKeys".
A chaque fois que je l'utilise, j'ai un message "Accès interdit" et le
traitement s'arrête.
Quelqu'un aurait-il une idée ?

Merci d'avance

Goup'