Π§ΠΈΡ‚Π°ΠΉΡ‚Π΅ ΠΊΠ½ΠΈΠ³ΠΈ ΠΎΠ½Π»Π°ΠΉΠ½ Π½Π° Bookidrom.ru! БСсплатныС ΠΊΠ½ΠΈΠ³ΠΈ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΊΠ»ΠΈΠΊΠ΅

Π§ΠΈΡ‚Π°Ρ‚ΡŒ ΠΎΠ½Π»Π°ΠΉΠ½ Β«VBA для Ρ‡Π°ΠΉΠ½ΠΈΠΊΠΎΠ²Β». Π‘Ρ‚Ρ€Π°Π½ΠΈΡ†Π° 88

Автор Π‘Ρ‚ΠΈΠ² Каммингс

ΠžΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Ρ€Π°Π±ΠΎΡ‡ΠΈΡ… ΠΊΠ½ΠΈΠ³ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Window (Окно). ΠžΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ Window, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠ½ΠΎΠ³Π΄Π° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ ΠΈ для измСнСния содСрТимого Ρ€Π°Π±ΠΎΡ‡Π΅ΠΉ ΠΊΠ½ΠΈΠ³ΠΈ, ΡΠ²Π»ΡΡŽΡ‚ΡΡ Ρ‡Π»Π΅Π½Π°ΠΌΠΈ ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΈ Windows ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Application. Бсылка Π½Π° ΠΎΠΊΠ½ΠΎ осущСствляСтся ΡƒΠΊΠ°Π·Π°Π½ΠΈΠ΅ΠΌ Π² качСствС индСкса Π² ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΈ Windows ΠΈΠΌΠ΅Π½ΠΈ Ρ„Π°ΠΉΠ»Π°, содСрТащСго Ρ€Π°Π±ΠΎΡ‡ΡƒΡŽ ΠΊΠ½ΠΈΠ³Ρƒ:

Windows("ΠšΡ€ΠΈΠ²Π°Ρ ΠΏΡ€ΠΎΠ΄Π°ΠΆ ΠΈΠ³Ρ€ΡƒΡˆΠ΅ΠΊ.xls")

Если для ΠΎΠ΄Π½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‡Π΅ΠΉ ΠΊΠ½ΠΈΠ³ΠΈ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎ нСсколько ΠΎΠΊΠΎΠ½, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ послС ΠΈΠΌΠ΅Π½ΠΈ Ρ€Π°Π±ΠΎΡ‡Π΅ΠΉ ΠΊΠ½ΠΈΠ³ΠΈ Ρ‡Π΅Ρ€Π΅Π· Π΄Π²ΠΎΠ΅Ρ‚ΠΎΡ‡ΠΈΠ΅ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ Π½ΠΎΠΌΠ΅Ρ€ ΠΎΠΊΠ½Π°, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€: Windows ("ΠšΡ€ΠΈΠ²Π°Ρ ΠΏΡ€ΠΎΠ΄Π°ΠΆ ΠΈΠ³ Ρ€Ρƒ шС ΠΊ.x l s:2").

ИспользованиС Π² ΠΊΠΎΠ΄Π΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Range для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ячСйками

Π’Π΅ΡΡŒΠΌΠ° Π½Π΅ΠΎΠΆΠΈΠ΄Π°Π½Π½ΠΎ, Ρ‡Ρ‚ΠΎ Π² Excel Π½Π΅Ρ‚ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Cell (Π―Ρ‡Π΅ΠΉΠΊΠ°). ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ ΠΏΡ€ΠΈ написании ΠΊΠΎΠ΄Π° слСдуСт Ρ€ΡƒΠΊΠΎΠ²ΠΎΠ΄ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΎΠΌ: для указания ячСйки Π² VBA-ΠΊΠΎΠ΄Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Range. Π’ Excel ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Range ΠΌΠΎΠΆΠ΅Ρ‚ Π·Π°ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ Π² сСбС ΠΎΠ΄Π½Ρƒ ΠΈΠ»ΠΈ большС ячССк ΠΈ Π΄Π°ΠΆΠ΅ нСсколько Π½Π΅ Π½Π΅ΠΏΡ€Π΅Ρ€Ρ‹Π²Π½Ρ‹Ρ… областСй листа.

ΠžΠ±ΡŠΠ΅ΠΊΡ‚ Range Π² Excel Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΎΠΌ ΠΏΠΎΠ΄ΠΎΠ±Π΅Π½ Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½Ρ‹ΠΌ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌ Π² Word, Π½ΠΎ вмСстС с Ρ‚Π΅ΠΌ ΠΈΠΌΠ΅Π΅Ρ‚ ΠΈ сущСствСнныС отличия. Как ΠΈ Π² Word, VBA-ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° ΠΌΠΎΠΆΠ΅Ρ‚ ΡΡΡ‹Π»Π°Ρ‚ΡŒΡΡ Π½Π° любоС Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΠ΅ число ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Range. Как Π² Excel, Ρ‚Π°ΠΊ ΠΈ Word, дСйствиС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π΅ ограничиваСтся Π²ΠΈΠ΄ΠΈΠΌΡ‹ΠΌ Π²Ρ‹Π΄Π΅Π»Π΅Π½ΠΈΠ΅ΠΌ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ, ΠΈ для воздСйствия Π½Π° ΠΊΠ°ΠΊΡƒΡŽ-Π»ΠΈΠ±ΠΎ ΠΎΠ±Π»Π°ΡΡ‚ΡŒ Π΅Π΅ Π²Ρ‹Π΄Π΅Π»ΡΡ‚ΡŒ Π½Π΅ трСбуСтся.

ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Range

Π’ Excel имССтся нСсколько Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Ρ… ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π° ΠΈΠ· ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ»ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ячССк, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π²ΠΎΠ·Π΄Π΅ΠΉΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ написанный ΠΊΠΎΠ΄. Для достиТСния Π΄Π°Π½Π½ΠΎΠΉ Ρ†Π΅Π»ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅.

Бтандартная ссылка Π½Π° ячСйку. Π’Π°ΠΊ Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹ΠΉ А1-ΡΡ‚ΠΈΠ»ΡŒ ссылки Π½Π° ячСйку являСтся, ΠΏΠΎΠΆΠ°Π»ΡƒΠΉ, самым простым способом Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ Range. Для опрСдСлСния Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π° Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ссылку Π·Π°ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Π² ΠΊΠ°Π²Ρ‹Ρ‡ΠΊΠΈ ΠΈ скобки послС ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ³ΠΎ слова Range, ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅:

ActiveSheet.Range("B3")

Worksheets("Sheet 2").Range("M5:S20")

Π˜ΠΌΠ΅Π½ΠΎΠ²Π°Π½Π½Ρ‹Π΅ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Ρ‹. Если Ρ€Π°Π±ΠΎΡ‡ΠΈΠΉ лист содСрТит ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½Π½Ρ‹Π΅ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Ρ‹, VBA ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ Range ΠΌΠΎΠ³ΡƒΡ‚ ΠΎΠΏΠΈΡ€Π°Ρ‚ΡŒΡΡ Π½Π° Π½ΠΈΡ…, ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅:

Worksheets("Ѐинансовый ΠΎΡ‚Ρ‡Π΅Ρ‚").Range("Π’Ρ‹ΠΏΠ»Π°Ρ‚Π° ΠΏΡ€ΠΎΡ†Π΅Π½Ρ‚ΠΎΠ²")

Для присвоСния Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Ρƒ ΠΈΠΌΠ΅Π½ΠΈ нСпосрСдствСнно Π² самом ΠΊΠΎΠ΄Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡƒΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅ Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ с использованиСм Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ свойства Name (Имя):

Range("A3:Π’4")-Name = "ΠŸΡ€Π°ΠΉΡ-лист"

БокращСнная запись. ВслСдствиС частого использования ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Range, Excel позволяСт ΡƒΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ΅ слово Range ΠΏΡ€ΠΈ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠΈ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π° ΠΏΡ€ΠΈ записи Π² А1 -стилС ΠΈΠ»ΠΈ ΠΏΡ€ΠΈ записи с использованиСм ΠΈΠΌΠ΅Π½ΠΈ. Для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Ρ‚Π°ΠΊΠΎΠ³ΠΎ ΠΏΡ€ΠΈΠ΅ΠΌΠ° ссылку Π½Π° ячСйку ΠΈΠ»ΠΈ имя Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π° слСдуСт Π·Π°ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Π² ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚Π½Ρ‹Π΅ скобки, ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π² ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΌ Π½ΠΈΠΆΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅:

ActiveSheet["Al:Z26"]

["ΠšΠ²Π°Ρ€Ρ‚Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΎΡ‚Ρ‡Π΅Ρ‚"]

Бвойство Cells ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Worksheets. Данная Ρ‚Π΅Ρ…Π½ΠΈΠΊΠ° ΠΊΡ€Π°ΠΉΠ½Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠ° профСссионалам, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ позволяСт ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡ‚ΡŒ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ Π½Π΅ ΠΏΡƒΡ‚Π΅ΠΌ указания фиксированных адрСсов ячСйки, Π° Π½Π° основС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…. Основная идСя состоит Π² составлСнии Π² Ρ†ΠΈΡ„Ρ€ΠΎΠ²ΠΎΠΌ Π²ΠΈΠ΄Π΅ списка ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚ строк ΠΈ столбцов Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π°. Π§ΠΈΡ‚Π°ΠΉΡ‚Π΅ ΠΎΠ± этом Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ "ИспользованиС свойства Cells для опрСдСлСния Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π°" дальшС Π² Π΄Π°Π½Π½ΠΎΠΉ Π³Π»Π°Π²Π΅.

Бвойство Selection (Π’Ρ‹Π΄Π΅Π»Π΅Π½ΠΈΠ΅). Когда трСбуСтся воздСйствиС ΠΊΠΎΠ΄Π° Π½Π° Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½, ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ Π²Ρ‹Π΄Π΅Π»Π΅Π½ΠΈΡŽ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ свойство Selection. Π§ΠΈΡ‚Π°ΠΉΡ‚Π΅ ΠΎΠ± этом Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ "Π Π°Π±ΠΎΡ‚Π° с выдСлСниями" дальшС Π² Π΄Π°Π½Π½ΠΎΠΉ Π³Π»Π°Π²Π΅.

Бвойство ActiveCell (Активная ячСйка). Бвойство Active Cell ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для доступа ΠΊ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Ρƒ, ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‰Π΅ΠΌΡƒ Π°ΠΊΡ‚ΠΈΠ²Π½ΡƒΡŽ ячСйку Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΎΠΊΠ½Π°. ΠŸΡ€ΠΈ использовании Π±Π΅Π· спСцификатора ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° (Ρ‡Ρ‚ΠΎ эквивалСнтно использованию ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Application), свойство Active Cell ссылаСтся Π½Π° Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ:

ValueStorageBi n = ActiveCell.Value

Бвойства Rows (Π‘Ρ‚Ρ€ΠΎΠΊΠΈ) ΠΈΠ»ΠΈ Columns (Π‘Ρ‚ΠΎΠ»Π±Ρ†Ρ‹) ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Worksheet. Доступ ΠΊ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Ρƒ, Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‰Π΅ΠΌΡƒ вСсь столбСц ΠΈΠ»ΠΈ строку, осущСствляСтся с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ свойств Ρ€Π°Π±ΠΎΡ‡Π΅Π³ΠΎ листа Rows ΠΈ Columns с использованиСм Π½ΠΎΠΌΠ΅Ρ€Π° ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅ΠΌΠΎΠ³ΠΎ столбца ΠΈΠ»ΠΈ строки (нСльзя Π°Π΄Ρ€Π΅ΡΠΎΠ²Π°Ρ‚ΡŒ столбСц Ρ‡Π΅Ρ€Π΅Π· Π΅Π³ΠΎ Π±ΡƒΠΊΠ²Π΅Π½Π½ΠΎΠ΅ ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅). Π’ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ опрСдСляСтся Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½, Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‰ΠΈΠΉ столбСц Π•, Ρ‚.Π΅. пятый столбСц:

Workbooks("IOU.xls").Worksheets("Sheetshoot out").Column(5)

ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Π΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ ссылки Π½Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹. ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ являСтся ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ, ΠΌΠΎΠΆΠ½ΠΎ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½Π½ΡƒΡŽ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΡƒΡŽ ссылку Π½Π° Π½Π΅Π³ΠΎ, послС Ρ‡Π΅Π³ΠΎ доступ ΠΊ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Ρƒ осущСствляСтся с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ указания ΠΈΠΌΠ΅Π½ΠΈ ссылки. Π”Π°Π½Π½ΡƒΡŽ Ρ‚Π΅Ρ…Π½ΠΈΠΊΡƒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΡ‰Π΅ ΠΈ быстрСС, Ρ‡Π΅ΠΌ ΠΌΠ½ΠΎΠ³ΠΎΠΊΡ€Π°Ρ‚Π½ΠΎΠ΅ ΡƒΠΊΠ°Π·Π°Π½ΠΈΠ΅ ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π°. ПослС установки ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎΠΉ ссылки RanGer, ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π² ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅, ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π΅Π³ΠΎ свойства Π² Ρ‚Π°ΠΊΠΈΡ… выраТСниях, ΠΊΠ°ΠΊ RanGer . Value:

Dim RanGer As Range Set RanGer = Worksheets("Лист1").Range("B12:H13" )

ИспользованиС свойств Cells для опрСдСлСния Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π°

ΠŸΡ€ΠΈ использовании Π±Π΅Π· ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚ свойство Cells ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Worksheets ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π½Π° Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½, Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‰ΠΈΠΉ всС ячСйки Π΄Π°Π½Π½ΠΎΠ³ΠΎ Ρ€Π°Π±ΠΎΡ‡Π΅Π³ΠΎ листа. По Π°Π½Π°Π»ΠΎΠ³ΠΈΠΈ, свойства Cells ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Application ( Application. Cells ) ΡΡΡ‹Π»Π°ΡŽΡ‚ΡΡ Π½Π° всС ячСйки листа, Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΠ³ΠΎ Π² Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ (свойство Cells ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ само ΠΏΠΎ сСбС, Π±Π΅Π· указания Π² явном Π²ΠΈΠ΄Π΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Application).

Если Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΎΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒΡΡ Π½Π° Π±ΠΎΠ»Π΅Π΅ Π»ΠΎΠΊΠ°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΌ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π΅, для свойства Cells трСбуСтся числовоС ΡƒΠΊΠ°Π·Π°Π½ΠΈΠ΅ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚ строки ΠΈ столбца (Π±ΡƒΠΊΠ²Π΅Π½Π½ΠΎΠ΅ ΡƒΠΊΠ°Π·Π°Π½ΠΈΠ΅ столбца Π½Π΅ допускаСтся). Π’ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΡƒΠΊΠ°Π·Π°Π½ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½, Π·Π°ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‰ΠΈΠΉ ячСйку Π•Π—:

Worksheets("Π‘Ρ‚Π°Ρ€Ρ‹Π΅ новости").Cells ( 3,5)

Π’Π΅ΡΡŒΠΌΠ° Π½Π΅ΠΏΡ€ΠΈΠ²Ρ‹Ρ‡Π½ΠΎ Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ сначала указываСтся ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Π° строки, Π° Π·Π°Ρ‚Π΅ΠΌ столбца, Π² ΠΏΡ€ΠΎΡ‚ΠΈΠ²ΠΎΠΏΠΎΠ»ΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ записи Π² А1-стилС. Π’ ΠΏΡ€Π΅Π΄ΡˆΠ΅ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Π²Ρ‚ΠΎΡ€ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π² ссылкС Π½Π° ячСйку ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π½Π° столбСц Π•, Ρ‚.Π΅. пятый столбСц. ВслСдствиС Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ данная систСма Ρ‚Ρ€ΡƒΠ΄Π½Π° для понимания, Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с Π½Π΅ΠΉ слСдуСт лишь Π² случаС особой нСобходимости. ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΎΠ±Π΅ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ ΡΠ²Π»ΡΡŽΡ‚ΡΡ числами, ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡ‡Π΅Π½ΡŒ просто ΡƒΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ ΠΈΡ… Ρ‡Π΅Ρ€Π΅Π· ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅. ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ (ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅) ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Ρ‚ΡŒ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ ΠΎ Ρ‚ΠΎΠΌ, Π³Π΄Π΅ находится Ρ‚Ρ€Π΅Π±ΡƒΠ΅ΠΌΡ‹ΠΉ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ Π½Π° основС Π²Π²Π΅Π΄Π΅Π½Π½Ρ‹Ρ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ Π΄Π°Π½Π½Ρ‹Ρ…, Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ² вычислСний ΠΈ Ρ‚.Π΄.

Π’ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ строка выбираСтся Π² зависимости ΠΎΡ‚ Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ Π³ΠΎΠ΄Π° ΠΈ мСсяца: intMonth = Month (Now О)

aGoal = Worksheets("Monthly Projections").Cells ( intMont h, 8)

Бпособом Ρ‡ΡƒΡ‚ΡŒ ΠΏΠΎΡ…ΠΈΡ‚Ρ€Π΅Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½, ΠΏΠΎΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΉ большС ΠΎΠ΄Π½ΠΎΠΉ ячСйки:

Range( Cells ( 3,5), Cells ( 4,6) )

Π’ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΌ здСсь ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ указываСтся Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ ячССк 2x2 Π½Π° Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΠΌ Ρ€Π°Π±ΠΎΡ‡Π΅ΠΌ листС, Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‰ΠΈΠΉ ячСйки Π•Π— (строка 3, столбСц 5) Π² Π²Π΅Ρ€Ρ…Π½Π΅ΠΌ Π»Π΅Π²ΠΎΠΌ ΠΈ ячСйку F4 Π² Π»Π΅Π²ΠΎΠΌ Π½ΠΈΠΆΠ½Π΅ΠΌ ΡƒΠ³Π»Π°Ρ….

Для опрСдСлСния Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π° Π½Π° Π½Π΅Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΠΌ листС Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ совмСстно свойства Range ΠΈ Cells для Ρ‚Ρ€Π΅Π±ΡƒΠ΅ΠΌΠΎΠ³ΠΎ листа. Π‘Π»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅ Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ выполняСт Π΄Π°Π½Π½ΡƒΡŽ Ρ€Π°Π±ΠΎΡ‚Ρƒ, ΠΏΡ€Π°Π²Π΄Π°, ΠΈΠΌΠ΅Π΅Ρ‚ достаточно Π³Ρ€ΠΎΠΌΠΎΠ·Π΄ΠΊΠΈΠΉ Π²ΠΈΠ΄:

Worksheets("2"). _

Range(Worksheets("2").Cells(3,5).

Worksheets("2">.Cells(4,6))

ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ With позволяСт ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ ΠΈΠ·Π»ΠΈΡˆΠ½ΠΈΡ… ссылок Π½Π° Ρ€Π°Π±ΠΎΡ‡ΠΈΠΉ лист. Π’ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΊ тСксту всСго Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π° примСняСтся ΠΏΠΎΠ»ΡƒΠΆΠΈΡ€Π½ΠΎΠ΅ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅:

With Worksheets("Лист2")

.Range(.Cells ( 3,5), .Cells ( 4,6) ).Font.Bold = True

End With

ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ Ρ‚ΠΎΡ‡ΠΊΠΈ ΠΏΠ΅Ρ€Π΅Π΄ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΌ использованиСм свойства Cells Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹ для связи любой ссылки с Ρ‚Ρ€Π΅Π±ΡƒΠ΅ΠΌΡ‹ΠΌ Ρ€Π°Π±ΠΎΡ‡ΠΈΠΌ листом. Π’ случаС отсутствия Ρ‚ΠΎΡ‡Π΅ΠΊ ΠΊΠ°ΠΆΠ΄ΠΎΠ΅ свойство Cells Π±ΡƒΠ΄Π΅Ρ‚ относится ΠΊ Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΠΌΡƒ листу, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Ρ‚ ΠΊ возникновСнию ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚Π° со ссылкой свойства Range.

Π’Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ совмСстных дСйствий с ячСйками

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ свойства Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π°, ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ΄Π½ΠΈΠΌ дСйствиСм ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ характСристики Ρ†Π΅Π»ΠΎΠ³ΠΎ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π°. Π‘Π»Π΅Π΄ΡƒΡŽΡ‰Π°Ρ строка измСняСт Ρ€Π°Π·ΠΌΠ΅Ρ€ ΡˆΡ€ΠΈΡ„Ρ‚Π° тСкста Π²ΠΎ всСх ячСйках Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π°:

Worksheets ("Лист1").Range("B12:H13").Font.Size = 14

БСзусловно, ΠΌΠΎΠΆΠ½ΠΎ ΠΈ Π΄Π°ΠΆΠ΅ ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡Ρ‚ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ структуру With, ΠΊΠΎΠ³Π΄Π° Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с нСсколькими свойствами ΠΈΠ»ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°ΠΌΠΈ Ρ†Π΅Π»ΠΎΠ³ΠΎ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π°, ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ здСсь:


With someRange ' опрСдСлСнная Ρ€Π°Π½Π΅Π΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½Π°Ρ ссылка

.Value = 20 ' Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ всСх ячССк устанавливаСтся Ρ€Π°Π²Π½Ρ‹ΠΌ 20

.Font.Name = "Garamond"

. Font.Italic = True

.Locked = True someRange = .Name ' БохраняСтся имя Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π°

End With


Π Π°Π±ΠΎΡ‚Π° с ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΌΠΈ ячСйками Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π°

Π₯отя ΠΌΠΎΠΆΠ½ΠΎ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° Π½Π°Π·Π½Π°Ρ‡ΠΈΡ‚ΡŒ ΠΎΠ΄Π½ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ всСм ячСйкам Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π°, ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π² ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅, Π² Excel Π½Π΅Ρ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π΅Π³ΠΎ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ СдинствСнного дСйствия ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΠ΅ΡΡ значСния многоячССчного Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π°. ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ Π²Ρ€ΠΎΠ΄Π΅ someRange .Value = someRange . Value + 10 Π½Π΅ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚. ВмСсто этого Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²ΠΈΡ‚ΡŒ цикличСский ΠΏΠ΅Ρ€Π΅Π±ΠΎΡ€ всСх ячССк Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π° с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ†ΠΈΠΊΠ»Π° For Each. . , Next. ΠŸΡ€ΠΈ использовании Π΄Π°Π½Π½ΠΎΠΉ Ρ‚Π΅Ρ…Π½ΠΈΠΊΠΈ Π½Π΅ трСбуСтся Π·Π½Π°Π½ΠΈΠ΅ количСства ячССк, входящих Π² Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½. Π’ΠΎΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ работоспособного ΠΊΠΎΠ΄Π°:


For Each aCell In Selection

aCell.Value = aCell.Value + 10

Next


Часто ΠΏΠ΅Ρ€Π΅Π΄ Ρ‚Π΅ΠΌ, ΠΊΠ°ΠΊ ΠΏΡ€ΠΈΠ½ΡΡ‚ΡŒ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ дСйствия Π½Π°Π΄ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠΉ ячСйкой ΠΈΠ»ΠΈ ΠΎ Π²ΠΎΠΎΠ±Ρ‰Π΅ ΠΎ Π²Ρ‹Π±ΠΎΡ€Π΅ дСйствия, трСбуСтся ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° содСрТимого ячСйки. ΠžΡΠ½ΠΎΠ²Ρ‹Π²Π°ΡΡΡŒ Π½Π° Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΌ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΈ ячСйки, ΠΊΠΎΠ΄ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΈΠ½ΡΡ‚ΡŒ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ ΠΎ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ ячСйки, ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ Π΅Π΅ значСния ΠΈΠ»ΠΈ ΠΆΠ΅ использовании Π΄Π°Π½Π½ΠΎΠ³ΠΎ значСния для выполнСния Π΄Ρ€ΡƒΠ³ΠΈΡ… вычислСний. Π’ Ρ‚Π°ΠΊΠΎΠΌ случаС Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Ρ†ΠΈΠΊΠ» For Each . . . Next: