Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

Вернуться   Форум программистов > Microsoft Office и VBA > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Ответ
 
Опции темы
Старый 09.12.2011, 02:09   #1
Rise13
Новичок
 
Регистрация: 09.12.2011
Сообщений: 1
Репутация: 10
По умолчанию Икак правильно заменить в ComboBox Change на MouseDown

На первом листе у нас расположены столбцы с фамилиями, именами и отчествами, а в столбце пол нужно сделать поле со списком чтобы выбирать пол.

Изменить Change на MouseDown
Когда меняю и выбираю в поле другой пол, Эксель вылетает.как правильно MouseDown сделать?

ThisWorkbook –

'Модуль ThisWorkbook
Private Sub Workbook_Open()
'загружаем список
Worksheets("Сотрудники").ComboBox1. Clear
Worksheets("Сотрудники").ComboBox1. AddItem _
Worksheets("Пол").Cells(2, 1).Text
Worksheets("Сотрудники").ComboBox1. AddItem _
Worksheets("Пол").Cells(3, 1).Text
End Sub

Лист1(Сотрудники) –
'Лист с именем "Сотрудники"
Dim Y As Long

Private Sub ComboBox1_Change()
If ComboBox1.Visible = False Or Y = 0 Or ComboBox1.Text = "" Then
Exit Sub
End If
If ComboBox1.Text = Worksheets("Пол").Cells(2, 1).Text Then
Cells(Y, 4).Value = "=Пол!$A$2"
Else
Cells(Y, 4).Value = "=Пол!$A$3"
End If
ComboBox1.Text = ""
Cells(Y, 4).Select
End Sub


Private Sub Worksheet_Activate()
ComboBox1.Visible = True
End Sub

Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)
'устанавливаем окно со списком на текущую строку
With Target
Y = .Row
ComboBox1.Visible = False
ComboBox1.Width = 15
If .Column = 4 Then
ComboBox1.Left = Cells(Y, 4).Left - ComboBox1.Width
Else
ComboBox1.Left = Cells(Y, 4).Left
End If
ComboBox1.Top = Cells(Y, 4).Top
ComboBox1.Height = Cells(Y, 4).Height
End With
ComboBox1.Visible = True
End Sub

Лист2(Пол) –
'Лист с именем "Пол"

Private Sub Worksheet_Activate()
Worksheets("Сотрудники").ComboBox1. Visible = False
End Sub


Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)
'загружаем список
Worksheets("Сотрудники").ComboBox1. Clear
Worksheets("Сотрудники").ComboBox1. AddItem Cells(2, 1).Text
Worksheets("Сотрудники").ComboBox1. AddItem Cells(3, 1).Text
End Sub
Rise13 вне форума   Ответить с цитированием
Старый 09.12.2011, 14:31   #2
slan
Форумчанин
 
Аватар для slan
 
Регистрация: 30.01.2008
Сообщений: 314
Репутация: 125
По умолчанию

а у вас интересно сделано - элементы комбо выбора пола берутся из ячеек..

типа в любой момент вместо обычных жен и муж можно свои подставить..
slan вне форума   Ответить с цитированием
Старый 09.12.2011, 14:35   #3
slan
Форумчанин
 
Аватар для slan
 
Регистрация: 30.01.2008
Сообщений: 314
Репутация: 125
По умолчанию

ps приложили бы файл что ли..
slan вне форума   Ответить с цитированием
Старый 09.12.2011, 14:36   #4
IgorGO
МегаМодератор
СуперМодератор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Адрес: УКРАЇНА, Київ
Сообщений: 8,972
Репутация: 1710

icq: 7934250
skype: i2x0,5
По умолчанию

отметьте столбец ПОЛ, проверка данных, список, впишите муж.;жен., жмите Ok. проверяйте.
__________________
41001804815208 - Яндекс-деньги благодарности за удачные советы и решения можно отправлять прямо сюда)
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума   Ответить с цитированием
Ответ

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как правильно заменить строку WennY Общие вопросы Delphi 5 05.09.2011 09:16
TWebBrowser блокировка MouseDown Crystallon Общие вопросы Delphi 2 30.04.2011 02:25
Описать процедуру change (x, y, z) qwerty777 Паскаль 2 30.05.2010 22:50
Как правильно использовать ComboBox Pirotexnik Общие вопросы Delphi 6 27.03.2009 00:30
MouseDown: обращение к правой кнопке мыши ZhekON Общие вопросы Delphi 2 11.05.2007 19:17


09:10.


Powered by vBulletin® Version 3.8.8 Beta 2
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.

RusProfile.ru


Справочник российских юридических лиц и организаций.
Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru