С изявление в Excel VBA
Изявлението се използва във VBA за достъп до всички свойства и методи на споменатия обект. Трябва да предоставим кой VBA обект, за който говорим, първо след това затворете инструкцията With с End With , след това вътре в тази инструкция. Ние можем да извършим всички промени в свойствата и методите на споменатия обект.
По-долу е синтаксисът на With Statement във VBA.
С (ОБЕКТ) (Код … Какво трябва да се направи?) Завършете с
Обектът не е нищо друго освен набор от клетки или клетки, към които се отнасяме, и след това можем да променим свойствата и да изпълним всички методи, свързани с тази конкретна клетка или клетки.
Как да използвам с изявление в Excel VBA?
По-долу са дадени някои примери за използване с Statement в Excel VBA.
Пример # 1
Да предположим, че имате определена стойност в клетка A1, аз въведох текста като „Excel VBA“ в клетка A1.

Сега за тази клетка трябва да направя някои задачи, т.е. форматиране в Excel.
Искам да променя размера на шрифта, името на шрифта и цвета на интериора, да вмъкна рамка и т.н. … Обикновено това, което правим, е първо да препратим клетката с помощта на обект VBA RANGE.
Код:
Sub With_Example1 () Обхват ("A1") Край Sub

Сега, за да променим размера на шрифта, ние имаме достъп до свойството “font” на тази клетка.

Под свойство FONT ние влизаме в свойството Size и въвеждаме размер, като поставяме знак за равенство.
Код:
Sub With_Example1 () Обхват ("A1"). Font.Size = 15 Край Sub

Сега по същия начин правим и други задачи за форматиране, както е показано по-долу.
Код:
Sub With_Example1 () Range ("A1"). Font.Size = 15 Range ("A1"). Font.Name = "Verdana" Range ("A1"). Interior.Color = vbЖълт диапазон ("A1"). Граници .LineStyle = xl Непрекъснат край Sub

Това ще направи всички споменати задачи, но ако погледнете кода, за да извършите всяка дейност по форматиране, всеки път сме предоставили адреса на клетката. Това прави кода да изглежда дълъг и отнема много време.
Сега ще използваме VBA With изявление, за да намалим въвеждането на адрес на клетка всеки път. Отворете инструкцията WITH в Excel VBA и посочете адреса на клетката.
Код:
Sub With_Example1 () With Range ("A1") End Sub

Вътре в инструкцията With поставете точка, за да видите всички свойства и методи на клетка A1.

Сега първата дейност по форматиране променя размера на шрифта, така че имайте достъп до FONT и под това свойство SIZE за достъп.
Код:
Sub With_Example1 () С диапазон ("A1"). Font.Size = 15 Край Sub

По същия начин предоставете други кодове за форматиране и затворете VBA с изявление.
Код:
Sub With_Example1 () С диапазон ("A1") .Font.Size = 15. Font.Name = "Verdana" .Interior.Color = vbYellow .Borders.LineStyle = xl Непрекъснат край с край Sub

Изпълнете кода, за да видите цялото форматиране в споменатия обект, т.е. клетка A1.

И така, цялото форматиране, приложено към клетката. Вижте колко готина е тази техника.
Пример # 2
Например, ако искате да промените всички свойства, свързани с шрифта, можете да споменете свойството клетка и FONT.
Код:
Sub With_Example2 () С диапазон ("A1"). Шрифт Край с Край Sub

Вътре в VBA With Statement можем да видим списъка IntelliSense. Той ще покаже свойства и методи, свързани само със свойството FONT.

С това можем да изпълняваме всякакъв набор от дейности сега.
Код:
Sub With_Example2 () С диапазон ("A1"). Шрифт. Bold = True 'Шрифтът ще бъде получер .Color = vbAlias' Цветът на шрифта ще бъде Alias .Italic = True 'Шрифтът ще бъде в курсив. be 20. .Underline = True 'Шрифтът ще бъде подчертан End With End Sub

Резултатът от това ще бъде както е показано по-долу.

Пример # 3
Кодът по-долу ще има достъп само до свойства, свързани с границите на клетките.
Код:
Sub With_Example3 () С диапазон ("B2"). Граници .Color = vbRed 'Цветът на границата ще бъде червен .LineStyle = xlContinuous' Пълна граница.

Резултатът от този код е както следва.

Неща за запомняне
- С инструкция се използва за минимизиране на кода.
- Първо трябва да предоставим обект за инструкция With.
- След като конкретният обект бъде предоставен, можем да осъществим достъп само до свойствата и методите на този обект.