Выбрать дату в календареВыбрать дату в календаре

Страницы: 1
создание объекта в памяти. Возможно?
 
Я попытался сделать это с модулем классов.  
Но уперся в то, что в модуле класса для создания объекта(Shape) его то же нужно сначала создать на листе.  
 
Во всех предыдущих проектах я в любом случае сначала создавал объект (лист, книгу, и т.п.) а уже потом присваивал переменно в пользовательском классе.  
Есть возможность модуль класса объявить нужным объектом?
создание объекта в памяти. Возможно?
 
Добрый день!  
Делал небольшой проект на VBA и столкнулся со следующей проблемой.  
VBA позволяет создать объект в памяти?  
 
C# и другие языки позволяют сначала создать объект а потом добавить его  
т.е. можно сделать примерно так:  
 
Пример1  
Dim shp as (new?) Shape  
shp.Width=10  
shp.Height=20  
shp.Left=50  
shp.Top=50  
.......  
'Добавляю готовую фигуру на Лист  
ThisWorkbook.Sheets(1).Shapes.AddShape(shp)  
 
'Продолжаю работать с объектом shp  
shp.name="new_krug1"  
и т.п.  
 
Пример 2  
На VBA пришлось делать так:  
 
'Сначала объявляю  
Dim shp As Shape  
 
'Инициализирую и создаю с параметрами  
Set shp = ThisWorkbook.Sheets(1).Shapes.AddShape(msoShapeOval, 50, 50, 50, 50)  
'Меняю свойства  
shp.name="Oval1"  
 
Есть возможность сделать на ВБА что то подобное описанию из примера №1?
Карта субъектов России с экспортом в PowerPoint
 
Очередное обновление Интерактивная карта субъектов Российской Федерации  
 
+добавлена возможность отображения "пузырьков" на карте  
 
Скачать можно здесь:  
http://pharmaprofi.ru/post/25  
 
Добавление строк, помогите узнать причину ошибки
 
i = Worksheets("Отчет").Range("a1", Range("a1").End(xlDown).Address).Rows.Count  
.Address был пропущен
Надстройка
 
Подправил описаные ошибки.
Глюк при работе макроса
 
Слен, получается, что в своем варианте вы исключили из работы большой кусок кода от от Do while frmControlValue.visible, из за этого куска формулы нормально не вводились
Глюк при работе макроса
 
{quote}{login=слэн}{date=28.04.2010 12:28}{thema=}{post}щас еще раз проверю, но все вводилось нормально - т.е. как без формы{/post}{/quote} Если я правлильно понял, то водится, но в форму не заносятся изменения
Глюк при работе макроса
 
{quote}{login=The_Prist}{date=28.04.2010 12:19}{thema=}{post}Слэн, я возможно неправ, но автор хотел бы, чтоб формула вводилась в ту ячейку, в которой начинали её вводить.  
Например:  
активна ячейка А1 Лист1. Я вызываю форму, назначаю эту ячейку.  
затем иду в строку формул и пишу =, иду на второй лист указываю ячейку В1, иду на третий лист-указываю ячейку С1. Жму Enter. Формула должна вводиться в ячейку А1 Лист1! А не в С1 Лист3, как это происходит.    
Т.е. так же мы вводим формулы без формы.  
 
С Вашим примером у меня так не получилось. Что-то не так делаю?{/post}{/quote}  
 
Вы правы но пример Слена вроде работает, если не сложно кратко опишите отличие Loop Until term  
term = False  
от того что было у меня
Глюк при работе макроса
 
Спасибо, но не совсем то. Поидее это чать надстройки так что Workbook_SheetChange не катит. + вариант ввода формулы не только в целевую ячейку (curcell) но и в другие ячейки. Видимо конструирование формул путем переключения по листам не совмести м с кодом
Глюк при работе макроса
 
Сделал некий макрос (отслеживает измененения в целевой ячейке)  
Но возникает некий глюк: если в ячейке войти в режим правки и начать вводить формулу то в случае, если формула вводится переключением между листами (т.е. в ячейке листа1 пишу = , потом щелкаю по ярлыку Лист2 а затем по ячейке на листе) в норме в целевой ячейке лита1 должна появится формула =Лист2!A1+Лист2!B2 но в момент работы макроса эта формула записывается в ячейку листа по ярлыку которого я щелкнул последним в режиме правки.  
Это можно вылечить?    
 
P/s/ Прошу прощения за путанное описание, см . пример во вложении
как отработать событие Click если кнопка создана програмно?
 
{quote}{login=The_Prist}{date=26.02.2010 10:32}{thema=}{post}При программном создании элементов для обработки их событий необходимо использовать классы.{/post}{/quote}  
 
Если возможно, можно небольшой пример?  
 
___Нешел вот это_  
'_/_/_/Sample2_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/  
'UserForm Module  
 
Private WithEvents MyLabel1 As MSForms.Label  
 
Private Sub MyLabel1_Click()  
 MsgBox "Cliked"  
End Sub  
 
Private Sub UserForm_Initialize()  
 Set MyLabel1 = Controls.Add("Forms.Label.1")  
 MyLabel1.Caption = "What's up"  
End Sub  
'_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/  
 
Но тут проблема если создаю несколько элементов циклом, то отрабатывает событие нажатия только последнего
как отработать событие Click если кнопка создана програмно?
 
Программно создаю кнопки на форме в цикле (But1, But2, But3 и т.д.)  
Не получается назначить событие на нажатие этой кнопки  
 
Private Sub But1_Click() - не срабатывает. Лучше если получится воткнуть обарботчит событий в ту же процедуру, которая создает кнопки на форме
excel и БД Paradox
 
{quote}{login=VovaK}{date=17.02.2010 09:07}{thema=}{post}Красиво, еще бы знать - что есть БД Paradox. Цены бы нам не было...{/post}{/quote} База данных "Paradox" - если бы сам больше знал, наверное уже бы подключил. Все примеры которые находил не прокатили. Стандартными средствами (импорт внешних данных) так и не понял ку там пароль вставлять
excel и БД Paradox
 
Уважаемые форумчане! Подскажите (напишите) VB код для подключения к Excel БД Paradox (с паролем). Заранее благодарен!
Непонятный глюк
 
{quote}{login=vikttur}{date=10.02.2010 12:11}{thema=}{post}=ОКРУГЛ(1,03-1;2) работает{/post}{/quote}  
 
Спасибо! Так заработатло.  
 
Привет от дяди Билла?
Непонятный глюк
 
В примере абсолютно простая формула (=ВПР(D19;C4:D14;2;0))  
Где если d19 - число (в примере 0,03 то все ок )  
Как только изменяю число на вычисление со знаком минус она работать перестает  
 
т.е 1,03-1 = 0,03 - не работате  
а так 0,01+0,01 работает  
Это привет от MS или мне пора в отпуск?
VBA ; получить адресс источника данных для диаграммы
 
Уважаемые форумчане, помогите решить пролему. Я не могу получить адрес источника данных для диаграммы (или для ряда на диаграмме)    
 
Т.е.  задаю я его таким образом:    
 
ActiveChart.SetSourceData Source:=Sheets("Лист4").Range("A1:A7,H1:J7"), _  
       PlotBy:=xlRows  
 
А вот как получить адрес "Source" я найти не сумел.
альтернативный "Связанный выпадающий список"
 
{quote}{login=слэн}{date=12.10.2009 11:56}{thema=}{post}в чем альтернативность?{/post}{/quote} С тем, который лежит в примерах
альтернативный "Связанный выпадающий список"
 
Во вложение вариант связанного выпадающего списка  
 
Если кратко, то так:  
=СМЕЩ((ДВССЫЛ(АДРЕС(ПОИСКПОЗ(F19;brend;0)+1;2;1;1;"lists")));0;0;СЧЁТЕСЛИ(brend;F19);1)
Страницы: 1
Наверх