Добавление кода в рабочий лист - VB
Формулировка задачи:
Друзья. возник ворос.
в VBA есть возможность програмно создавать код модуля посредством
ThisWorkbook.VBProject.VBComponents("Module2").CodeModule ну и так далее, тоесть , например, добавлять из программы строки в уже имеющийся модуль или создавать новый.
так вот вопрос:
можноли сделать тоже самое только не для модуля, а для рабочего листа? и как?
грубо говоря нужно добавить кучу обработчиков событий а в ручную это делать не хочется, а обработчики, как я понимаю прописываются в листе где они находятся...
в VBA есть возможность програмно создавать код модуля посредством
ThisWorkbook.VBProject.VBComponents("Module2").CodeModule ну и так далее, тоесть , например, добавлять из программы строки в уже имеющийся модуль или создавать новый.
так вот вопрос:
можноли сделать тоже самое только не для модуля, а для рабочего листа? и как?
грубо говоря нужно добавить кучу обработчиков событий а в ручную это делать не хочется, а обработчики, как я понимаю прописываются в листе где они находятся...
Решение задачи: «Добавление кода в рабочий лист»
textual
Листинг программы
<font color="blue">Public</font> <font color="blue">Sub</font> AddProcToWs() <font color="blue">Dim</font> wb <font color="blue">As</font> Workbook <font color="blue">Dim</font> cm <font color="blue">As</font> CodeModule <font color="blue">Dim</font> lngI <font color="blue">As</font> <font color="blue">Long</font> <font color="blue">Set</font> wb = ThisWorkbook <font color="blue">Set</font> cm = wb.VBProject.VBComponents(<font color="teal">"Лист1"</font>).CodeModule <font color="blue">With</font> cm lngI = .CountOfLines + <font color="darkblue"><b>1</b></font> .InsertLines lngI, <font color="teal">"Private Sub Worksheet_SelectionChange(ByVal Target As Range)"</font> lngI = lngI + <font color="darkblue"><b>1</b></font> .InsertLines lngI, <font color="teal">"MsgBox "</font><font color="teal">"Hello!"</font><font color="teal">""</font> lngI = lngI + <font color="darkblue"><b>1</b></font> .InsertLines lngI, <font color="teal">"End Sub"</font> <font color="blue">End</font> <font color="blue">With</font> <font color="blue">Set</font> cm = <font color="blue">Nothing</font> <font color="blue">Set</font> wb = <font color="blue">Nothing</font> <font color="blue">End</font> <font color="blue">Sub</font>
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д