|
|
|
Excell разработка форм (нужны примеры)
|
|||
|---|---|---|---|
|
#18+
Довольно давно работаю с access. Конструировать формы одно удовольствие. Сейчас надо довольно быстро сварганить проект на excel. Не смог найти примеры создание форм с закладками, полями, списками, ключами.....Я накидал кнопочки, поля, списки на страницу, но элементов управления много и неудобно пользоваться. Очень надо освоить форму с закладками. Может кто поделиться примерами? Может есть пример как у access (Борей)? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.02.2007, 21:03:55 |
|
||
|
Excell разработка форм (нужны примеры)
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.02.2007, 21:36:41 |
|
||
|
Excell разработка форм (нужны примеры)
|
|||
|---|---|---|---|
|
#18+
Спасибо большое. По крайней мере немного понятны идеи создания. Буду делать наброски. Идеологически, мне кажется, что лучше данные формы (ключи условия...) хранить на отдельном. Наверняка его можно сделать скрытым. В моей поделке мне приходится часто определять фон ячейки (подсветка результата условия),Есть для формы элемент, язычек (похожий на список), где можно опеделить цвет для поля или размножить штатный инструмент выбора цвета фона? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.02.2007, 22:53:20 |
|
||
|
Excell разработка форм (нужны примеры)
|
|||
|---|---|---|---|
|
#18+
данные для формы где хочешь можно хранить. существенным плюсом при хранении на листе может быть то, что в этом случае для ListBox можно сформировать заголовки колонок из данных с листа. для выбора цвета можно поместить какой-нибудь ActiveX ColorPicker на форму. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2007, 09:49:42 |
|
||
|
Excell разработка форм (нужны примеры)
|
|||
|---|---|---|---|
|
#18+
Приступил к основным наброскам кирпичиков будующей формы. Мда.....поиски элемента управления .цветом....предлагаются сторонние разработки, что не хочется. Появилось несколько вопросов: 1. Каким образом можно положить в свою форму несколько язычков с выбором цвета (рядом с полями условий) и окрашивать фон поля условия формы ? Вполне подходит штатный выбор цвета фона из стандартной панели инструментов, но ее надо положить в форму.....что не смог победить. Если не трудно, можно пример? (-:) плииз) 2. Не смог найти кнопку минимизации формы. В принципе можно без нее но не очень красиво. 3. На рабочем листе у меня выводится картограмма активной зоны реактора (соты), в каждой соте у меня 8 ячеек, там данные. Картограмма довольно большая, на экранне влезает. При программных шаманствах с данными картинка бегает по экрану(секунд 10), что раздражает. (selekt не применяю. ) Пробовал закреплять области, но не здорово. Каким образом можно сказать, что в левый верхний угол надо встать определенной ячейке и лучше заморозить экран на время действий. 4. Возможно в excel выделенную область открыть (как в печати выделенное) открыть в отдельном окне на размер этой области (превью)? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2007, 11:55:22 |
|
||
|
Excell разработка форм (нужны примеры)
|
|||
|---|---|---|---|
|
#18+
V_Milto1. Каким образом можно положить в свою форму несколько язычков с выбором цвета (рядом с полями условий) и окрашивать фон поля условия формы ? Вполне подходит штатный выбор цвета фона из стандартной панели инструментов, но ее надо положить в форму.....что не смог победить. Если не трудно, можно пример? (-:) плииз) выбор нескольких цветов можно сделать, например, как несколько пустых Label с заливками нужных цветов. Обрабатывать щелчек мыши на них для определения цвета. Можно самому через API сделать что-нибудь "покруче", но для десяти цветов Label даже удобнее получится. V_Milto2. Не смог найти кнопку минимизации формы. В принципе можно без нее но не очень красиво.такой нет. можно прятать форму me.hide, но потом нужно как-то её показать и не забыть, что она загружена. Другие варианты - управлять программой черех пользовательский toolbar или, если загружать дочернюю форму, а родительскую прятать. Это зависит от того, что ты планируешь делать. V_Milto3. На рабочем листе у меня выводится картограмма активной зоны реактора (соты), в каждой соте у меня 8 ячеек, там данные. Картограмма довольно большая, на экранне влезает. При программных шаманствах с данными картинка бегает по экрану(секунд 10), что раздражает. (selekt не применяю. ) Пробовал закреплять области, но не здорово. Каким образом можно сказать, что в левый верхний угол надо встать определенной ячейке и лучше заморозить экран на время действий. не совсем понятно..тем не менее, для установки zчейки, которая должна быть слева вверху: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. Код: plaintext 1. 2. 4. Возможно в excel выделенную область открыть (как в печати выделенное) открыть в отдельном окне на размер этой области (превью)? Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2007, 14:23:29 |
|
||
|
Excell разработка форм (нужны примеры)
|
|||
|---|---|---|---|
|
#18+
Все ваши примеры абсолютно в точку. Огромное спасибо. По поводу набора цветов Вы правы - в моем случае проще сделать набор заготовок и по щелчку вставлять цвет. Я поиграл с цветами в форме и появился вопрос. В ячейках таблицы я использую Interior.ColorIndex = val и моя поделка сделана на номере(коде) цвета (палитры). В форме я задаю - Me.ListBox1.BackColor = QBColor(val ) но эти цвета с Interior.ColorIndex = val разные, чего я и боялся .ColorIndex 57 кодов, а QBColor 16. Можно получить соответствие между ColorIndex и RGB()? Можно конечно оргаизовать цикл -:) 255*255*255, задавать цвет ячейке, а потом брать из нее ColorIndex........... И вопрос два - после замечательной веши Range("V14:BB88").Select ActiveSheet.PageSetup.PrintArea = Application.Selection.Address ActiveWindow.SelectedSheets.PrintPreview остается канва разметки области PrintPreview Убрать ее у меня не получилось. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2007, 15:58:15 |
|
||
|
Excell разработка форм (нужны примеры)
|
|||
|---|---|---|---|
|
#18+
V_MiltoМожно получить соответствие между ColorIndex и RGB()? Можно конечно оргаизовать цикл -:) 255*255*255, задавать цвет ячейке, а потом брать из нее ColorIndex........... Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. ActiveSheet.PageSetup.PrintArea = Application.Selection.Address ... остается канва разметки области PrintPreview Убрать ее у меня не получилось. Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2007, 16:36:53 |
|
||
|
Excell разработка форм (нужны примеры)
|
|||
|---|---|---|---|
|
#18+
Возникла мысль использовать для цвета в форме и в ячейках QBColor(val ), но этотнабор маловат и нет "нет заливки". не хорошо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2007, 16:40:34 |
|
||
|
Excell разработка форм (нужны примеры)
|
|||
|---|---|---|---|
|
#18+
V_Milto.. и нет "нет заливки". не хорошо.элементарно сделаешь лишнюю проверку и через .Interior.ColorIndex = xlNone ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2007, 16:47:48 |
|
||
|
Excell разработка форм (нужны примеры)
|
|||
|---|---|---|---|
|
#18+
ActiveSheet.PageSetup.PrintArea = "" Оставляет рамки штрихом, но в не там где было отмечено без этой строки рамки остаются на выделенной области. Вообщем это не критично. А вот Вашу фунцию Function ColorIndexFromRGB я не совсем понял. Скорее она показывает строгое соответствие RGB и ColorIndex Похоже мне не понадобится получать из RGB индекс (буду в форме формировать цвета (RGB) на основе индексов листа и помнить их номер) А получить индекс наиболее близкий к заданному RGB я сделал (криво)так- Function ColorIndexFromRGB_2(RGBColor As Long) As Integer Range("A1").Interior.Color = RGBColor ColorIndexFromRGB_2 = Range("A1").Interior.ColorIndex End Function ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2007, 19:39:50 |
|
||
|
Excell разработка форм (нужны примеры)
|
|||
|---|---|---|---|
|
#18+
Сделал набросок формы с выбором цвета из заготовок (40шт) Алгоритм - двойное нажатие на "что красить" и двойное нажатие на "чем красить" Private Sub КудаЦвет_DblClick(ByVal Cancel As MSForms.ReturnBoolean) NameControl = Me.ActiveControl.Name End Sub Private Sub ОразецЦвета1_DblClick(ByVal Cancel As MSForms.ReturnBoolean) If NameControl = "" Then Exit Sub Me.Controls(NameControl).BackColor = RGBFromColorIndex(Me.ОразецЦвета1) NameControl = "" End Sub двойное нажатие неудобно (можно конечно привыкнуть), одинарного (фокус) не обнаружил-:( Да и код у меня получается некрасивый - на каждую заготовку цвета надо повесить обработчик. Пытаюсь найти как приделать в форму штатный элемент выбора фона ячейки. Черт, неужели до него нельзя добраться? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2007, 23:24:50 |
|
||
|
Excell разработка форм (нужны примеры)
|
|||
|---|---|---|---|
|
#18+
http://www.sql.ru/forum/actualthread.aspx?tid=49617&hl=%e2%fb%e1%ee%f0+%f6%e2%e5%f2%e0 Нашел,но слишком круто и для меня с граблями - есть возможность выбора всей палитры- :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2007, 23:54:45 |
|
||
|
Excell разработка форм (нужны примеры)
|
|||
|---|---|---|---|
|
#18+
V_MiltoСделал набросок формы с выбором цвета из заготовок (40шт) А вот так не проще? Код: plaintext 1. 2. И вообще, смотрю я на ваши игры с ColorIndex и удивляюсь. Ну неужели так трудно хелп прочитать? Там же четко написано что в каждой книге своя собственная палитра из 56 (а не 57-и) цветов. Хочешь использовать ColorIndex - ну определи свою палитру и все. Не хочешь - используй RGB напрямую Код: plaintext 1. 2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2007, 00:31:24 |
|
||
|
Excell разработка форм (нужны примеры)
|
|||
|---|---|---|---|
|
#18+
White Owl V_MiltoСделал набросок формы с выбором цвета из заготовок (40шт) А вот так не проще? Код: plaintext 1. 2. И вообще, смотрю я на ваши игры с ColorIndex и удивляюсь. Ну неужели так трудно хелп прочитать? Там же четко написано что в каждой книге своя собственная палитра из 56 (а не 57-и) цветов. Хочешь использовать ColorIndex - ну определи свою палитру и все. Не хочешь - используй RGB напрямую Код: plaintext 1. 2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2007, 07:55:13 |
|
||
|
Excell разработка форм (нужны примеры)
|
|||
|---|---|---|---|
|
#18+
White Owl Хочешь использовать ColorIndex - ну определи свою палитру и все. Не хочешь - используй RGB напрямую Код: plaintext 1. 2. V_MiltoСделал набросок формы с выбором цвета из заготовок (40шт) Алгоритм - двойное нажатие на "что красить" и двойное нажатие на "чем красить" Private Sub КудаЦвет_DblClick(ByVal Cancel As MSForms.ReturnBoolean) NameControl = Me.ActiveControl.Name End Sub Private Sub ОразецЦвета1_DblClick(ByVal Cancel As MSForms.ReturnBoolean) If NameControl = "" Then Exit Sub Me.Controls(NameControl).BackColor = RGBFromColorIndex(Me.ОразецЦвета1) NameControl = "" End Sub двойное нажатие неудобно (можно конечно привыкнуть), одинарного (фокус) не обнаружил-:( Да и код у меня получается некрасивый - на каждую заготовку цвета надо повесить обработчик. Пытаюсь найти как приделать в форму штатный элемент выбора фона ячейки. Черт, неужели до него нельзя добраться? вот так попробуй ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2007, 09:44:28 |
|
||
|
Excell разработка форм (нужны примеры)
|
|||
|---|---|---|---|
|
#18+
Про собственую палитру в книге я знаю -:), читал -:) Именно поэтому надо делать соответствие цвета поля в форме и в ячейках таблиц (т.е брать из книги и переводить в RGB формы). С цветом (палитрой) задача ясна (ну или почти ясна). А вот с MSComDlg.CommonDialog пока борюсь. понял,что надо подключить в библиотеку с COMDLG32.OCX (References) на dlg.ShowColor ругается: ActiveX component can't create object or return reference to this object (Error 429) Похоже надо регистрировать библиотеку, но для меня это -:) тихий ужас. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2007, 10:30:26 |
|
||
|
Excell разработка форм (нужны примеры)
|
|||
|---|---|---|---|
|
#18+
Приложенный файл попробовал. Спасибо. Куда я вчера смотрел в ночь, не нашел события Click? Интересно, чтобы не писать обработчик на 20 - 40 образцов цвета, возможно искать общее событие (Click) в определенной области формы (где наборчик), определять на каком элементе фокус, брать из него данные? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2007, 12:13:11 |
|
||
|
Excell разработка форм (нужны примеры)
|
|||
|---|---|---|---|
|
#18+
V_MiltoИнтересно, чтобы не писать обработчик на 20 - 40 образцов цвета, возможно искать общее событие (Click) в определенной области формы (где наборчик), определять на каком элементе фокус, брать из него данные?не видел такого, при клике на контроле, у самой формы события не срабатывают, если они попадают на контрол ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2007, 12:39:47 |
|
||
|
Excell разработка форм (нужны примеры)
|
|||
|---|---|---|---|
|
#18+
V_MiltoПро собственую палитру в книге я знаю -:), читал -:) Именно поэтому надо делать соответствие цвета поля в форме и в ячейках таблиц (т.е брать из книги и переводить в RGB формы).Ничего не понимаю. Почему НАДО делать перевод? Задай ячейке цвет через .Color = RGB(r,g,b) и Эксель сам подгонит заданый цвет в ближайший цвет из палитры. V_MiltoА вот с MSComDlg.CommonDialog пока борюсь. ... Похоже надо регистрировать библиотеку, но для меня это -:) тихий ужас. А чего там сложного? Tools->References->Browse. Переключаешься на поиск ocx'ов. Находишь в %system32%/comdlg32.ocx. Все. Совершенно стандартный ocx для всех виндов начиная аж с 95'ых ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2007, 19:02:38 |
|
||
|
Excell разработка форм (нужны примеры)
|
|||
|---|---|---|---|
|
#18+
Почему НАДО делать перевод? Задай ячейке цвет через .Color = RGB(r,g,b) и Эксель сам подгонит заданый цвет в ближайший цвет из палитры. В том и дело, что подгонит. Эти грабли я уже прошел. Ставил через RGB оттенки зеленого на разные условия для данных, а в ячейках получал для разных (по условию) данных один цвет. Вот он и подогнал. Когда я беру набор из 56 цветов таких граблей нет. Поэтому в форму затаскиваю этот набор и пользуюсь (в набросках) только им. Благо Вы дали замечательную функцию перевода кода цвета в RGB Цвет поля в форме определяет каким цветом заливать ячейки таблицы по условию ,которое будет задано в форме. Сейчас это сделано на рабочем листе, что неудобно. Похоже я не четко выразился с библиотекой - "понял, что надо подключить в библиотеку с COMDLG32.OCX (References)" Так я ее там подключил. Без подключения была другая ошибка. сейчас на dlg.ShowColor ругается: ActiveX component can't create object or return reference to this object (Error 429) В инете искал про MSComDlg.CommonDialog, встретил фразы, что надо регистрировать в реестре и приводят код на полстраницы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.03.2007, 00:38:21 |
|
||
|
Excell разработка форм (нужны примеры)
|
|||
|---|---|---|---|
|
#18+
Для возврата цвета в выбранное поле формы использую имя контрола и по его имени присваиваю ему код цвета и заливаю. Не могу побороть поле на вкладке. Не получается зафиксировать его. Моя ошибка в примере (немного покурочил Ваш образец), там и описание последовательности и ошибки. Может взгляните? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.03.2007, 01:30:55 |
|
||
|
Excell разработка форм (нужны примеры)
|
|||
|---|---|---|---|
|
#18+
V_MiltoСтавил через RGB оттенки зеленого на разные условия для данных, а в ячейках получал для разных (по условию) данных один цвет. Вот он и подогнал. Когда я беру набор из 56 цветов таких граблей нет.Так можно ж переопределять палитру! Оставь первые шестнадцать цветов не тронутыми (для удобства), а остальные 40 правь как хочешь. Надо десять оттенков зеленого и десять оттенков красного? Ну так задай их в палитре и все. Потом можешь хоть опять с rgb работать, хоть с индексом. Код: plaintext 1. 2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.03.2007, 01:42:35 |
|
||
|
Excell разработка форм (нужны примеры)
|
|||
|---|---|---|---|
|
#18+
V_MiltoДля возврата цвета в выбранное поле формы использую имя контрола и по его имени присваиваю ему код цвета и заливаю. Не могу побороть поле на вкладке. Не получается зафиксировать его. Моя ошибка в примере (немного покурочил Ваш образец), там и описание последовательности и ошибки. Может взгляните?файл не читается. если экспортировал форму, то должно быть два файла. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.03.2007, 09:55:15 |
|
||
|
Excell разработка форм (нужны примеры)
|
|||
|---|---|---|---|
|
#18+
Где формировать палитру вопрос филосовский - можно воспользоваться инструментом Excel для изменения палитры книги и затем сохранять наборчики, а можно делать свой инструмент в форме для подбора палитры (благо я его нашел), сохранять их и навязывать книге. В любом случае есть грабли, если пользователь скопирует готовую (раскашенную) область в другую книгу получит туже елку, только с другими лампочками. Вчера, перед помещением на сайт специально взял файл формы (он один) в чисом Excel - он подгрузился и работал, а вот при переходе через сайт ломанулся. Для эксперимента я положил его в RaR вновь приложил. Большое спасибо Вам за внимание ко мне. Владимир. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.03.2007, 11:55:03 |
|
||
|
|

start [/forum/topic.php?fid=61&msg=34365180&tid=2181380]: |
0ms |
get settings: |
5ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
44ms |
get topic data: |
6ms |
get forum data: |
1ms |
get page messages: |
62ms |
get tp. blocked users: |
1ms |
| others: | 206ms |
| total: | 346ms |

| 0 / 0 |
