Как определить в каком окне находится курсор

Программирование на Visual Basic for Applications
yura613
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 101
Зарегистрирован: 12.06.2006 (Пн) 15:49
Откуда: Минск

Как определить в каком окне находится курсор

Сообщение yura613 » 21.07.2006 (Пт) 17:25

Помогите. Я работаю в Excel, есть userform с двумя текстовыми окнами ("Дата ввода", "Дата выбытия") и календарь. Нужно чтобы вставлялась дата из календаря в одно из текстовых окон. Т.е. если курсор находится в тектовом окне №1 то дата вставляется в это окно или курсор в тектосовом окне №2 соответственно и дата в этом же.

Другие варианты решения тоже интересуют :lol:

fishh
Обычный пользователь
Обычный пользователь
 
Сообщения: 81
Зарегистрирован: 21.10.2005 (Пт) 9:50

Сообщение fishh » 24.07.2006 (Пн) 14:14

Код: Выделить всё
Private Sub CommandButton1_Click()
If TextBox1.Tag = 1 Then
    TextBox1 = Date
Else
    TextBox2 = Date
End If
End Sub

Private Sub TextBox1_MouseUp(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
TextBox1.Tag = "1"
TextBox2.Tag = "0"
End Sub

Private Sub TextBox2_MouseUp(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
TextBox2.Tag = "1"
TextBox1.Tag = "0"
End Sub

yura613
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 101
Зарегистрирован: 12.06.2006 (Пн) 15:49
Откуда: Минск

Сообщение yura613 » 24.07.2006 (Пн) 15:37

fishh Спасибо, я почти так же сделал, только я вместо .Tag переменную задал
Код: Выделить всё
Option Explicit
Dim M As Integer

Private Sub Calendar1_Click()
Select Case M
        Case 1
    тстНачало.Text = Calendar1.Value
        Case 2
    тстОкончание.Text = Calendar1.Value
    тстОкончание.Tag
End Select
End Sub

Private Sub тстНачало_Enter()
M = 1
End Sub

Private Sub тстОкончание_Enter()
M = 2
End Sub

yura613
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 101
Зарегистрирован: 12.06.2006 (Пн) 15:49
Откуда: Минск

Сообщение yura613 » 24.07.2006 (Пн) 15:41

Еще для решения своей задачи я нашел такой элемент ActiveX как DTPicker. Очень удобно.


Вернуться в VBA

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 44

    TopList