НаписаниС макроса Π² excel: Запуск ΠΈ созданиС макросов Π² Excel для Ρ‡Π°ΠΉΠ½ΠΈΠΊΠΎΠ²

Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠ΅

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ макросов Π² excel (Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅)

ΠžΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½ΠΎ ΠΎΡ‚ Admin β€” ΠžΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ макросов Π² excel β€” это Π·Π°Π΄Π°Ρ‡Π°, которая Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ уровня Π·Π½Π°Π½ΠΈΠΉ ΠΈ Π½Π°Π²Ρ‹ΠΊΠΎΠ². Но ΠΎΠ΄ΠΈΠ½ Ρ€Π°Π· Ρ€Π°Π·ΠΎΠ±Ρ€Π°Π²ΡˆΠΈΡΡŒ с ΠΈΡ… написаниСм, ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡ‡Π΅Π½ΡŒ сильно ΠΎΠ±Π»Π΅Π³Ρ‡ΠΈΡ‚ΡŒ сСбС Ρ€Π°Π±ΠΎΡ‚Ρƒ. Π’Π°ΠΊ ΠΊΠ°ΠΊ использованиС макросов позволяСт Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠΎΠ½ΠΎΡ‚ΠΎΠ½Π½Ρ‹Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚ΡŒ excel всю Ρ€Π°Π±ΠΎΡ‚Ρƒ ΠΏΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΡŽ ΠΎΠ΄Π½ΠΈΡ… ΠΈ Ρ‚Π΅Ρ… ΠΆΠ΅ дСйствий.
Π’ ΡΡ‚Π°Ρ‚ΡŒΠ΅ рассмотрСны основы создания макросов, благодаря ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ Π²Ρ‹ Π½Π°ΠΏΠΈΡˆΠΈΡ‚Π΅ свой ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ макрос ΠΈ ΠΏΠΎΠΉΠΌΠ΅Ρ‚Π΅, Π·Π°Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ Π»ΠΈ дальшС ΠΈΠ·ΡƒΡ‡Π°Ρ‚ΡŒ Π΄Π°Π½Π½ΡƒΡŽ Ρ‚Π΅ΠΌΡƒ.

Π’ΠΊΠ»Π°Π΄ΠΊΠ° Β«Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΒ»

Для Π½Π°Ρ‡Π°Π»Π° Π½ΡƒΠΆΠ½ΠΎ Π² эксСлС ΠΎΡ‚ΠΎΠ±Ρ€Π°Π·ΠΈΡ‚ΡŒ Π²ΠΊΠ»Π°Π΄ΠΊΡƒ Β«Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΒ»:

  • Π’Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹: Π€Π°ΠΉΠ»Β  ➜  ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ ➜  ΠΠ°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ Π»Π΅Π½Ρ‚Ρƒ ➜ Π²ΠΊΠ»Π°Π΄ΠΊΠ° Β«ΠΠ°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ Π»Π΅Π½Ρ‚ΡƒΒ».
  • Π‘ΠΏΡ€Π°Π²Π° Π½Π° ΠΏΠ°Π½Π΅Π»ΠΈΒ  ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Ρ„Π»Π°ΠΆΠΎΠΊ «Разработчик»  βžœΒ Β ΠΠ°ΠΆΠ°Ρ‚ΡŒ «ОК».

ΠŸΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ Π² ΠΎΠΊΠ½ΠΎ макросов

  • ΠŸΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ Π½Π° Π²ΠΊΠ»Π°Π΄ΠΊΡƒ Β«Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΒ» -> Π’ Π³Ρ€ΡƒΠΏΠΏΠ΅ «Код» Π½Π°ΠΆΠ°Ρ‚ΡŒ ΠΊΠ½ΠΎΠΏΠΊΡƒ Β«Visual BasicΒ».

Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡ ΠΎΠΊΠ½Π° макросов Excel

Окно ΠΊΠΎΠ΄Π° макросов

Π§Ρ‚ΠΎΠ±Ρ‹ Ρ€Π°Π·ΠΎΠ±Ρ€Π°Ρ‚ΡŒΡΡ, ΠΊΠ°ΠΊ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ макрос, рассмотрим ΠΊΠΎΠ΄.

Sub programm()

Cells(4, 2) = «РасчСт Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉΒ» β€˜ тСкст Π² ячСйкС
Cells(6, 5) = 5 β€˜ число Π² ячСйкС
Cells(8, 3) = Cells(6, 3) * Cells(7, 3) β€˜ Ρ„ΠΎΡ€ΠΌΡƒΠ»Π° Π² ячСйкС

Cells(4, 2).Font.Size = 14Β  Β  Β  Β β€˜ Ρ€Π°Π·ΠΌΠ΅Ρ€ ΡˆΡ€ΠΈΡ„Ρ‚Π°
Cells(4, 2).Font.Bold = TrueΒ  Β  β€˜ ΠΆΠΈΡ€Π½Ρ‹ΠΉ
Cells(4, 2).Font.Italic = TrueΒ  Β β€˜ курсив
Cells(4, 2).Font.Underline = xlUnderlineStyleSingleΒ  β€˜ ΠΏΠΎΠ΄Ρ‡Π΅Ρ€ΠΊΠΈΠ²Π°Π½ΠΈΠ΅
Cells(4, 2).Interior.Color = 65535 β€˜Π·Π°Π»ΠΈΠ²ΠΊΠ° ячСйки

End Sub

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ макроса с внСсСниСм Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Ρ€Π°Π·Π½ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ°, Π° Ρ‚Π°ΠΊΠΆΠ΅ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ячССк с коммСнтариями ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΠ°Ρ‡Π°Ρ‚ΡŒ ΠΏΠΎ ссылкС.

Начало создания макроса

  • Π›ΡŽΠ±ΠΎΠΉ макрос Π΄ΠΎΠ»ΠΆΠ΅Π½ Π½Π°Ρ‡ΠΈΠ½Π°Ρ‚ΡŒΡΡ с ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π°Β Sub, Π·Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ ΠΈΠ΄Π΅Ρ‚ имя макроса ΠΈ список Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ² (Ссли Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ² Π½Π΅Ρ‚, Ρ‚ΠΎ скобки Π½Π°Π΄ΠΎ ΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ пустыми).
  • Π›ΡŽΠ±ΠΎΠΉ макрос Π΄ΠΎΠ»ΠΆΠ΅Π½ Π·Π°ΠΊΠ°Π½Ρ‡ΠΈΠ²Π°Ρ‚ΡŒΡΡ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠΌΒ End Sub.
  • ВсС, Ρ‡Ρ‚ΠΎ находится ΠΌΠ΅ΠΆΠ΄ΡƒΒ SubΒ ΠΈΒ End Sub β€” Ρ‚Π΅Π»ΠΎ макроса, Ρ‚.Π΅. ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±ΡƒΠ΄ΡƒΡ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ ΠΏΡ€ΠΈ запускС макроса.Β 
  • ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ ΠΏΠΈΡˆΠ΅Ρ‚ΡΡ послС Π·Π½Π°ΠΊΠ° апострофа. Он Π½ΡƒΠΆΠ΅Π½ для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π΄Π΅Π»Π°Ρ‚ΡŒ ΠΏΠΎΠΌΠ΅Ρ‚ΠΊΠΈ для сСбя, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΎΡ‚ΠΊΡ€Ρ‹Π² макрос Ρ‡Π΅Ρ€Π΅Π· n-Π½ΠΎΠ΅ количСство Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΌΠΎΠΆΠ½ΠΎ Π½Π΅ Π²ΡΠΏΠΎΠΌΠ½ΠΈΡ‚ΡŒ ΠΎ Ρ‡Π΅ΠΌ ΠΎΠ½. Π’Π°ΠΊΠΆΠ΅ ΠΎΠ½ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ понадобится ΠΏΡ€ΠΈ написании Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ макроса Π² качСствС ΡˆΠΏΠ°Ρ€Π³Π°Π»ΠΊΠΈ ΠΏΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌ.

Π―Ρ‡Π΅ΠΉΠΊΠΈ Π² макросС

  • Π―Ρ‡Π΅ΠΉΠΊΠ° Π² макросС обозначаСтся Cells(4, 1), Π³Π΄Π΅ 4-Π½ΠΎΠΌΠ΅Ρ€ строки, 1-Π½ΠΎΠΌΠ΅Ρ€ столбца
  • КаТдой ячСйкС ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΈΡΠ²ΠΎΠΈΡ‚ΡŒ Ρ€Π°Π·Π½Ρ‹Π΅ значСния, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€:
    • Cells(4, 1) = «РасчСт значСний»  ➀ тСкст (ΠΏΠΈΡˆΠ΅Ρ‚ΡΡ Π² ΠΊΠ°Π²Ρ‹Ρ‡ΠΊΠ°Ρ…)
    • Cells(4, 1) =Β  5Β  ➀ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅
    • Cells(4, 1) =Β  Cells(2, 1) + Cells(3, 1) ➀ сумма Π΄Ρ€ΡƒΠ³ΠΈΡ… ячССк
    • Cells(4, 1) =Β  Cells(2, 1) * 20 + Cells(3, 1) * 80 ➀ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½ΠΎΠ΅ ΠΏΡ€ΠΈ вычислСнии Ρ„ΠΎΡ€ΠΌΡƒΠ»Ρ‹
  • Π”ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ ячССк обозначаСтся Β Range(Cells(6, 1), Cells(8. 2)), Π³Π΄Π΅ Range β€” Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ ячССк
  • Π”ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ ячССк ΡƒΠ΄ΠΎΠ±Π½ΠΎ Π²Ρ‹Π±ΠΈΡ€Π°Ρ‚ΡŒ ΠΏΡ€ΠΈ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ Π³Ρ€ΡƒΠΏΠΏΡ‹ ячССк.Β 

Π€ΠΎΡ€ΠΌΠ°Ρ‚ ячССк

  • Π—Π°Π΄Π°Ρ‚ΡŒ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ ячСйкС ΠΌΠΎΠΆΠ½ΠΎ Π·Π°Π΄Π°Ρ‚ΡŒ Ρ‡Π΅Ρ€Π΅Π· свойства ячСйки. Π’ нашСм ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ это Ρ€Π°Π·ΠΌΠ΅Ρ€ ΡˆΡ€ΠΈΡ„Ρ‚Π°, Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ ΡˆΡ€ΠΈΡ„Ρ‚Π° ΠΈ Π·Π°Π»ΠΈΠ²ΠΊΠ° ячСйки.
  • Π’ Ρ„Π°ΠΉΠ»Π΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° макроса рассмотрСны Π·Π°Π»ΠΈΠ²ΠΊΠ° ячССк, Π³Ρ€Π°Π½ΠΈΡ†Ρ‹ ячССк ΠΈ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π° ячССк для всСй Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹, ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… Π³Ρ€Π°Π½ΠΈΡ† с ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ Ρ€Π°Π·Π½ΠΎΠΉ Ρ‚ΠΎΠ»Ρ‰ΠΈΠ½Ρ‹ Π³Ρ€Π°Π½ΠΈΡ† (ΡΠΊΠ°Ρ‡Π°Ρ‚ΡŒ ΠΏΠΎ ссылкС).
  • Π”Ρ€ΡƒΠ³ΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ для форматирования ячССк ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡ‚ΠΈ Π² ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚Π΅.

Кнопка для запуска макроса

  • Π’ΠΊΠ»Π°Π΄ΠΊΠ° Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ ➜  Π³Ρ€ΡƒΠΏΠΏΠ° Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹ управлСния ➜  ΠΊΠ½ΠΎΠΏΠΊΠ° Π’ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ
  • Π’ Π³Ρ€ΡƒΠΏΠΏΠ΅ Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹ управлСния Ρ„ΠΎΡ€ΠΌΡ‹ Π½Π°ΠΆΠ°Ρ‚ΡŒ «Кнопка» (ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ) .
  • Π©Π΅Π»ΠΊΠ½ΡƒΡ‚ΡŒ Π½Π° листС мСсто, Π³Π΄Π΅ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ располоТСн Π»Π΅Π²Ρ‹ΠΉ Π²Π΅Ρ€Ρ…Π½ΠΈΠΉ ΡƒΠ³ΠΎΠ» ΠΊΠ½ΠΎΠΏΠΊΠΈ. ΠŸΠΎΡΠ²ΠΈΡ‚ΡΡ Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰Π΅Π΅ ΠΎΠΊΠ½ΠΎ НазначСниС макроса.
    ΠΠ°Π·Π½Π°Ρ‡ΡŒΡ‚Π΅ ΠΊΠ½ΠΎΠΏΠΊΠ΅ макрос ΠΈ Π½Π°ΠΆΠΌΠΈΡ‚Π΅ ΠΊΠ½ΠΎΠΏΠΊΡƒ ОК.
  • Π§Ρ‚ΠΎΠ±Ρ‹ Π·Π°Π΄Π°Ρ‚ΡŒ свойства ΠΊΠ½ΠΎΠΏΠΊΠΈ, Ρ‰Π΅Π»ΠΊΠ½ΠΈΡ‚Π΅ Π΅Π΅ ΠΏΡ€Π°Π²ΠΎΠΉ ΠΊΠ½ΠΎΠΏΠΊΠΎΠΉ ΠΌΡ‹ΡˆΠΈ ΠΈ Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅.

Β 

Если Ρƒ вас ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΎΡΡŒ ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π», Ρ‚ΠΎ смСло ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΊ ΠΈΠ·ΡƒΡ‡Π΅Π½ΠΈΡŽ макросов excel. Настройку Ρ€Π°Π±ΠΎΡ‚Ρ‹ макросов excel ΠΈ ΠΈΡ… созданиС Π»ΡƒΡ‡ΡˆΠ΅ ΠΎΡΠ²Π°ΠΈΠ²Π°Ρ‚ΡŒ Π½Π° ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅, Π³Π΄Π΅ понятна Ρ†Π΅Π»ΡŒ написания ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. Π˜Π·ΡƒΡ‡ΠΈΡ‚ΡŒ основы макросов ΠΌΠΎΠΆΠ½ΠΎ Π½Π° курсС Β Β«Excel макросы: Π³Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€ простых ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ² ΠΏΠΎ ΠΌΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΠΊΠ΅Β«.

Π ΡƒΠ±Ρ€ΠΈΠΊΠ°: Π’Π°Π±Π»ΠΈΡ†Ρ‹ Excel

ΠœΠ΅Ρ‚ΠΊΠΈ ЭксСль, Excel

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΈ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ макросов

Β 

НиТС описываСтся созданиС ΠΈ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ макроса Π² ExcelΒ 2013 ΠΈ 2016.

Π—Π°ΠΏΠΈΡΡŒ макроса

ΠŸΡ€ΠΈ записи макроса всС Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ дСйствия Π·Π°ΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚ΡΡ срСдством записи макроса. Π’Π°ΠΊΠΈΠΌΠΈ дСйствиями ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π²Π²ΠΎΠ΄ тСкста ΠΈΠ»ΠΈ чисСл, Π²Ρ‹Π±ΠΎΡ€ ячССк ΠΈΠ»ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄ Π½Π° Π»Π΅Π½Ρ‚Π΅ ΠΈΠ»ΠΈ Π² мСню, Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅, Π²Ρ‹Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ячССк, строк ΠΈΠ»ΠΈ столбцов, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π²Ρ‹Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ячССк ΠΏΡƒΡ‚Π΅ΠΌ пСрСтаскивания указатСля ΠΌΡ‹ΡˆΠΈ. ΠšΠΎΠΌΠ°Π½Π΄Ρ‹ для записи, создания ΠΈ удалСния макросов доступны Π½Π° Π²ΠΊΠ»Π°Π΄ΠΊΠ΅ Π»Π΅Π½Ρ‚Ρ‹ Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ.

    1. Если Π²ΠΊΠ»Π°Π΄ΠΊΠ° Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ нСдоступна, Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ дСйствия для Π΅Π΅ отобраТСния:
        1. ΠžΡ‚ΠΊΡ€ΠΎΠΉΡ‚Π΅ Π²ΠΊΠ»Π°Π΄ΠΊΡƒ Π€Π°ΠΉΠ».
        2. НаТмитС ΠΊΠ½ΠΎΠΏΠΊΡƒ ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ ΠΈ Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ Настройка Π»Π΅Π½Ρ‚Ρ‹.
        3. Π’ ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠΈ Настройка Π»Π΅Π½Ρ‚Ρ‹ Π² спискС ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ Π²ΠΊΠ»Π°Π΄ΠΊΠΈ установитС Ρ„Π»Π°ΠΆΠΎΠΊ Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ, Π° Π·Π°Ρ‚Π΅ΠΌ Π½Π°ΠΆΠΌΠΈΡ‚Π΅ ΠΊΠ½ΠΎΠΏΠΊΡƒ ОК.
      1. Π§Ρ‚ΠΎΠ±Ρ‹ Ρ€Π°Π·Ρ€Π΅ΡˆΠΈΡ‚ΡŒ всС макросы, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, сначала потрСбуСтся ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ бСзопасности. Для этого Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹Π΅ Π½ΠΈΠΆΠ΅ дСйствия.
        1. На Π²ΠΊΠ»Π°Π΄ΠΊΠ΅ Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ Π² Π³Ρ€ΡƒΠΏΠΏΠ΅ Код Π½Π°ΠΆΠΌΠΈΡ‚Π΅ ΠΊΠ½ΠΎΠΏΠΊΡƒ Π‘Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ макросов.
        2. Π’ Π³Ρ€ΡƒΠΏΠΏΠ΅ ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ макросов Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚Π΅Π»ΡŒ Π’ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ всС макросы (Π½Π΅ рСкомСндуСтся, Π²ΠΎΠ·ΠΌΠΎΠΆΠ΅Π½ запуск опасной ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹), Π° Π·Π°Ρ‚Π΅ΠΌ Π΄Π²Π°ΠΆΠ΄Ρ‹ Π½Π°ΠΆΠΌΠΈΡ‚Π΅ ΠΊΠ½ΠΎΠΏΠΊΡƒ ОК.

          Π’ΠΠ˜ΠœΠΠΠ˜Π• : Для прСдотвращСния запуска ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎ опасного ΠΊΠΎΠ΄Π° ΠΏΠΎ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΠΈ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с макросами рСкомСндуСтся Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹, ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‰ΠΈΠ΅ всС макросы.

      2. Нравится? ПодСлись с Π΄Ρ€ΡƒΠ·ΡŒΡΠΌΠΈ Π² ΡΠΎΡ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… сСтях, Π½Π°ΠΆΠΌΠΈ ΠΏΠΎΠ΄Π΅Π»ΠΈΡ‚ΡŒΡΡ

          1. На Π²ΠΊΠ»Π°Π΄ΠΊΠ΅ Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ Π² Π³Ρ€ΡƒΠΏΠΏΠ΅ Код Π½Π°ΠΆΠΌΠΈΡ‚Π΅ ΠΊΠ½ΠΎΠΏΠΊΡƒ Π—Π°ΠΏΠΈΡΡŒ макроса.
          2. Π’ ΠΏΠΎΠ»Π΅ Имя Π²Π²Π΅Π΄ΠΈΡ‚Π΅ имя макроса .

            ΠŸΠ Π˜ΠœΠ•Π§ΠΠΠ˜Π• :Β ΠŸΠ΅Ρ€Π²Ρ‹ΠΌ символом ΠΈΠΌΠ΅Π½ΠΈ макроса Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Ρ‚ΡŒ Π±ΡƒΠΊΠ²Π°. ΠŸΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ символы ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Π±ΡƒΠΊΠ²Π°ΠΌΠΈ, Ρ†ΠΈΡ„Ρ€Π°ΠΌΠΈ ΠΈΠ»ΠΈ Π·Π½Π°ΠΊΠ°ΠΌΠΈ подчСркивания. Π’ ΠΈΠΌΠ΅Π½ΠΈ макроса Π½Π΅ Π΄ΠΎΠΏΡƒΡΠΊΠ°ΡŽΡ‚ΡΡ ΠΏΡ€ΠΎΠ±Π΅Π»Ρ‹; Π² качСствС Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚Π΅Π»Π΅ΠΉ слов слСдуСт ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π·Π½Π°ΠΊΠΈ подчСркивания. Если ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ имя макроса, ΡΠ²Π»ΡΡŽΡ‰Π΅Π΅ΡΡ ссылкой Π½Π° ячСйку, ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΡΠ²ΠΈΡ‚ΡŒΡΡ сообщСниС ΠΎΠ± ошибкС, ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‰Π΅Π΅ Π½Π° нСдопустимоС имя макроса.

          3. Π§Ρ‚ΠΎΠ±Ρ‹ Π½Π°Π·Π½Π°Ρ‡ΠΈΡ‚ΡŒ сочСтаниС клавиш с клавишСй CTRL для запуска макроса, Π² ΠΏΠΎΠ»Π΅ Π‘ΠΎΡ‡Π΅Ρ‚Π°Π½ΠΈΠ΅ клавиш Π²Π²Π΅Π΄ΠΈΡ‚Π΅ Π»ΡŽΠ±ΡƒΡŽ ΡΡ‚Ρ€ΠΎΡ‡Π½ΡƒΡŽ ΠΈΠ»ΠΈ ΠΏΡ€ΠΎΠΏΠΈΡΠ½ΡƒΡŽ Π±ΡƒΠΊΠ²Ρƒ.Π’Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠ΅ сочСтаниС клавиш замСняСт всС ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡŽΡ‰ΠΈΠ΅ стандартныС сочСтания клавиш Excel Π½Π° Ρ‚ΠΎ врСмя, ΠΏΠΎΠΊΠ° ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Π° ΠΊΠ½ΠΈΠ³Π°, содСрТащая Π΄Π°Π½Π½Ρ‹ΠΉ макрос.
          1. Π’ ΠΏΠΎΠ»Π΅ Π‘ΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ Π² Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ ΠΊΠ½ΠΈΠ³Ρƒ, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π½ΡƒΠΆΠ½ΠΎ ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ макрос.Если Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π΄Π°Π½Π½Ρ‹ΠΉ макрос Π±Ρ‹Π» всСгда доступСн ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ Π² Excel, Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ Личная ΠΊΠ½ΠΈΠ³Π° макросов. ΠŸΡ€ΠΈ Π²Ρ‹Π±ΠΎΡ€Π΅ этого Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π° создаСтся скрытая личная ΠΊΠ½ΠΈΠ³Π° макросов (Personal.xlsb) (Ссли ΠΎΠ½Π° Π΅Ρ‰Π΅ Π½Π΅ сущСствуСт), Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ сохраняСтся Π΄Π°Π½Π½Ρ‹ΠΉ макрос. Π’ WindowsΒ 7 ΠΈ Windows Vista эта ΠΊΠ½ΠΈΠ³Π° сохраняСтся Π² ΠΏΠ°ΠΏΠΊΠ΅ C:\Users\имя_ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ\Application Data\Microsoft\Excel\XLStart. Π’ Microsoft WindowsΒ XP эта ΠΊΠ½ΠΈΠ³Π° сохраняСтся Π² ΠΏΠ°ΠΏΠΊΠ΅ C:\Documents and Settings\имя_ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ\Application Data\Microsoft\Excel\XLStart, ΠΎΡ‚ΠΊΡƒΠ΄Π° ΠΎΠ½Π° Π±ΡƒΠ΄Π΅Ρ‚ автоматичСски Π·Π°Π³Ρ€ΡƒΠΆΠ°Ρ‚ΡŒΡΡ ΠΏΡ€ΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ запускС прилоТСния Excel. Если Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ автоматичСски Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ макрос ΠΈΠ· Π»ΠΈΡ‡Π½ΠΎΠΉ ΠΊΠ½ΠΈΠ³ΠΈ Π² Π΄Ρ€ΡƒΠ³ΠΎΠΉ ΠΊΠ½ΠΈΠ³Π΅, слСдуСт Ρ‚Π°ΠΊΠΆΠ΅ ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ эту ΠΊΠ½ΠΈΠ³Ρƒ Π² ΠΏΠ°ΠΏΠΊΠ΅ XLStart, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΈ запускС Excel ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°Π»ΠΈΡΡŒ ΠΎΠ±Π΅ ΠΊΠ½ΠΈΠ³ΠΈ.
          2. Π’Π²Π΅Π΄ΠΈΡ‚Π΅ описаниС макроса Π² ΠΏΠΎΠ»Π΅ ОписаниС.
          3. Для Π½Π°Ρ‡Π°Π»Π° записи макроса Π½Π°ΠΆΠΌΠΈΡ‚Π΅ ΠΊΠ½ΠΎΠΏΠΊΡƒ ОК.
          4. Π’Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ дСйствия, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½ΡƒΠΆΠ½ΠΎ Π·Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ.
          5. На Π²ΠΊΠ»Π°Π΄ΠΊΠ΅ Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ Π² Π³Ρ€ΡƒΠΏΠΏΠ΅ Код Π½Π°ΠΆΠΌΠΈΡ‚Π΅ ΠΊΠ½ΠΎΠΏΠΊΡƒ ΠžΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ запись .

          Β 

          Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ макроса с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ VBA

          1. На Π²ΠΊΠ»Π°Π΄ΠΊΠ΅ Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ Π² Π³Ρ€ΡƒΠΏΠΏΠ΅ Код Π½Π°ΠΆΠΌΠΈΡ‚Π΅ ΠΊΠ½ΠΎΠΏΠΊΡƒ Visual Basic.
          2. ΠŸΡ€ΠΈ нСобходимости Π² мСню Insert Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ Module.

            ΠŸΠ Π˜ΠœΠ•Π§ΠΠΠ˜Π• :Β ΠœΠΎΠ΄ΡƒΠ»ΠΈ Π±ΡƒΠ΄ΡƒΡ‚ созданы автоматичСски для всСх листов ΠΊΠ½ΠΈΠ³ΠΈ.

          3. Π’ ΠΎΠΊΠ½Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ модуля Π²Π²Π΅Π΄ΠΈΡ‚Π΅ ΠΈΠ»ΠΈ скопируйтС Π½ΡƒΠΆΠ½Ρ‹ΠΉ тСкст макроса.
          4. Для запуска макроса ΠΈΠ· ΠΎΠΊΠ½Π° модуля Π½Π°ΠΆΠΌΠΈΡ‚Π΅ ΠΊΠ»Π°Π²ΠΈΡˆΡƒ F5.
          5. Когда макрос Π±ΡƒΠ΄Π΅Ρ‚ создан, Π² мСню File Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ Close and Return to Microsoft Excel.

          Нравится? Подпишись Π½Π° рассылку ΠΏΠΎΠ»Π΅Π·Π½Ρ‹Ρ… совСтов ΠΎΡ‚ prodma.ru

          [wysija_form id=Β»1β€³]

          ΠšΠΎΠΏΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ части макроса для создания Π½ΠΎΠ²ΠΎΠ³ΠΎ макроса

          1. ΠžΡ‚ΠΊΡ€ΠΎΠΉΡ‚Π΅ ΠΊΠ½ΠΈΠ³Ρƒ, ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‰ΡƒΡŽ макрос, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½ΡƒΠΆΠ½ΠΎ ΡΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ.
          2. На Π²ΠΊΠ»Π°Π΄ΠΊΠ΅ Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ Π² Π³Ρ€ΡƒΠΏΠΏΠ΅ Код Π½Π°ΠΆΠΌΠΈΡ‚Π΅ ΠΊΠ½ΠΎΠΏΠΊΡƒ ΠœΠ°ΠΊΡ€ΠΎΡΡ‹.
          3. Π’ ΠΏΠΎΠ»Π΅ Имя Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ имя макроса, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½ΡƒΠΆΠ½ΠΎ ΡΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ.
          4. НаТмитС ΠΊΠ½ΠΎΠΏΠΊΡƒ Π˜Π·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ.
          5. Π’ ΠΎΠΊΠ½Π΅ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π° Visual Basic Π²Ρ‹Π΄Π΅Π»ΠΈΡ‚Π΅ строки макроса, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½ΡƒΠΆΠ½ΠΎ ΡΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ.

            Π‘ΠžΠ’Π•Π’ :Β Π§Ρ‚ΠΎΠ±Ρ‹ ΡΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ макрос Ρ†Π΅Π»ΠΈΠΊΠΎΠΌ, Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅ Π² Π²Ρ‹Π΄Π΅Π»Π΅Π½Π½ΡƒΡŽ Ρ‡Π°ΡΡ‚ΡŒ строки Sub ΠΈ End Sub.

          6. Π’Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ Π² мСню ΠŸΡ€Π°Π²ΠΊΠ° ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ ΠšΠΎΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ.
          7. Π’ ΠΏΠΎΠ»Π΅ Procedure ΠΎΠΊΠ½Π° ΠΊΠΎΠ΄Π° Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ, ΠΊΡƒΠ΄Π° Π½ΡƒΠΆΠ½ΠΎ ΠΏΠΎΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ тСкст.
          8. Π’Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ Π² мСню ΠŸΡ€Π°Π²ΠΊΠ° ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ Π’ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ.

          Π›ΠΈΡ‡Π½ΡƒΡŽ ΠΊΠ½ΠΈΠ³Ρƒ макросов (Ρ„Π°ΠΉΠ» Personal.xls) Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ нСльзя, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΎΠ½Π° являСтся скрытой ΠΊΠ½ΠΈΠ³ΠΎΠΉ, которая всСгда ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Π°. Π‘Π½Π°Ρ‡Π°Π»Π° Π΅Π΅ слСдуСт ΠΎΡ‚ΠΎΠ±Ρ€Π°Π·ΠΈΡ‚ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ ΠŸΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ. Π­Ρ‚ΠΎΡ‚ Ρ„Π°ΠΉΠ» Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒ Π² Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π΅ Visual Basic, Π½Π°ΠΆΠ°Π² клавиши ALT+F11.

          НазначСниС макроса ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρƒ, графичСскому ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρƒ ΠΈ элСмСнту управлСния

          1. Π©Π΅Π»ΠΊΠ½ΠΈΡ‚Π΅ Π½Π° листС ΠΏΡ€Π°Π²ΠΎΠΉ ΠΊΠ½ΠΎΠΏΠΊΠΎΠΉ ΠΌΡ‹ΡˆΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚, графичСский ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ ΠΈΠ»ΠΈ элСмСнт управлСния, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌΡƒ Π½ΡƒΠΆΠ½ΠΎ Π½Π°Π·Π½Π°Ρ‡ΠΈΡ‚ΡŒ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ макрос, Π° Π·Π°Ρ‚Π΅ΠΌ Π² контСкстном мСню Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ ΠΠ°Π·Π½Π°Ρ‡ΠΈΡ‚ΡŒ макрос.
          2. Π’ ΠΏΠΎΠ»Π΅ Имя Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ макрос, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½ΡƒΠΆΠ½ΠΎ Π½Π°Π·Π½Π°Ρ‡ΠΈΡ‚ΡŒ.

          Β 

          Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ макроса

          1. Π’Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ ΠΎΠ΄Π½ΠΎ ΠΈΠ· ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹Ρ… Π½ΠΈΠΆΠ΅ дСйствий.
            • ΠžΡ‚ΠΊΡ€ΠΎΠΉΡ‚Π΅ ΠΊΠ½ΠΈΠ³Ρƒ, ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‰ΡƒΡŽ макрос, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½ΡƒΠΆΠ½ΠΎ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ.
            • Если макрос, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ трСбуСтся ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ, хранится Π² Π»ΠΈΡ‡Π½ΠΎΠΉ ΠΊΠ½ΠΈΠ³Π΅ макросов (Personal.xlsb) ΠΈ эта ΠΊΠ½ΠΈΠ³Π° скрыта, для Π΅Π΅ отобраТСния Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹Π΅ Π½ΠΈΠΆΠ΅ дСйствия.
              1. На Π²ΠΊΠ»Π°Π΄ΠΊΠ΅ Π’ΠΈΠ΄ Π² Π³Ρ€ΡƒΠΏΠΏΠ΅ Окно Π½Π°ΠΆΠΌΠΈΡ‚Π΅ ΠΊΠ½ΠΎΠΏΠΊΡƒ ΠžΡ‚ΠΎΠ±Ρ€Π°Π·ΠΈΡ‚ΡŒ ΠΎΠΊΠ½ΠΎ.
              2. Π’ Ρ€Π°Π·Π΄Π΅Π»Π΅ ΠŸΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ скрытоС ΠΎΠΊΠ½ΠΎ ΠΊΠ½ΠΈΠ³ΠΈ Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ ΠΏΡƒΠ½ΠΊΡ‚ PERSONAL ΠΈ Π½Π°ΠΆΠΌΠΈΡ‚Π΅ ΠΊΠ½ΠΎΠΏΠΊΡƒ ОК.
          2. Π’ спискС Находится Π² Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ Ρ€Π°Π±ΠΎΡ‡ΡƒΡŽ ΠΊΠ½ΠΈΠ³Ρƒ с макросом, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ трСбуСтся ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ. НапримСр, Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ Π­Ρ‚Π° ΠΊΠ½ΠΈΠ³Π°.
          3. Π’ спискС Имя Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ имя макроса, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ трСбуСтся ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ.
          4. НаТмитС ΠΊΠ½ΠΎΠΏΠΊΡƒ Π£Π΄Π°Π»ΠΈΡ‚ΡŒ.

          НаписаниС макросов VBA с нуля

          БрСдство записи макросов Excel ΠΎΠ±Π»Π°Π΄Π°Π΅Ρ‚ большими возмоТностями, Π½ΠΎ ΠΈΠΌΠ΅Π΅Ρ‚ свои ограничСния. Как описано Π² Π΄Ρ€ΡƒΠ³ΠΎΠΉ ΡΡ‚Π°Ρ‚ΡŒΠ΅, срСдство записи макросов часто записываСт Π½Π΅Π½ΡƒΠΆΠ½Ρ‹ΠΉ ΠΊΠΎΠ΄ ΠΈ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π·Π°ΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ Ρ‚Π°ΠΊΠΈΠ΅ Π²Π΅Ρ‰ΠΈ, ΠΊΠ°ΠΊ Π»ΠΎΠ³ΠΈΠΊΠ° ΠΈΠ»ΠΈ взаимодСйствиС с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°ΠΌΠΈ. Π•Π³ΠΎ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ слоТно ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для Π±ΠΎΠ»Π΅Π΅ Π΄Π»ΠΈΠ½Π½Ρ‹Ρ… макросов β€” Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π·Π°Ρ€Π°Π½Π΅Π΅ Ρ€Π°ΡΠΊΠ°Π΄Ρ€ΠΎΠ²Ρ‹Π²Π°Ρ‚ΡŒ свои дСйствия, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ дорогостоящих ошибок.

          Π­Ρ‚Π° ΡΡ‚Π°Ρ‚ΡŒΡ ΠΏΡ€ΠΈΠ·Π²Π°Π½Π° ΠΏΠΎΠΌΠΎΡ‡ΡŒ Π²Π°ΠΌ Π½Π°Ρ‡Π°Ρ‚ΡŒ ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ макросов с нуля Π² VBA. Π’Ρ‹ ΡƒΠ·Π½Π°Π΅Ρ‚Π΅, Π³Π΄Π΅ хранятся макросы, Π½Π°ΠΏΠΈΡˆΠ΅Ρ‚Π΅ Π±Π°Π·ΠΎΠ²Ρ‹ΠΉ макрос ΠΈ ΠΈΠ·ΡƒΡ‡ΠΈΡ‚Π΅ основы программирования Π½Π° VBA с использованиСм ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…, Π»ΠΎΠ³ΠΈΠΊΠΈ ΠΈ Ρ†ΠΈΠΊΠ»ΠΎΠ².

          Начало Ρ€Π°Π±ΠΎΡ‚Ρ‹

          VBA ΠΈ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ Visual Basic

          VBA ΠΈΠ»ΠΈ Visual Basic для ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ β€” это язык, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ написаны макросы. ΠΌΠ°ΠΊΡ€ΠΎΡ€Π΅ΠΊΠΎΡ€Π΄Π΅Ρ€.

          Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ доступ ΠΊΠΎ всСму ΠΊΠΎΠ΄Ρƒ VBA Π² ΠΊΠ½ΠΈΠ³Π΅ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π° Visual Basic. Π­Ρ‚ΠΎ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ тСкстовый Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ ΠΈ ΠΎΡ‚Π»Π°Π΄Ρ‡ΠΈΠΊ, встроСнный Π²ΠΎ всС офисныС прилоТСния, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ Excel. Как ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, Π²Ρ‹ ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°Π΅Ρ‚Π΅ этот Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠ½ΠΎΠΏΠΊΠΈ 9.0013 ALT+F11 сочСтаниС клавиш Π² Excel, Π½ΠΎ Π²Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΊ Π½Π΅ΠΌΡƒ доступ с Π²ΠΊΠ»Π°Π΄ΠΊΠΈ Excel Developer , Ссли ΠΎΠ½Π° Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Π°.

          ΠŸΡ€ΠΎΠ²ΠΎΠ΄Π½ΠΈΠΊ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°

          ΠŸΡ€ΠΎΠ²ΠΎΠ΄Π½ΠΈΠΊ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° β€” это ΠΎΠΊΠ½ΠΎ Π²Π½ΡƒΡ‚Ρ€ΠΈ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π° VB, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π²Π°ΠΌ всС элСмСнты, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ VBA. Если Π²Ρ‹ Π½Π΅ Π²ΠΈΠ΄ΠΈΡ‚Π΅ это ΠΎΠΊΠ½ΠΎ, Π½Π°ΠΆΠΌΠΈΡ‚Π΅ F5 , Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ½ΠΎ появилось, ΠΈΠ»ΠΈ Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ Project Explorer Β Π² мСню View .

          Π”Π²ΠΎΠΉΠ½ΠΎΠΉ Ρ‰Π΅Π»Ρ‡ΠΎΠΊ ΠΏΠΎ элСмСнту Π² Project Explorer ΠΏΠΎΠΊΠ°ΠΆΠ΅Ρ‚ ΠΊΠΎΠ΄ этого элСмСнта. БущСствуСт нСсколько Ρ‚ΠΈΠΏΠΎΠ² элСмСнтов, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒΡΡ Π² Project Explorer:

          • Π Π°Π±ΠΎΡ‡ΠΈΠ΅ Ρ‚Π΅Ρ‚Ρ€Π°Π΄ΠΈ
          • Π Π°Π±ΠΎΡ‡ΠΈΠ΅ листы
          • ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠ΅ Ρ„ΠΎΡ€ΠΌΡ‹
          • ΠœΠΎΠ΄ΡƒΠ»ΠΈ класса
          • ΠœΠΎΠ΄ΡƒΠ»ΠΈ (Π² этих элСмСнтах хранятся макросы)

          Π₯отя всС эти Ρ‚ΠΈΠΏΡ‹ элСмСнтов ΠΌΠΎΠ³ΡƒΡ‚ Π²ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ ΠΊΠΎΠ΄ VBA, Π»ΡƒΡ‡ΡˆΠ΅ всСго ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ макросы Π² модулях.

          Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ макроса

          ИспользованиС списка макросов

          Бписок макросов ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ всС макросы Π² вашСй ΠΊΠ½ΠΈΠ³Π΅. Из этого списка Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΎΡ‚Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ макрос ΠΈΠ»ΠΈ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π½ΠΎΠ²Ρ‹ΠΉ.

          Π§Ρ‚ΠΎΠ±Ρ‹ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π½ΠΎΠ²Ρ‹ΠΉ макрос с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ списка макросов:

          • Π’Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ Π²ΠΊΠ»Π°Π΄ΠΊΡƒ Β«Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΒ» ΠΈ Ρ‰Π΅Π»ΠΊΠ½ΠΈΡ‚Π΅ ΠœΠ°ΠΊΡ€ΠΎΡΡ‹ (ΠΈΠ»ΠΈ Π½Π°ΠΆΠΌΠΈΡ‚Π΅ ALT+F8 )
          • Π’Π²Π΅Π΄ΠΈΡ‚Π΅ Π½ΠΎΠ²ΠΎΠ΅ имя для вашСго макроса, Π·Π°Ρ‚Π΅ΠΌ Π½Π°ΠΆΠΌΠΈΡ‚Π΅ Β«Π‘ΠΎΠ·Π΄Π°Ρ‚ΡŒΒ»

          ПослС наТатия Β«Π‘ΠΎΠ·Π΄Π°Ρ‚ΡŒΒ» появится Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ VB, ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΉ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‡Ρ‚ΠΎ созданный макрос. ΠŸΡ€ΠΈ нСобходимости Excel создаст Π½ΠΎΠ²Ρ‹ΠΉ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ для макроса.

          Π’Ρ€ΡƒΡ‡Π½ΡƒΡŽ Π² VB Editor

          Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π½ΠΎΠ²Ρ‹ΠΉ макрос Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ Π±Π΅Π· списка макросов. Π­Ρ‚ΠΎ Π»ΡƒΡ‡ΡˆΠΈΠΉ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚, Ссли Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ сохранСн макрос.

          Π§Ρ‚ΠΎΠ±Ρ‹ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ макрос Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ:

          • ΠžΡ‚ΠΊΡ€ΠΎΠΉΡ‚Π΅ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ VB ( ALT+F11 )
          • Π›ΠΈΠ±ΠΎ:
            • Π”ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ Π½ΠΎΠ²Ρ‹ΠΉ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ, Π½Π°ΠΆΠ°Π² Π’ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ > ΠœΠΎΠ΄ΡƒΠ»ΡŒ Π² мСню (ΠΌΠΎΠ΄ΡƒΠ»ΡŒ откроСтся автоматичСски)
            • Π˜Π›Π˜ Π΄Π²Π°ΠΆΠ΄Ρ‹ Ρ‰Π΅Π»ΠΊΠ½ΠΈΡ‚Π΅ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ Π² Project Explorer, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒ Π΅Π³ΠΎ
          • Π’ ΠΌΠΎΠ΄ΡƒΠ»Π΅ Π²Π²Π΅Π΄ΠΈΡ‚Π΅ ΠΊΠΎΠ΄ вашСго Π½ΠΎΠ²ΠΎΠ³ΠΎ макроса
           ΠŸΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° MyMacro()
          
          End Sub 

          Π­Ρ‚ΠΈ Π΄Π²Π΅ строки ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ Π½Π°Ρ‡Π°Π»ΠΎ ΠΈ ΠΊΠΎΠ½Π΅Ρ† макроса с ΠΈΠΌΠ΅Π½Π΅ΠΌ Β«MyMacroΒ» (ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° ΠΊΡ€ΡƒΠ³Π»Ρ‹Π΅ скобки, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹). Π­Ρ‚ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒΡΡ Π² Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠΌ ΠΎΠΊΠ½Π΅ Β«ΠŸΡ€ΠΎΡΠΌΠΎΡ‚Ρ€ макросов» Π² Excel ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΎ ΠΊΠ½ΠΎΠΏΠΊΠ΅ (хотя ΠΎΠ½Π° Π΅Ρ‰Π΅ Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ Π΄Π΅Π»Π°Π΅Ρ‚).

          Π”ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ ΠΊΠΎΠ΄ Π² макрос

          Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π΄Π°Π²Π°ΠΉΡ‚Π΅ Π΄ΠΎΠ±Π°Π²ΠΈΠΌ ΠΊΠΎΠ΄ ΠΌΠ΅ΠΆΠ΄Ρƒ строками Β«SubΒ» ΠΈ Β«End SubΒ», Ρ‡Ρ‚ΠΎΠ±Ρ‹ этот макрос Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ Π΄Π΅Π»Π°Π»:

           Sub MyMacro()
              Π”ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ (Β«A1Β»). Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ = Β«ΠŸΡ€ΠΈΠ²Π΅Ρ‚, ΠΌΠΈΡ€!Β»
          ΠšΠΎΠ½Π΅Ρ† суб 

          ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ структуры ΠΊΠΎΠ΄Π°

          ΠžΠ±ΡŠΠ΅ΠΊΡ‚ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π°

          Excel VBA ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π° для прСдставлСния ячССк Π½Π° листС. Π’ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΌ Π²Ρ‹ΡˆΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ создаСтся ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Range с ΠΊΠΎΠ΄ΠΎΠΌ Range(«A1») для доступа ΠΊ Π·Π½Π°Ρ‡Π΅Π½ΠΈΡŽ ячСйки A1.
          ΠžΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π° Π² основном ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ для установки Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ячССк:

           Π”ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ (Β«A1Β»). Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ = 1 
           Π”ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ (Β«A1Β»). Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ = Β«ΠŸΠ΅Ρ€Π²Π°Ρ ячСйка» 

          ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠΈ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ячССк Π² Π²ΠΈΠ΄Π΅ чисСл Π²Ρ‹ просто Π²Π²Π΅Π΄ΠΈΡ‚Π΅ число, Π½ΠΎ ΠΏΡ€ΠΈ Π²Π²ΠΎΠ΄Π΅ тСкста Π²Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π·Π°ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ тСкст Π² ΠΊΠ°Π²Ρ‹Ρ‡ΠΊΠΈ.

          Π”ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для доступа ΠΊΠΎ ΠΌΠ½ΠΎΠ³ΠΈΠΌ свойствам ячССк, Ρ‚Π°ΠΊΠΈΠΌ ΠΊΠ°ΠΊ ΠΈΡ… ΡˆΡ€ΠΈΡ„Ρ‚, Π³Ρ€Π°Π½ΠΈΡ†Ρ‹, Ρ„ΠΎΡ€ΠΌΡƒΠ»Ρ‹ ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠ΅ Π΄Ρ€ΡƒΠ³ΠΎΠ΅.

          НапримСр, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ для ячСйки ΠΏΠΎΠ»ΡƒΠΆΠΈΡ€Π½Ρ‹ΠΉ ΡˆΡ€ΠΈΡ„Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

           Range(β€œA1”).Font.Bold = True 

          Π’Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Ρ„ΠΎΡ€ΠΌΡƒΠ»Ρƒ ячСйки:

           Range(β€œA1 ").Formula = "=Sum(A2:A10)" 

          Π’ Excel Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ Π±Π»ΠΎΠΊ ячССк с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ курсора (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΎΡ‚ A1 Π΄ΠΎ D10) ΠΈ Π²Ρ‹Π΄Π΅Π»ΠΈΡ‚ΡŒ ΠΈΡ… ΠΆΠΈΡ€Π½Ρ‹ΠΌ ΡˆΡ€ΠΈΡ„Ρ‚ΠΎΠΌ. ΠžΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π° ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚ΡŒ доступ ΠΊ Π±Π»ΠΎΠΊΠ°ΠΌ ячССк ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

           Range("A1:D10").Font.Bold = True 

          Π’Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡΡΡ‹Π»Π°Ρ‚ΡŒΡΡ Π½Π° нСсколько ячССк/Π±Π»ΠΎΠΊΠΎΠ² ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ:

           Range("A1:D10,A12:D12,G1").Font.Bold = True 

          Π€ΠΎΡ€ΠΌΠ°Ρ‚ для этого Ρ‚Π°ΠΊΠΎΠΉ ΠΆΠ΅, ΠΊΠ°ΠΊ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²Ρ‹ использовали Π±Ρ‹ ΠΏΡ€ΠΈ Π²Ρ‹Π±ΠΎΡ€Π΅ ячССк для Ρ„ΠΎΡ€ΠΌΡƒΠ»Ρ‹ БУММ() Π² Excel. ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ Π±Π»ΠΎΠΊ отдСляСтся запятой, Π° Π±Π»ΠΎΠΊΠΈ ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π°ΡŽΡ‚ΡΡ Π²Π΅Ρ€Ρ…Π½Π΅ΠΉ Π»Π΅Π²ΠΎΠΉ ΠΈ Π½ΠΈΠΆΠ½Π΅ΠΉ ΠΏΡ€Π°Π²ΠΎΠΉ ячСйками, Ρ€Π°Π·Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΌΠΈ Π΄Π²ΠΎΠ΅Ρ‚ΠΎΡ‡ΠΈΠ΅ΠΌ.

          НаконСц, ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ Range ΠΈΠΌΠ΅ΡŽΡ‚ встроСнныС ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ для выполнСния ΠΎΠ±Ρ‰ΠΈΡ… ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ Π½Π° листС. НапримСр, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π·Π°Ρ…ΠΎΡ‚Π΅Ρ‚ΡŒ ΡΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ ΠΈΠ· ΠΎΠ΄Π½ΠΎΠ³ΠΎ мСста Π² Π΄Ρ€ΡƒΠ³ΠΎΠ΅. Π’ΠΎΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Ρ€:

           Π”ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ (Β«A1:D10Β»). ΠšΠΎΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ
          Π”ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½("F1").PasteSpecial xlPasteValues
          Range("F1").PasteSpecial xlPasteFormats 

          Π­Ρ‚ΠΎ ΠΊΠΎΠΏΠΈΡ€ΡƒΠ΅Ρ‚ ячСйки A1:D10 Π² Π±ΡƒΡ„Π΅Ρ€ ΠΎΠ±ΠΌΠ΅Π½Π°, Π° Π·Π°Ρ‚Π΅ΠΌ выполняСт PasteSpecial(), начиная с ячСйки C1 β€” Ρ‚ΠΎΡ‡Π½ΠΎ Ρ‚Π°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ Π²Ρ‹ Π΄Π΅Π»Π°Π΅Ρ‚Π΅ это Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ Π² Excel. ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ Π² этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ, ΠΊΠ°ΠΊ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ PasteSpecial() для вставки Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΈ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΎΠ² β€” здСсь Π΅ΡΡ‚ΡŒ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ для всСх ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Ρ‹ Π²ΠΈΠ΄ΠΈΡ‚Π΅ Π² Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠΌ ΠΎΠΊΠ½Π΅ Β«Π‘ΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Π°Ρ вставка».

          Π’ΠΎΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ вставки «ВсС» Π½Π° Π΄Ρ€ΡƒΠ³ΠΎΠΉ лист:

           Π”ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ (Β«A1:D10Β»). ΠšΠΎΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ
          Sheets("Sheet2").Range("A1").PasteSpecial xlPasteAll 

          ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ If

          Π‘ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠΌ If ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Ρ‡Π°ΡΡ‚ΡŒ ΠΊΠΎΠ΄Π° Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ «Π΅ΡΠ»ΠΈ» ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ΅ ΡƒΡ‚Π²Π΅Ρ€ΠΆΠ΄Π΅Π½ΠΈΠ΅ Π²Π΅Ρ€Π½ΠΎ.

          НапримСр, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π²Ρ‹Π΄Π΅Π»ΠΈΡ‚ΡŒ ячСйку ΠΏΠΎΠ»ΡƒΠΆΠΈΡ€Π½Ρ‹ΠΌ ΡˆΡ€ΠΈΡ„Ρ‚ΠΎΠΌ ΠΈ ΠΏΠΎΠΊΡ€Π°ΡΠΈΡ‚ΡŒ Π΅Π΅ Π² красный Ρ†Π²Π΅Ρ‚, Π½ΠΎ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ «Ссли» Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π² ячСйкС мСньшС 100.

           If Range(Β«A4Β»).Value < 100 Then
              Π”ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ ("A4"). Π¨Ρ€ΠΈΡ„Ρ‚. ΠŸΠΎΠ»ΡƒΠΆΠΈΡ€Π½Ρ‹ΠΉ = Π˜ΡΡ‚ΠΈΠ½Π°
              Π”ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½("A4").Interior.Color = vbRed
          ΠšΠΎΠ½Π΅Ρ†, Ссли
           

          НадлСТащая структура ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° If ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π°Ρ (ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚Π½Ρ‹Π΅ скобки ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π°ΡŽΡ‚ Π½Π΅ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹):

          If <условиС> Then

          [ ElseIf <Π΄Ρ€ΡƒΠ³ΠΎΠ΅-условиС> Then

          3 ]

          3 Else ]

          End If

          Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ любоС количСство Π±Π»ΠΎΠΊΠΎΠ² ElseIf для ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… условий. Π’Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π±Π»ΠΎΠΊ Else , ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ запускаСтся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² Ρ‚ΠΎΠΌ случаС, Ссли Π½ΠΈ ΠΎΠ΄Π½ΠΎ ΠΈΠ· Π΄Ρ€ΡƒΠ³ΠΈΡ… условий Π² ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π΅ If Π½Π΅ выполняСтся.

          Π’ΠΎΡ‚ Π΅Ρ‰Π΅ ΠΎΠ΄ΠΈΠ½ ΠΏΡ€ΠΈΠΌΠ΅Ρ€, основанный Π½Π° ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅ΠΌ, Π³Π΄Π΅ ячСйка форматируСтся нСсколькими способами Π² зависимости ΠΎΡ‚ значСния:

           If Range("A4").Value < 100 Then
              Π”ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ ("A4"). Π¨Ρ€ΠΈΡ„Ρ‚. ΠŸΠΎΠ»ΡƒΠΆΠΈΡ€Π½Ρ‹ΠΉ = Π˜ΡΡ‚ΠΈΠ½Π°
              Π”ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½("A4"). Interior.Color = vbRed
          ElseIf Range("A4").Value < 200 Π’ΠΎΠ³Π΄Π°
              Π”ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ ("A4"). Π¨Ρ€ΠΈΡ„Ρ‚. ΠŸΠΎΠ»ΡƒΠΆΠΈΡ€Π½Ρ‹ΠΉ = Π›ΠΎΠΆΡŒ
              Π”ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ ("A4"). Π˜Π½Ρ‚Π΅Ρ€ΡŒΠ΅Ρ€. Π¦Π²Π΅Ρ‚ = vbYellow
          Π•Ρ‰Π΅
              Π”ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ ("A4"). Π¨Ρ€ΠΈΡ„Ρ‚. ΠŸΠΎΠ»ΡƒΠΆΠΈΡ€Π½Ρ‹ΠΉ = Π›ΠΎΠΆΡŒ
              Π”ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ ("A4"). Π˜Π½Ρ‚Π΅Ρ€ΡŒΠ΅Ρ€. Π¦Π²Π΅Ρ‚ = vbGreen
          ΠšΠΎΠ½Π΅Ρ†, Ссли 

          Π’ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΌ Π²Ρ‹ΡˆΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ячСйка Π½Π΅ Π²Ρ‹Π΄Π΅Π»Π΅Π½Π° ΠΏΠΎΠ»ΡƒΠΆΠΈΡ€Π½Ρ‹ΠΌ ΡˆΡ€ΠΈΡ„Ρ‚ΠΎΠΌ Π² Π±Π»ΠΎΠΊΠ°Ρ… ElseIf, Π³Π΄Π΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π½Π΅ мСньшС 100.Β  ΠΌΠΎΠΆΠ½ΠΎ Π²Π»ΠΎΠΆΠΈΡ‚ΡŒ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ If, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ дублирования ΠΊΠΎΠ΄Π°, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€:

           If Range("A4") .Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ < 100 Π’ΠΎΠ³Π΄Π°
              Π”ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ ("A4"). Π¨Ρ€ΠΈΡ„Ρ‚. ΠŸΠΎΠ»ΡƒΠΆΠΈΡ€Π½Ρ‹ΠΉ = Π˜ΡΡ‚ΠΈΠ½Π°
              Π”ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½("A4").Interior.Color = vbRed
          Π•Ρ‰Π΅
              Range("A4").Font.Bold = False ' Π²Ρ‹Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΡˆΡ€ΠΈΡ„Ρ‚Π° Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄ΠΈΠ½ Ρ€Π°Π·
              Если Π”ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½("A4").Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ < 200 Π’ΠΎΠ³Π΄Π°
                  Π”ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ ("A4"). Π˜Π½Ρ‚Π΅Ρ€ΡŒΠ΅Ρ€. Π¦Π²Π΅Ρ‚ = vbYellow
              Π•Ρ‰Π΅
                  Π”ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ ("A4"). Π˜Π½Ρ‚Π΅Ρ€ΡŒΠ΅Ρ€. Π¦Π²Π΅Ρ‚ = vbGreen
              ΠšΠΎΠ½Π΅Ρ†, Ссли
          ΠšΠΎΠ½Π΅Ρ†, Ссли 

          ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅

          A ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Π°Ρ β€” это Ρ‡Π°ΡΡ‚ΡŒ памяти, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠ°Ρ для хранСния Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ Π²ΠΎ врСмя выполнСния макроса. Они часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Π² Ρ†ΠΈΠΊΠ»Π°Ρ… Π² качСствС ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ² ΠΈΠ»ΠΈ для хранСния Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π° ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ нСсколько Ρ€Π°Π· Π² макросС.

          Π’ΠΎΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΈ Π΅Π΅ использования:

           Sub ExtractSerialNumber()
              Dim strSerial As String ' это объявлСниС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ
                                       'As String' ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ эта пСрСмСнная ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π° для хранСния тСкста
              
              ' установка Ρ„ΠΈΠΊΡ‚ΠΈΠ²Π½ΠΎΠ³ΠΎ сСрийного Π½ΠΎΠΌΠ΅Ρ€Π°:
              Π”ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ ("A4"). Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ = "сСрийный Π½ΠΎΠΌΠ΅Ρ€ 804567-88"
              
              ' Π²Ρ‹Π΄Π΅Π»ΠΈΡ‚Π΅ сСрийный Π½ΠΎΠΌΠ΅Ρ€ ΠΈΠ· ячСйки A4 ΠΈ присвойтС Π΅Π³ΠΎ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ
              strSerial = Π‘Ρ€Π΅Π΄Π½ΠΈΠΉ (Π”ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ (Β«A4Β»). Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, 9)
              
              ' Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ Π΄Π²Π°ΠΆΠ΄Ρ‹, вмСсто Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π΄Π²Π°ΠΆΠ΄Ρ‹ Π°Π½Π°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ сСрийный Π½ΠΎΠΌΠ΅Ρ€
              Π”ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ ("B4"). Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ = strSerial
              MsgBox ΡƒΠ»Π‘Π΅Ρ€ΠΈΠ°Π»
          ΠšΠΎΠ½Π΅Ρ† сабвуфСра
           

          Π’ этом Π±Π°Π·ΠΎΠ²ΠΎΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ пСрСмСнная strSerial ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для извлСчСния сСрийного Π½ΠΎΠΌΠ΅Ρ€Π° ΠΈΠ· ячСйки A4 с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Mid(), Π° Π·Π°Ρ‚Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² Π΄Π²ΡƒΡ… Π΄Ρ€ΡƒΠ³ΠΈΡ… мСстах.

          Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½Ρ‹ΠΉ способ ΠΎΠ±ΡŠΡΠ²ΠΈΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ выглядит ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

          Dim любоС имя [ Как Π²Π²Π΅Π΄ΠΈΡ‚Π΅ ]

          • любоС имя это имя, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π²Ρ‹ Ρ€Π΅ΡˆΠΈΡ‚Π΅ Π΄Π°Ρ‚ΡŒ вашСй ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ
          • Ρ‚ΠΈΠΏ - Ρ‚ΠΈΠΏ Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ

          Π§Π°ΡΡ‚ΡŒ Β«[As type ]Β» ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΎΠΏΡƒΡ‰Π΅Π½Π° β€” Π² этом случаС пСрСмСнная ΠΎΠ±ΡŠΡΠ²Π»ΡΠ΅Ρ‚ΡΡ ΠΊΠ°ΠΊ Ρ‚ΠΈΠΏ Variant, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ Π»ΡŽΠ±Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅. НСсмотря Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Ρ‚ΠΈΠΏΡ‹ Variant Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎ допустимы, ΠΈΡ… слСдуСт ΠΈΠ·Π±Π΅Π³Π°Ρ‚ΡŒ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ привСсти ΠΊ Π½Π΅ΠΎΠΆΠΈΠ΄Π°Π½Π½Ρ‹ΠΌ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π°ΠΌ, Ссли Π²Ρ‹ Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚Π΅ остороТны.

          Π•ΡΡ‚ΡŒ ΠΏΡ€Π°Π²ΠΈΠ» для ΠΈΠΌΠ΅Π½ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…. Они Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π½Π°Ρ‡ΠΈΠ½Π°Ρ‚ΡŒΡΡ Π»ΠΈΠ±ΠΎ с Π±ΡƒΠΊΠ²Ρ‹, Π»ΠΈΠ±ΠΎ с символа подчСркивания, Π½Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ±Π΅Π»ΠΎΠ², Ρ‚ΠΎΡ‡Π΅ΠΊ, запятых, ΠΊΠ°Π²Ρ‹Ρ‡Π΅ΠΊ ΠΈΠ»ΠΈ символов Β«! @ & $ #Β».

          Π’ΠΎΡ‚ нСсколько ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ² объявлСний ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…:

           Dim strFilename As String ' Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΉ ΡΡ‚ΠΈΠ»ΡŒ ΠΈΠΌΠ΅Π½ΠΈ - ΠΎΠΏΠΈΡΠ°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ прСфикс
          
          Dim i As Long 'ΠΏΠ»ΠΎΡ…ΠΎΠΉ ΡΡ‚ΠΈΠ»ΡŒ ΠΈΠΌΠ΅Π½ΠΈ - ΠΏΡ€ΠΈΠ΅ΠΌΠ»Π΅ΠΌ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ²
          
          Dim SalePrice As Double ' ΡΡ‚ΠΈΠ»ΡŒ ΠΈΠΌΠ΅Π½ΠΈ Π² порядкС β€” ΠΎΠΏΠΈΡΠ°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ, Π½ΠΎ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ прСфикс
          
          Dim iCounter ' Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎΠ΅ имя - Π½Π΅ слишком ΠΎΠΏΠΈΡΠ°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ΅, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ прСфикс, Π±Π΅Π· Ρ‚ΠΈΠΏΠ° Π΄Π°Π½Π½Ρ‹Ρ… 

          Π’ΠΎ всСх этих ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°Ρ… ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ нСсколько Ρ€Π°Π·Π½Ρ‹Π΅ схСмы имСнования, Π½ΠΎ всС ΠΎΠ½ΠΈ допустимы. НСплохая идСя ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅Π΄ ΠΈΠΌΠ΅Π½Π΅ΠΌ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΊΡ€Π°Ρ‚ΠΊΡƒΡŽ Ρ„ΠΎΡ€ΠΌΡƒ Π΅Π΅ Ρ‚ΠΈΠΏΠ° Π΄Π°Π½Π½Ρ‹Ρ… (ΠΊΠ°ΠΊ Π² Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΈΠ· этих ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ²), Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ это Π΄Π΅Π»Π°Π΅Ρ‚ ваш ΠΊΠΎΠ΄ Π±ΠΎΠ»Π΅Π΅ Ρ‡ΠΈΡ‚Π°Π±Π΅Π»ΡŒΠ½Ρ‹ΠΌ с ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ взгляда.

          VBA Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ мноТСство основных Ρ‚ΠΈΠΏΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ… . НаиболСС популярныС ΠΈΠ· Π½ΠΈΡ…:

          • Π‘Ρ‚Ρ€ΠΎΠΊΠ° (ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для хранСния тСкстовых Π΄Π°Π½Π½Ρ‹Ρ…)
          • Long (ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для хранСния Ρ†Π΅Π»Ρ‹Ρ… чисСл, Ρ‚. Π΅. Π±Π΅Π· дСсятичных Π·Π½Π°ΠΊΠΎΠ²)
          • Double (ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для хранСния чисСл с ΠΏΠ»Π°Π²Π°ΡŽΡ‰Π΅ΠΉ запятой, Ρ‚. Π΅. дСсятичных разрядов)

          ΠŸΠΎΠ»Π½Ρ‹ΠΉ список встроСнных Ρ‚ΠΈΠΏΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ… VBA ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡ‚ΠΈ здСсь: https://docs.microsoft.com/en-us/office/vba/language/reference/user-interface-help/data-type-summary

          ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π°

          МоТно Ρ‚Π°ΠΊΠΆΠ΅ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡΡΡ‹Π»Π°ΡŽΡ‚ΡΡ Π½Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π°. Π­Ρ‚ΠΎ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ, Ссли Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΡΡΡ‹Π»Π°Ρ‚ΡŒΡΡ Π½Π° ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΉ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ Π² своСм ΠΊΠΎΠ΄Π΅ Π² Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… мСстах β€” Ρ‚Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, Ссли Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½, Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π΅Π³ΠΎ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² ΠΎΠ΄Π½ΠΎΠΌ мСстС.

          Когда Π²Ρ‹ создаСтС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Range, Π²Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Β«ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒΒ» Π΅Π΅ Π½Π° экзСмпляр Range. НапримСр:

           Dim rMyRange As Range
          Set rMyRange = Range("A1:A10;D1:J10") 

          ΠžΡ‚ΡΡƒΡ‚ΡΡ‚Π²ΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° "Set" ΠΏΡ€ΠΈ Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ Range ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Ρ‚ ΠΊ ошибкС.

          Π¦ΠΈΠΊΠ»Ρ‹

          Π¦ΠΈΠΊΠ»Ρ‹ β€” это Π±Π»ΠΎΠΊΠΈ, ΠΊΠΎΠ΄ Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… повторяСтся ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ΅ количСство Ρ€Π°Π·. Они ΠΏΠΎΠ»Π΅Π·Π½Ρ‹ для ΡƒΠΌΠ΅Π½ΡŒΡˆΠ΅Π½ΠΈΡ объСма ΠΊΠΎΠ΄Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ, ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ Π²Π°ΠΌ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΎΠ΄ΠΈΠ½ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚ ΠΊΠΎΠ΄Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ выполняСт ΠΎΠ΄Π½ΠΈ ΠΈ Ρ‚Π΅ ΠΆΠ΅ дСйствия со ΠΌΠ½ΠΎΠ³ΠΈΠΌΠΈ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ связанными элСмСнтами.

          For-Next

          Π‘Π»ΠΎΠΊ For-Next прСдставляСт собой Ρ†ΠΈΠΊΠ», ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ повторяСтся ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ΅ количСство Ρ€Π°Π·. Он ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ Π² качСствС ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€Π° , Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ΄ΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ, сколько Ρ€Π°Π· ΠΎΠ½ выполнялся, ΠΈ эту ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ-ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π²Π½ΡƒΡ‚Ρ€ΠΈ Ρ†ΠΈΠΊΠ»Π°. Π­Ρ‚ΠΎ Π΄Π΅Π»Π°Π΅Ρ‚ Ρ†ΠΈΠΊΠ»Ρ‹ For-Next ΠΎΡ‡Π΅Π½ΡŒ ΠΏΠΎΠ»Π΅Π·Π½Ρ‹ΠΌΠΈ для ΠΏΠ΅Ρ€Π΅Π±ΠΎΡ€Π° ячССк ΠΈΠ»ΠΈ массивов.

          Π’ΠΎΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΠ΅Ρ€Π΅Π±ΠΈΡ€Π°Π΅Ρ‚ ячСйки Π² строках с 1 ΠΏΠΎ 100, столбСц 1 ΠΈ устанавливаСт ΠΈΡ… значСния Π² Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€Π°:

           Dim i As Long
          Для i = ΠΎΡ‚ 1 Π΄ΠΎ 100
              Π―Ρ‡Π΅ΠΉΠΊΠΈ (я, 1).  Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ = я
          Π”Π°Π»Π΅Π΅ я 

          Π‘Ρ‚Ρ€ΠΎΠΊΠ° Β«For i = 1 To 100Β» ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Ρ†ΠΈΠΊΠ» начинаСтся с 1 ΠΈ заканчиваСтся послС 100.Β Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π»ΡŽΠ±Ρ‹Π΅ Π½Π°Ρ‡Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΈ ΠΊΠΎΠ½Π΅Ρ‡Π½Ρ‹Π΅ числа, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Π°ΠΌ нравятся; Π²Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ для этих чисСл.

          По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ количСство Ρ†ΠΈΠΊΠ»ΠΎΠ² For-Next Ρ€Π°Π²Π½ΠΎ 1. Если Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ ΠΏΠΎ Π΄Ρ€ΡƒΠ³ΠΎΠΌΡƒ числу, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ Ρ†ΠΈΠΊΠ» с явным ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ Step :

           For i = 5 To 100 Step 5 

          Π­Ρ‚ΠΎΡ‚ Ρ†ΠΈΠΊΠ» Π±ΡƒΠ΄Π΅Ρ‚ Π½Π°Ρ‡ΠΈΠ½Π°Ρ‚ΡŒΡΡ с 5, Π° Π·Π°Ρ‚Π΅ΠΌ Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ 5 ΠΊ Β«iΒ» ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π·, ΠΊΠΎΠ³Π΄Π° Ρ†ΠΈΠΊΠ» повторяСтся (Ρ‚Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, Β«iΒ» Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π°Π²Π½ΠΎ 10 ΠΏΡ€ΠΈ Π²Ρ‚ΠΎΡ€ΠΎΠΌ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π΅Π½ΠΈΠΈ, 15 β€” ΠΏΡ€ΠΈ Ρ‚Ρ€Π΅Ρ‚ΡŒΠ΅ΠΌ ΠΈ Ρ‚. Π΄.).

          Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Step , Π²Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΎΠ±Ρ€Π°Ρ‚Π½Ρ‹ΠΉ отсчСт Ρ†ΠΈΠΊΠ»Π°:

           For i = 100 To 1 Step -1 

          Π’Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π²Π»ΠΎΠΆΠΈΡ‚ΡŒ Ρ†ΠΈΠΊΠ»ΠΎΠ² For-Next. Для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Π±Π»ΠΎΠΊΠ° трСбуСтся собствСнная пСрСмСнная для подсчСта, Π½ΠΎ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ эти ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ Π³Π΄Π΅ ΡƒΠ³ΠΎΠ΄Π½ΠΎ. Π’ΠΎΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ это ΠΏΠΎΠ»Π΅Π·Π½ΠΎ Π² Excel VBA:

           Dim i As Long, j As Long
          Для i = ΠΎΡ‚ 1 Π΄ΠΎ 100
              Для j = ΠΎΡ‚ 1 Π΄ΠΎ 100
                  Π―Ρ‡Π΅ΠΉΠΊΠΈ (i, j). Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ = i * j
              Π‘Π»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ j
          Next i 

          Π­Ρ‚ΠΎ позволяСт ΠΏΠ΅Ρ€Π΅Π±ΠΈΡ€Π°Ρ‚ΡŒ ΠΊΠ°ΠΊ строки, Ρ‚Π°ΠΊ ΠΈ столбцы.

          ΠŸΠ Π•Π”Π£ΠŸΠ Π•Π–Π”Π•ΠΠ˜Π• : хотя это Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΎ, Π²Ρ‹ ΠΠ˜ΠšΠžΠ“Π”Π Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€Π° Π²Π½ΡƒΡ‚Ρ€ΠΈ Π±Π»ΠΎΠΊΠ° For-Next, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΎΠ½ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ этот ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€ для отслСТивания Ρ†ΠΈΠΊΠ»Π°. ИзмСнСниС ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€Π° ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ бСсконСчному Ρ†ΠΈΠΊΠ»Ρƒ ΠΈ зависанию макроса. НапримСр:

           Для i = ΠΎΡ‚ 1 Π΄ΠΎ 100
              я = 1
          Next i 

          Π’ этом Ρ†ΠΈΠΊΠ»Π΅ Β«IΒ» Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ прСвысит 2, ΠΏΠΎΠΊΠ° Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΡΠ±Ρ€ΠΎΡˆΠ΅Π½ΠΎ Π½Π° 1, ΠΈ Ρ†ΠΈΠΊΠ» Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΡΡ‚ΡŒΡΡ Π²Π΅Ρ‡Π½ΠΎ.

          For-Each

          For-Each Π‘Π»ΠΎΠΊΠΈ ΠΎΡ‡Π΅Π½ΡŒ ΠΏΠΎΡ…ΠΎΠΆΠΈ Π½Π° Π±Π»ΠΎΠΊΠΈ For-Next, Π·Π° ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΈ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ счСтчик для указания количСства Ρ†ΠΈΠΊΠ»ΠΎΠ². ВмСсто этого Π±Π»ΠΎΠΊ For-Each Π±Π΅Ρ€Π΅Ρ‚ Β«ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΡŽΒ» ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ ячССк) ΠΈ запускаСтся ΡΡ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ€Π°Π·, сколько ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Π² этой ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΈ.

          Π’ΠΎΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Ρ€:

           Dim r As Range
          Для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ r Π² Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π΅ (Β«A15: J54Β»)
              Если Π³.Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ > 0 Π’ΠΎΠ³Π΄Π°
                  r.Font.Bold = Π˜ΡΡ‚ΠΈΠ½Π°
              ΠšΠΎΠ½Π΅Ρ†, Ссли
          Next r 

          ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° использованиС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Range β€˜r’. Π­Ρ‚ΠΎ пСрСмСнная ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€Π°, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠ°Ρ Π² Ρ†ΠΈΠΊΠ»Π΅ For-Each β€” ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π· Π² Ρ†ΠΈΠΊΠ»Π΅ Β«rΒ» ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ ссылку Π½Π° ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΡƒΡŽ ячСйку Π² Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π΅.

          ΠŸΡ€Π΅ΠΈΠΌΡƒΡ‰Π΅ΡΡ‚Π²ΠΎ использования Ρ†ΠΈΠΊΠ»ΠΎΠ² For-Each Π² Excel VBA Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠ΅Ρ€Π΅Π±ΠΈΡ€Π°Ρ‚ΡŒ всС ячСйки Π² Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π΅ Π±Π΅Π· Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Ρ†ΠΈΠΊΠ»ΠΎΠ². Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΡƒΠ΄ΠΎΠ±Π½ΠΎ, Ссли Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΠΏΠ΅Ρ€Π΅Π±Ρ€Π°Ρ‚ΡŒ всС ячСйки Π² слоТном Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π΅, Ρ‚Π°ΠΊΠΎΠΌ ΠΊΠ°ΠΊ 9.0013 Π”ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½("A1:D12,J13, M1:Y12") .

          Одним ΠΈΠ· нСдостатков Ρ†ΠΈΠΊΠ»ΠΎΠ² For-Each являСтся Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π²Ρ‹ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ порядок ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ячССк. Π₯отя Π½Π° ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ΅ Excel Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠ΅Ρ€Π΅Π±ΠΈΡ€Π°Ρ‚ΡŒ ячСйки ΠΏΠΎ порядку, тСорСтичСски ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ ячСйки Π² ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½Π½ΠΎ случайном порядкС. Если Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ ячСйки Π² ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΌ порядкС, вмСсто этого слСдуСт ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ†ΠΈΠΊΠ»Ρ‹ For-Next.

          Do-Loop

          Π’ Ρ‚ΠΎ врСмя ΠΊΠ°ΠΊ Π±Π»ΠΎΠΊΠΈ For-Next ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ счСтчики, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π·Π½Π°Ρ‚ΡŒ, ΠΊΠΎΠ³Π΄Π° ΠΎΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒΡΡ, Do-Loop Π±Π»ΠΎΠΊΠΎΠ² выполняСтся Π΄ΠΎ Ρ‚Π΅Ρ… ΠΏΠΎΡ€, ΠΏΠΎΠΊΠ° Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΎ условиС. Для этого Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Before Π»ΠΈΠ±ΠΎ Π² Π½Π°Ρ‡Π°Π»Π΅, Π»ΠΈΠ±ΠΎ Π² ΠΊΠΎΠ½Ρ†Π΅ Π±Π»ΠΎΠΊΠ°, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ провСряСт условиС ΠΈ Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ остановку Ρ†ΠΈΠΊΠ»Π° ΠΏΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ этого условия.

          ΠŸΡ€ΠΈΠΌΠ΅Ρ€:

           Dim str As String
          ΡƒΠ» = "Π‘ΡƒΡ„Ρ„Π°Π»ΠΎ"
          Π”Π΅Π»Π°Ρ‚ΡŒ Π΄ΠΎ str = "Buffalo Buffalo Buffalo Buffalo Buffalo Buffalo Buffalo"
              str = str & " " & "Π‘ΡƒΡ„Ρ„Π°Π»ΠΎ"
          ΠŸΠ΅Ρ‚Π»Ρ
          Range("A1").Value = str 

          Π’ этом Ρ†ΠΈΠΊΠ»Π΅ Β«BuffaloΒ» ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΠ΅Ρ‚ΡΡ с Β«strΒ» ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π· Π² Ρ†ΠΈΠΊΠ»Π΅, ΠΏΠΎΠΊΠ° Π½Π΅ совпадСт с ΠΎΠΆΠΈΠ΄Π°Π΅ΠΌΡ‹ΠΌ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ. Π’ этом случаС тСст выполняСтся Π² Π½Π°Ρ‡Π°Π»Π΅ Ρ†ΠΈΠΊΠ»Π° β€” Ссли Β«strΒ» ΡƒΠΆΠ΅ Π±Ρ‹Π»ΠΎ ΠΎΠΆΠΈΠ΄Π°Π΅ΠΌΡ‹ΠΌ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ (Ρ‡Ρ‚ΠΎ Π½Π΅ Ρ‚Π°ΠΊ, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ ΠΌΡ‹ Π½Π΅ Π½Π°Ρ‡Π°Π»ΠΈ Π΅Π³ΠΎ Ρ‚Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, Π½ΠΎ Ссли Π±Ρ‹), Ρ†ΠΈΠΊΠ» Π΄Π°ΠΆΠ΅ Π½Π΅ запустился. .

          Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ Ρ†ΠΈΠΊΠ» хотя Π±Ρ‹ ΠΎΠ΄ΠΈΠ½ Ρ€Π°Π·, пСрСмСстив ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Β«Π”ΠΎ Ρ‚Π΅Ρ… ΠΏΠΎΡ€Β» Π² ΠΊΠΎΠ½Π΅Ρ†, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€:

           Π’Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ
              str = str & " " & "Π‘ΡƒΡ„Ρ„Π°Π»ΠΎ"
          Π¦ΠΈΠΊΠ» Π΄ΠΎ str = Β«Buffalo Buffalo Buffalo Buffalo Buffalo Buffalo BuffaloΒ» 

          Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π»ΡŽΠ±ΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ, которая ΠΈΠΌΠ΅Π΅Ρ‚ смысл Π² вашСм макросС.

          ΠŸΠ Π•Π”Π£ΠŸΠ Π•Π–Π”Π•ΠΠ˜Π• : Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π²Ρ‹Π·Π²Π°Ρ‚ΡŒ бСсконСчный Ρ†ΠΈΠΊΠ» с Π±Π»ΠΎΠΊΠΎΠΌ Do-Loop, Ссли условиС Β«Π”ΠΎ Ρ‚Π΅Ρ… ΠΏΠΎΡ€Β» Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ выполняСтся. ВсСгда ΠΏΠΈΡˆΠΈΡ‚Π΅ свой ΠΊΠΎΠ΄ Ρ‚Π°ΠΊ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ условиС Β«Π΄ΠΎ Ρ‚Π΅Ρ… ΠΏΠΎΡ€Β» ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΠ»ΠΎΡΡŒ ΠΏΡ€ΠΈ использовании этого Ρ‚ΠΈΠΏΠ° Ρ†ΠΈΠΊΠ»Π°.

          Π§Ρ‚ΠΎ дальшС?

          ПослС Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Π²Ρ‹ усвоили основы, ΠΏΠΎΡ‡Π΅ΠΌΡƒ Π±Ρ‹ Π½Π΅ ΠΏΠΎΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΠ·ΡƒΡ‡ΠΈΡ‚ΡŒ Π±ΠΎΠ»Π΅Π΅ ΠΏΡ€ΠΎΠ΄Π²ΠΈΠ½ΡƒΡ‚Ρ‹Π΅ Ρ‚Π΅Ρ…Π½ΠΈΠΊΠΈ? Наш ΡƒΡ‡Π΅Π±Π½ΠΈΠΊ ΠΏΠΎ адрСсу https://www.automateexcel.com/excel/learn-vba-tutorial/ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡΠ½ΠΎΠ²Ρ‹Π²Π°Ρ‚ΡŒΡΡ Π½Π° всСм, Ρ‡Ρ‚ΠΎ Π²Ρ‹ здСсь ΡƒΠ·Π½Π°Π»ΠΈ, ΠΈ Ρ€Π°ΡΡˆΠΈΡ€ΠΈΡ‚ ваши Π½Π°Π²Ρ‹ΠΊΠΈ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ событий, ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΡ… Ρ„ΠΎΡ€ΠΌ, ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΊΠΎΠ΄Π° ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠ³ΠΎ Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ!

          Β 

          Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈ макросов | Руководство ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ PyXLL

          • Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅
          • ΠŸΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»Π΅Π½ΠΈΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ Π² Π²ΠΈΠ΄Π΅ макросов
          • БочСтания клавиш
          • Π’Ρ‹Π·ΠΎΠ² макросов ΠΈΠ· Excel

          Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅

          Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ макрос Excel Π½Π° python, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π΄Π΅Π»Π°Ρ‚ΡŒ Ρ‚ΠΎ, для Ρ‡Π΅Π³ΠΎ Π²Ρ‹ Ρ€Π°Π½ΡŒΡˆΠ΅ использовали VBA. ΠœΠ°ΠΊΡ€ΠΎΡΡ‹ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ Π²
          ΠΎΡ‡Π΅Π½ΡŒ ΠΏΠΎΡ…ΠΎΠΆΠ΅ Π½Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Ρ€Π°Π±ΠΎΡ‡Π΅Π³ΠΎ листа. Π§Ρ‚ΠΎΠ±Ρ‹ Π·Π°Ρ€Π΅Π³ΠΈΡΡ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ ΠΊΠ°ΠΊ макрос, Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ Π΄Π΅ΠΊΠΎΡ€Π°Ρ‚ΠΎΡ€ xl_macro .

          ΠœΠ°ΠΊΡ€ΠΎΡΡ‹ ΠΏΠΎΠ»Π΅Π·Π½Ρ‹, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΈΡ… ΠΌΠΎΠΆΠ½ΠΎ Π²Ρ‹Π·Ρ‹Π²Π°Ρ‚ΡŒ, ΠΊΠΎΠ³Π΄Π° элСмСнты графичСского интСрфСйса (ΠΊΠ½ΠΎΠΏΠΊΠΈ, Ρ„Π»Π°ΠΆΠΊΠΈ ΠΈ Ρ‚. Π΄.) Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€ΡƒΡŽΡ‚ события. Они Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ
          вызываСтся ΠΈΠ· VBA.

          Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈ макросов ΠΌΠΎΠ³ΡƒΡ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ ΠΎΠ±Ρ€Π°Ρ‚Π½Ρ‹ΠΉ Π²Ρ‹Π·ΠΎΠ² Π² Excel с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ COM API Excel (ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ‡Π΅Π½ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎΠΉ ΠΌΠΎΠ΄Π΅Π»ΠΈ VBA Excel).
          Ѐункция xl_app ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для получСния COM-ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Excel.Application .
          (с использованиСм win32com ΠΈΠ»ΠΈ comtypes ), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ являСтся COM-ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ, ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΌ
          ΠžΠ±ΡŠΠ΅ΠΊΡ‚ прилоТСния Π² VBA.

          Π‘ΠΌ. Ρ‚Π°ΠΊΠΆΠ΅ Python ΠΊΠ°ΠΊ Π·Π°ΠΌΠ΅Π½Ρƒ VBA.

          ΠŸΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»Π΅Π½ΠΈΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ Π² Π²ΠΈΠ΄Π΅ макросов

          Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈ Python, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒΡΡ Π² Π²ΠΈΠ΄Π΅ макросов, ΡƒΠΊΡ€Π°ΡˆΠ΅Π½Ρ‹ ΠΈΠΌΠΏΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌ Π΄Π΅ΠΊΠΎΡ€Π°Ρ‚ΠΎΡ€ΠΎΠΌ xl_macro
          ΠΈΠ· модуля pyxll.

           ΠΈΠ· pyxll ΠΈΠΌΠΏΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ xl_macro, xl_app, xlcAlert
          
          @xl_macro
          ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ popup_messagebox():
              xlcAlert("ЗдравствуйтС")
          
          @xl_macro
          ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ set_current_cell (Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅):
              XL = XL_ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ()
              xl. Selection.Value = Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅
          
          @xl_macro ("строка n: Ρ†Π΅Π»ΠΎΠ΅ число")
          Π·Π°Ρ‰ΠΈΡ‚Π° py_strlen(n):
              Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒ Π»Π΅Π½(Ρ…)
           

          БочСтания клавиш

          Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π½Π°Π·Π½Π°Ρ‡ΠΈΡ‚ΡŒ сочСтания клавиш для своих макросов, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ³ΠΎ слова «горячая клавиша» для xl_macro
          Π΄Π΅ΠΊΠΎΡ€Π°Ρ‚ΠΎΡ€, Π»ΠΈΠ±ΠΎ установив Π΅Π³ΠΎ Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ Π―Π Π›Π«ΠšΠ˜ Π² ΠΊΠΎΠ½Ρ„ΠΈΠ³.

          Π―Ρ€Π»Ρ‹ΠΊΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΡΠΎΡΡ‚ΠΎΡΡ‚ΡŒ ΠΈΠ· ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈΠ»ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΈΠΌΠ΅Π½ клавиш-ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠ² ( Ctrl , Shift ΠΈΠ»ΠΈ Alt ) ΠΈ клавиши, Ρ€Π°Π·Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ…
          символ Β«+Β». НапримСр, Β«Ctrl+Shift+RΒ».

           ΠΈΠ· pyxll ΠΈΠΌΠΏΠΎΡ€Ρ‚ xl_macro, xl_app
          
          @xl_macro(ярлык="Alt+F3")
          ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ macro_with_shortcut():
              xlcAlert("Alt+F3 Π½Π°ΠΆΠ°Ρ‚Π°")
           

          Если комбинация клавиш ΡƒΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² Excel, ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π½Π°Π·Π½Π°Ρ‡ΠΈΡ‚ΡŒ макрос для этой ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ†ΠΈΠΈ.

          Π’ Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊ Π±ΡƒΠΊΠ²Π΅Π½Π½Ρ‹ΠΌ, Ρ†ΠΈΡ„Ρ€ΠΎΠ²Ρ‹ΠΌ ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΌ клавишам Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ клавиши (ΠΎΠ½ΠΈ Π½Π΅
          Ρ‡ΡƒΠ²ΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΈ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π±Π΅Π· клавиши-ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π°):

          • Backspace
          • ΠŸΠ΅Ρ€Π΅Ρ€Ρ‹Π²
          • CapsLock
          • ΠŸΡ€ΠΎΠ·Ρ€Π°Ρ‡Π½Ρ‹ΠΉ
          • Π£Π΄Π°Π»ΠΈΡ‚ΡŒ
          • Π’Π½ΠΈΠ·
          • ΠšΠΎΠ½Π΅Ρ†
          • Π’Π²Π΅Π΄ΠΈΡ‚Π΅
          • ПобСг
          • Π”ΠΎΠΌ
          • Вставка
          • Π›Π΅Π²Ρ‹ΠΉ
          • NumLock
          • ΠŸΠ“Π”Π
          • ΠŸΠ³Π’ΠΏ
          • справа
          • ScrollLock
          • Π’ΠΊΠ»Π°Π΄ΠΊΠ°

          Π’Ρ‹Π·ΠΎΠ² макросов ΠΈΠ· Excel

          ΠœΠ°ΠΊΡ€ΠΎΡΡ‹, ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Π΅ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ PyXLL, ΠΌΠΎΠΆΠ½ΠΎ Π²Ρ‹Π·Ρ‹Π²Π°Ρ‚ΡŒ ΠΈΠ· Excel Ρ‚Π°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ ΠΈ Π»ΡŽΠ±Ρ‹Π΅ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ макросы Excel.

          Π‘Π°ΠΌΡ‹ΠΉ ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΉ способ β€” Π½Π°Π·Π½Π°Ρ‡ΠΈΡ‚ΡŒ макрос элСмСнту управлСния. Для этого сначала Π΄ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ панСль инструмСнтов Β«Π€ΠΎΡ€ΠΌΡ‹Β», пСрСйдя Π² Β«Π˜Π½ΡΡ‚Ρ€ΡƒΠΌΠ΅Π½Ρ‚Ρ‹Β».
          НастройтС мСню Π² Excel ΠΈ установитС Ρ„Π»Π°ΠΆΠΎΠΊ Π€ΠΎΡ€ΠΌΡ‹. Π­Ρ‚ΠΎ прСдставит Π²Π°ΠΌ панСль Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… элСмСнтов управлСния.
          ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π½Π° свой Ρ€Π°Π±ΠΎΡ‡ΠΈΠΉ лист. Для ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠ³ΠΎ Π²Ρ‹ΡˆΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° ΠΎΠΊΠ½Π° сообщСния Π΄ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ ΠΊΠ½ΠΎΠΏΠΊΡƒ, Π·Π°Ρ‚Π΅ΠΌ Ρ‰Π΅Π»ΠΊΠ½ΠΈΡ‚Π΅ ΠΏΡ€Π°Π²ΠΎΠΉ ΠΊΠ½ΠΎΠΏΠΊΠΎΠΉ ΠΌΡ‹ΡˆΠΈ ΠΈ Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅
          Β«ΠΠ°Π·Π½Π°Ρ‡ΠΈΡ‚ΡŒ макрос…». Π’Π²Π΅Π΄ΠΈΡ‚Π΅ имя вашСго макроса, Π² Π΄Π°Π½Π½ΠΎΠΌ случаС popup_messagebox .
          Π’Π΅ΠΏΠ΅Ρ€ΡŒ, ΠΊΠΎΠ³Π΄Π° Π²Ρ‹ Π½Π°ΠΆΠΌΠ΅Ρ‚Π΅ эту ΠΊΠ½ΠΎΠΏΠΊΡƒ, Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π·Π²Π°Π½ макрос.

          ΠŸΡ€Π΅Π΄ΡƒΠΏΡ€Π΅ΠΆΠ΄Π΅Π½ΠΈΠ΅

          Π’ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠΌ ΠΎΠΊΠ½Π΅ ΠΠ°Π·Π½Π°Ρ‡ΠΈΡ‚ΡŒ макрос Π² Excel Π±ΡƒΠ΄ΡƒΡ‚ пСрСчислСны Ρ‚ΠΎΠ»ΡŒΠΊΠΎ макросы, ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Π΅ Π² Ρ€Π°Π±ΠΎΡ‡ΠΈΡ… ΠΊΠ½ΠΈΠ³Π°Ρ…. Π›ΡŽΠ±ΠΎΠΉ макрос, ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΉ Π²
          Python, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰ΠΈΠΉ xl_macro , Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒΡΡ Π² этом спискС. ВмСсто этого Π²Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ввСсти имя
          вашСго макроса Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ, ΠΈ Excel ΠΏΡ€ΠΈΠΌΠ΅Ρ‚ Π΅Π³ΠΎ.

          Π’Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π²Ρ‹Π·Ρ‹Π²Π°Ρ‚ΡŒ свои макросы ΠΈΠ· VBA. Π₯отя PyXLL ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для сниТСния потрСбности Π² VBA Π² вашСй
          ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρ‹, ΠΈΠ½ΠΎΠ³Π΄Π° ΠΏΠΎΠ»Π΅Π·Π½ΠΎ ΠΈΠΌΠ΅Ρ‚ΡŒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Π²Ρ‹Π·Ρ‹Π²Π°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Python ΠΈΠ· VBA.