коды клавиш клавиатуры vba

Метод Application.OnKey (Excel)

Выполняет указанную процедуру при нажатии определенного клавиши или комбинации ключей.

Синтаксис

выражения. OnKey (Клавиша, Процедура)

выражение: переменная, представляющая объект Application.

Параметры

Имя Обязательный или необязательный Тип данных Описание
Ключ Обязательный String Строка, указывающая клавишу, нажатую.
Процедура Необязательный Variant Строка, указывающая имя необходимой процедуры. Если процедура «» (пустой текст), при нажатии клавиши ничего не происходит. Эта форма OnKey изменяет нормальный результат нажатия клавиш в Microsoft Excel.

Если процедура опущена, ключ возвращается к нормальному результату в Microsoft Excel, и все специальные назначения ключей, сделанные с помощью предыдущих методов OnKey, будут очищены.

Заметки

Аргумент Key может указать любой один ключ в сочетании с Alt, Ctrl или Shift или любым сочетанием этих ключей. Каждая клавиша представлена одним или несколькими символами, например a для символа «a» или для клавиши Enter.

Чтобы указать символы, которые не отображаются при нажатии соответствующего ключа (например: Ввод или вкладка), используйте коды, перечисленные в следующей таблице. Каждый код в таблице представляет одну клавишу на клавиатуре.

(тильда)

Ключ Код
BACKSPACE или
BREAK
CAPS LOCK
CLEAR
DELETE или DEL или
СТРЕЛКА ВНИЗ
END
ВВОД (на цифровой клавиатуре)
ВВОД
ESC < ESCAPE>или
HELP
HOME
INSERT
СТРЕЛКА ВЛЕВО
NUM LOCK
PAGE DOWN
PAGE UP
RETURN
СТРЕЛКА ВПРАВО
SCROLL LOCK
TAB
СТРЕЛКА ВВЕРХ
F1–F15

Вы также можете указать клавиши в сочетании с Shift and/or Ctrl and/or Alt and/or Command. Чтобы указать клавишу в сочетании с другой клавишей или клавишами, используйте следующую таблицу.

Объединение ключей с Предварять код ключа
Shift + (знак «плюс»)
CTRL ^ (знак «крышка»)
ALT % (знак процента)
Команда * (звездочка) Применяется только к Mac; может работать только на Excel 2011 для Mac, а не более поздних версий.

Чтобы назначить процедуру одному из специальных символов (+, ^, %и т. д.), заключите символ в скобки. Подробные сведения см. в примере.

В настоящее время в последних версиях Office VBA нет способа обнаружения клавиши Command. Корпорация Майкрософт знает об этом и ищет ее.

Пример

В этом примере InsertProc назначает ключную последовательность Ctrl+Plus Sign и назначает SpecialPrintProc ключевой последовательности Shift+Ctrl+Right Arrow.

В этом примере стрелка Shift+Ctrl+Right возвращается к обычному значению.

В этом примере отключена последовательность ключей Shift+Ctrl+Right Arrow.

Поддержка и обратная связь

Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.

Источник

Коды цифр и знаков

www.rascalspb.narod.ru
Профиль | | #2

Добавлено: 25.12.03 11:59

Создай три Label, у первых двух Autosize=True и вставь этот код

Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)

Label1.Caption = «KeyCode=» & KeyCode

Private Sub Form_KeyPress(KeyAscii As Integer)

Label2.Caption = «Ascii=» & KeyAscii

Private Sub Form_KeyUp(KeyCode As Integer, Shift As Integer)

Ещё поставь KeyPreview=True, а теперь нажимай и смотри.

Ответить

Номер ответа: 3
Автор ответа:
. C O M

Вопросов: 4
Ответов: 79

Профиль | | #3

Добавлено: 25.12.03 12:02
хм. не влезло.

Ответить

А разве нельзя так сделать?

Добавляешь на форму Label1 и TextBox, далее код:Private Sub

Text1_KeyDown(KeyCode As Integer, Shift As Integer)

Ответить

Номер ответа: 4
Автор ответа:
Монах

Вопросов: 26
Ответов: 35

Профиль | | #4

Добавлено: 25.12.03 18:54

to Монах: Во первых-на кой тут нужен TextBox

Во вторых-на всякий пожарный там видно и ASCII кодировку

А в третьих-мы не ищем простых путей

Ответить

Номер ответа: 5
Автор ответа:
Ra$cal

Вопросов: 18
Ответов: 817

Web-сайт: www.rascalspb.narod.ru
Профиль | | #5

Добавлено: 25.12.03 20:33

to Ra$cal: Я тебе просто написал как сделать прогу, которая легко узнаёт коды клавишь!

Ответить

Номер ответа: 6
Автор ответа:
Монах

Вопросов: 26
Ответов: 35

Профиль | | #6

Добавлено: 25.12.03 20:42

to Монах: По-моему моя тоже легко узнаёт и KeyCode и ASCII. И вообще прога не мне нужна

Источник

Коды клавиш клавиатуры vba

Иногда необходимо, чтобы ввод с клавиатуры обрабатывался именно формой, даже если фокус находится у элемента управления. Сделать это позволяет свойство формы « KeyPreview ». При создании формы это значение принимается равным « False ». Если же его установить равным « True », то форма будет перехватывать весь ввод с клавиатуры, с которым теперь можно работать в процедурах обработки событий самой формы. И только после этого будет передано управление элементу управления, находящемуся в фокусе.

12.2. Обработка событий мыши

Когда вы что-нибудь делаете с помощью мыши, генерируется определенное событие. При щелчке мышью происходит событие « Click », при двойном щелчке – « DblClick », а в момент перемещения указателя – « Move ». Где и когда произойдет определенное событие, зависит от положения указателя мыши. Иногда одно действие производит несколько событий.

Событие « Click » характерно практически для всех объектов и процедура обработки этого события имеет следующий синтаксис:

Private Sub Name_Click()

· Private – область действия процедуры обработки события;

· Name – имя элемента управления, которому адресовано событие;

· Click – имя события.

Аналогично можно запрограммировать событие « DblClick », указав это слово в заголовке процедуры вместо « Click ».

Эти два события связаны только со щелчками левой клавишей мыши, правая и средняя в этом случае будут игнорироваться.

При щелчках мыши происходят и другие события: « MouseDown » (нажатие клавиши), « MouseUp » (отпускание клавиши). Процедуры их обработки имеют следующий синтаксис:

Shift As Integer, X As Single, Y As Single)

Private Sub Name_MouseUp(Button As Integer,_

Shift As Integer, X As Single, Y As Single)

· Private – область видимости события.

· Name – имя элемента управления, которому адресовано событие.

· MouseDown / MouseUp – имена обрабатываемых событий.

· Button – целое число, указывающее нажатую клавишу мыши (см. табл. 28).

· Shift – целое число, описывающее состояние клавиш Shift >, Ctrl > и Alt > на клавиатуре в момент генерирования события (см табл. 27).

· X – координата указателя мыши по горизонтали.

· Y – координата указателя мыши по вертикали.

Значение, соответствующее комбинациям нажатых кнопок мыши

Нажатая кнопка (кнопки) мыши

Значение параметра « Button »

Процедуры обработки события « MouseDown » и « MouseUp » являются более сложными и обладающие расширенными возможностями по сравнению с процедурами событий « Click » и « DblClick ».

Выполнение процедур обработки событий « MouseDown » и « MouseUp » нельзя запрограммировать на конкретную клавишу мыши, но можно узнать какой клавишей она была запущена.

При перемещении указателя мыши генерируется событие « MouseMove », имеющее следующий синтаксис:

Private Sub Name_MouseMove(Button As Integer,_

Shift As Integer, X As Single, Y As Single)

· Private – область видимости события.

· Name – имя элемента управления, которому адресовано событие.

· MouseMove – имя обрабатываемого события.

· Button – целое число, указывающее нажатую клавишу мыши (см. табл. 14).

· Shift – целое число, описывающее состояние клавиш Shift >, Ctrl > и Alt > на клавиатуре в момент генерирования события (см табл. 13).

· X – координата указателя мыши по горизонтали.

· Y – координата указателя мыши по вертикали.

При этом перемещение должно быть обязательно над элементом управления, для которого была написана процедура обработки события.

В отношении этого события важно помнить следующее: процедура генерируется при каждом перемещении мыши. Поэтому если процедура имеет слишком большой размер, то она не будет успевать выполняться в промежутки между ее вызовами. В результате это может разрушить всю работу приложения.

Visual Basic имеет два серьезных недостатка при обработке событий мыши:

12.3. Перемещение объектов

Иногда может возникнуть необходимость предоставить пользователю возможность перемещения объектов по форме. Это можно сделать, непосредственно изменяя свойства « Left » и « Top » у перемещаемых объектов. Однако это можно реализовать более гибким и удобным способом, используя события «схватить и бросить». Хотя это событие и реализуется для формы в целом, но осуществляется с помощью мыши.

Любой видимый элемент управления обладает особым свойством « DragMode ». При его значении «0 – Manual » перемещение объекта запрещается, и он работает обычным образом. В случае его значения «1 – Automatic » перемещение разрешается, но прочая его работа (все остальные события) блокируется.

Процедура обработки события, которое связано с перемещением элементов управления, имеет следующий синтаксис:

Private Sub Form_DragDrop(Source As Control,_

X As Single, Y As Single)

· Private – область видимости процедуры обработки события.

· Form – поскольку событие адресуется только форме, то в качестве имени управляющего объекта необходимо записывать слово « Form ».

· DragDrop – имя события.

· Source – особая переменная, в которой хранится имя перетаскиваемого элемента управления (свойство « Name »); работает как ссылка на него.

· Control – зарезервированное слово, описывающее переменную ссылку.

Текущие координаты « X » и « Y » будут присвоены свойствам « Left » и « Top » перемещаемого объекта соответственно, т.е. координатам левого верхнего угла элемента управления.

При перемещении иногда бывает важным узнать, возможно ли оно или нет. Отследить подобное помогает специальное событие « DragOver », процедура обработки которого имеет следующий синтаксис:

Private Sub Form_DragOver(Source As Control,_

X As Single, Y As Single, State As Integer)

· Private – область видимости процедуры обработки события.

· Form – поскольку событие адресуется только форме, то в качестве имени управляющего объекта необходимо записывать слово « Form ».

· DragOver – имя события.

· Source – особая переменная, в которой хранится имя перетаскиваемого элемента управления (свойство « Name »); работает как ссылка на него.

· Control – зарезервированное слово, описывающее переменную ссылку.

· State – специальный параметр, определяющий характер перемещения.

Параметр « State » может принимать несколько значений в зависимости от характера перемещения (см. табл. 29).

Возможные значения параметра « State »

Перетаскивание элемента управления с несвободного места на свободное

Перетаскивание элемента управления со свободного места на занятое

Перетаскивание элемента управления с одного свободного места на другое свободное

Еще одним полезным свойством перетаскиваемого элемента управления является « DragIcon ». Оно хранит в себе некоторый графический образ (файл пиктограммы «*. ico »), который будет отображаться при перемещении объекта вместо указателя мыши. В противном случае на экране просто будет отображен профиль этого объекта.

Контрольные вопросы для самопроверки

Источник

Всем привет, с вами автор блога scriptcoding.ru. Сегодня мы затронем такую тему как имитация нажатия клавиш программными средствами с помощью метода SendKeys класса WScript.Shell.

SendKeys – имитация нажатия клавиш – теоретические основы

Метод SendKeys, который позволяет имитировать нажатие клавиш и их комбинаций. Метод SendKeys объекта WScript.Shell является по своей природе слепым, так как он не позволяет указать то приложение, которому назначен ввод с клавиатуры, то есть, если мы сделаем попытку имитировать ввод фразы «привет мир», то она будет обрабатываться лишь тому приложениею, которое в данный момент являются активным. Если активным будет текстовый редактор – то в нем отобразится заданный текст, если антивирусная программа – то, скорее всего, никакой активности не произойдет.

Что бы использовать функцию Wscript SendKeys, нужно объявить переменную, которая будет хранить ссылку на объект WScript.Shell, а уже через эту переменную можно будет вызвать SendKeys.

Общая логика работы:

SendKeys (строка) – Видим, что мы в качестве аргумента должны передать строковое выражение, которое будет хранить имя клавиши или сочетание.

Что бы ввести просто символ или набор символов, мы всего-навсего прописываем их как строку, например: SendKeys(«привет мир»). Для ввода специальных клавиш (например, Enter, стрелки, функциональные клавиши и так далее), их название нужно заключить в фигурные скобки <>.

Ниже приведен список функциональных клавиш и их обозначение:

Если нужно указать сочетание специальных клавиш, то следует использовать следующие коды:

Также стоит помнить, что для ввода символов +, ^, %,

SendKeys – имитация нажатия клавиш – приступаем к программированию

Хорошо, с теорией разобрались, теперь давайте приступим к программированию. Давайте для начала рассмотрим следующий пример программного кода на языке vbscript:

А вот аналогичный пример, но уже на языке jscript:

А вот еще один пример на vbscript :

Ну и пример на языке jscript :

И так, давайте все подытожим… В этой статье мы рассмотрели функцию SendKeys класса WScript Shell, которая позволяет создавать имитацию нажатия клавиш, мы написали четыре программных кода – два на языке vbscript и два на языке jscript. Помним, что программный код работает под управлением сервера сценариев Windows Script Host.

Спасибо за внимание. Автор блога Владимир Баталий

Источник

Коды клавиш клавиатуры vba

ASCII таблица и
Virtual KeyCodes

ASCII таблица кодов символов Windows (win.1251):

Номер ответа: 7
Автор ответа:
Ra$cal

Вопросов: 18
Ответов: 817

Web-сайт: www.rascalspb.narod.ru
Профиль | | #7

Добавлено: 25.12.03 21:03
Dec Hex Символ
000 00 спец. NOP
001 01 спец. SOH
002 02 спец. STX
003 03 спец. ETX
004 04 спец. EOT
005 05 спец. ENQ
006 06 спец. ACK
007 07 спец. BEL
008 08 спец. BS
009 09 спец. Табуляция
010 0A спец. LF (Возвр. каретки)
011 0B спец. VT
012 0C спец. FF
013 0D спец. CR (Новая строка)
014 0E спец. SO
015 0F спец. SI
016 10 спец. DLE
017 11 спец. DC1
018 12 спец. DC2
019 13 спец. DC3
020 14 спец. DC4
021 15 спец. NAK
022 16 спец. SYN
023 17 спец. ETB
024 18 спец. CAN
025 19 спец. EM
026 1A спец. SUB
027 1B спец. ESC
028 1C спец. FS
029 1D спец. GS
030 1E спец. RS
031 1F спец. US
032 20 сцеп. SP (Пробел)
033 21 !
034 22 «
035 23 #
036 24 $
037 25 %
038 26 &
039 27
040 28 (
041 29 )
042 2A *
043 2B +
044 2C ,
045 2D
046 2E .
047 2F /
048 30 0
049 31 1
050 32 2
051 33 3
052 34 4
053 35 5
054 36 6
055 37 7
056 38 8
057 39 9
058 3A :
059 3B ;
060 3C
063 3F ?
064 40 @
065 41 A
066 42 B
067 43 C
068 44 D
069 45 E
070 46 F
071 47 G
072 48 H
073 49 I
074 4A J
075 4B K
076 4C L
077 4D M
078 4E N
079 4F O
080 50 P
081 51 Q
082 52 R
083 53 S
084 54 T
085 55 U
086 56 V
087 57 W
088 58 X
089 59 Y
090 5A Z
091 5B [
092 5C \
093 5D ]
094 5E ^
095 5F _
096 60 `
097 61 a
098 62 b
099 63 c
100 64 d
101 65 e
102 66 f
103 67 g
104 68 h
105 69 i
106 6A j
107 6B k
108 6C l
109 6D m
110 6E n
111 6F o
112 70 p
113 71 q
114 72 r
115 73 s
116 74 t
117 75 u
118 76 v
119 77 w
120 78 x
121 79 y
122 7A z
123 7B <
124 7C |
125 7D >
126 7E
127 7F 
Dec Hex Символ
128 80 Ђ
129 81 Ѓ
130 82
131 83 ѓ
132 84
133 85
134 86
135 87
136 88
137 89
138 8A Љ
139 8B
140 8C Њ
141 8D Ќ
142 8E Ћ
143 8F Џ
144 90 ђ
145 91
146 92
147 93
148 94
149 95
150 96
151 97
152 98 ˜
153 99
154 9A љ
155 9B
156 9C њ
157 9D ќ
158 9E ћ
159 9F џ
160 A0
161 A1 Ў
162 A2 ў
163 A3 Ј
164 A4 ¤
165 A5 Ґ
166 A6 ¦
167 A7 §
168 A8 Ё
169 A9 ©
170 AA Є
171 AB «
172 AC ¬
173 AD ­
174 AE ®
175 AF Ї
176 B0 °
177 B1 ±
178 B2 І
179 B3 і
180 B4 ґ
181 B5 µ
182 B6
183 B7 ·
184 B8 ё
185 B9
186 BA є
187 BB »
188 BC ј
189 BD Ѕ
190 BE ѕ
191 BF ї
192 C0 А
193 C1 Б
194 C2 В
195 C3 Г
196 C4 Д
197 C5 Е
198 C6 Ж
199 C7 З
200 C8 И
201 C9 Й
202 CA К
203 CB Л
204 CC М
205 CD Н
206 CE О
207 CF П
208 D0 Р
209 D1 С
210 D2 Т
211 D3 У
212 D4 Ф
213 D5 Х
214 D6 Ц
215 D7 Ч
216 D8 Ш
217 D9 Щ
218 DA Ъ
219 DB Ы
220 DC Ь
221 DD Э
222 DE Ю
223 DF Я
224 E0 а
225 E1 б
226 E2 в
227 E3 г
228 E4 д
229 E5 е
230 E6 ж
231 E7 з
232 E8 и
233 E9 й
234 EA к
235 EB л
236 EC м
237 ED н
238 EE о
239 EF п
240 F0 р
241 F1 с
242 F2 т
243 F3 у
244 F4 ф
245 F5 х
246 F6 ц
247 F7 ч
248 F8 ш
249 F9 щ
250 FA ъ
251 FB ы
252 FC ь
253 FD э
254 FE ю
255 FF я

Таблица вмртуальных кодов клавиш Windows (Virtual Key Codes):

VK_LBUTTON 01 Left mouse button VK_RBUTTON 02 Right mouse button VK_CANCEL 03 Control-break processing VK_MBUTTON 04 Middle mouse button
(three-button mouse) — 05-07 Undefined VK_BACK 08 BACKSPACE key VK_TAB 09 TAB key — 0A-0B Undefined VK_CLEAR 0C CLEAR key VK_RETURN 0D ENTER key — 0E-0F Undefined VK_SHIFT 10 SHIFT key VK_CONTROL 11 CTRL key VK_MENU 12 ALT key VK_PAUSE 13 PAUSE key VK_CAPITAL 14 CAPS LOCK key — 15-19 Reserved for Kanji systems — 1A Undefined VK_ESCAPE 1B ESC key — 1C-1F Reserved for Kanji systems VK_SPACE 20 SPACEBAR VK_PRIOR 21 PAGE UP key VK_NEXT 22 PAGE DOWN key VK_END 23 END key VK_HOME 24 HOME key VK_LEFT 25 LEFT ARROW key VK_UP 26 UP ARROW key VK_RIGHT 27 RIGHT ARROW key VK_DOWN 28 DOWN ARROW key VK_SELECT 29 SELECT key — 2A Original equipment
manufacturer (OEM) specific VK_EXECUTE 2B EXECUTE key VK_SNAPSHOT 2C PRINT SCREEN key
for Windows 3.0 and later VK_INSERT 2D INS key VK_DELETE 2E DEL key VK_HELP 2F HELP key VK_0 30 0 key VK_1 31 1 key VK_2 32 2 key VK_3 33 3 key VK_4 34 4 key VK_5 35 5 key VK_6 36 6 key VK_7 37 7 key VK_8 38 8 key VK_9 39 9 key — 3A-40 Undefined VK_A 41 A key VK_B 42 B key VK_C 43 C key VK_D 44 D key VK_E 45 E key VK_F 46 F key VK_G 47 G key VK_H 48 H key VK_I 49 I key VK_J 4A J key VK_K 4B K key VK_L 4C L key VK_M 4D M key VK_N 4E N key VK_O 4F O key VK_P 50 P key VK_Q 51 Q key VK_R 52 R key VK_S 53 S key VK_T 54 T key VK_U 55 U key VK_V 56 V key VK_W 57 W key VK_X 58 X key VK_Y 59 Y key VK_Z 5A Z key VK_LWIN 5B Left Windows key
(Microsoft Natural Keyboard) VK_RWIN 5C Right Windows key
(Microsoft Natural Keyboard) VK_APPS 5D Applications key
(Microsoft Natural Keyboard) — 5E-5F Undefined VK_NUMPAD0 60 Numeric keypad 0 key VK_NUMPAD1 61 Numeric keypad 1 key VK_NUMPAD2 62 Numeric keypad 2 key VK_NUMPAD3 63 Numeric keypad 3 key VK_NUMPAD4 64 Numeric keypad 4 key VK_NUMPAD5 65 Numeric keypad 5 key VK_NUMPAD6 66 Numeric keypad 6 key VK_NUMPAD7 67 Numeric keypad 7 key VK_NUMPAD8 68 Numeric keypad 8 key VK_NUMPAD9 69 Numeric keypad 9 key VK_MULTIPLY 6A Multiply key VK_ADD 6B Add key VK_SEPARATOR 6C Separator key VK_SUBTRACT 6D Subtract key VK_DECIMAL 6E Decimal key VK_DIVIDE 6F Divide key VK_F1 70 F1 key VK_F2 71 F2 key VK_F3 72 F3 key VK_F4 73 F4 key VK_F5 74 F5 key VK_F6 75 F6 key VK_F7 76 F7 key VK_F8 77 F8 key VK_F9 78 F9 key VK_F10 79 F10 key VK_F11 7A F11 key VK_F12 7B F12 key VK_F13 7C F13 key VK_F14 7D F14 key VK_F15 7E F15 key VK_F16 7F F16 key VK_F17 80H F17 key VK_F18 81H F18 key VK_F19 82H F19 key VK_F20 83H F20 key VK_F21 84H F21 key VK_F22 85H F22 key VK_F23 86H F23 key VK_F24 87H F24 key — 88-8F Unassigned VK_NUMLOCK 90 NUM LOCK key VK_SCROLL 91 SCROLL LOCK key — 92-B9 Unassigned — BA-C0 OEM specific — C1-DA Unassigned — DB-E4 OEM specific — E5 Unassigned — E6 OEM specific — E7-E8 Unassigned — E9-F5 OEM specific VK_ATTN F6 Attn key VK_CRSEL F7 CrSel key VK_EXSEL F8 ExSel key VK_EREOF F9 Erase EOF key VK_PLAY FA Play key VK_ZOOM FB Zoom key VK_NONAME FC Reserved for future use. VK_PA1 FD PA1 key VK_OEM_CLEAR FE Clear key

На главную страничку учебника Visual Basic

Материалы, которые находятся на этой страничке, любезно предоставлены Игорем Ивановым

Источник

Читайте также:  файлы exo андроид что это такое можно ли удалить
Обучающий проект