Страницы: 1
RSS
Закрепить дату в UserForm
 
Здравствуйте, профи.
Прошу помощи:
Как в UserForm на постоянно закрепить дату (1.01.2013) в TextBox (txt_Дата_2,txt_Дата_4,txt_Дата_6,txt_Дата_8)
Спасибо за помощь.
 
Если на постоянно - в режиме конструктора ввести эту дату в текстбокс. Можно еще и заблокировать его, чтобы не сменили.
 
Там текстбоксы на форме. Сделайте вот так.
Что бы не было возможности менять значение, выставьте свойство Enabled =False.
Эти же результаты можно получить через установку необходимых значений при инициализации формы.
 
Спасибо,RAN
То, что и нужно :)
Сделал. Но при етом вопрос: Как сделать чтоб UserForm в TextBox (txt_Дата_3,txt_Дата_5,txt_Дата_7,txt_Дата_9) закрепить сегодняшнюю  дату (now в TextBox не подходит).
Спасибо за помощь.
 
Спасибо Sergei_A.
Вы мне опять помогли :) :)
 
Код
TextBox2 = Format(Date, "dd.mm.yyyy")
 
Никак не могу вставить данный код
Код
 txt_Дата_3 = Format(Date, "dd.mm.yyyy"

в мой макрос, чтоб он автоматически выполнялся в TextBox (txt_Дата_3,txt_Дата_5,txt_Дата_7,txt_Дата_9).
Куда можно данный код вставить в макрос:
Код
Sub vsii_1(s)
    Dim LastRow As Long
    Dim SummaStrok As Double
    Dim i As Long
    LastRow = Worksheets("ФІЛІЯ ВАСИЛЬ І ПЕТРО").Cells(Rows.Count, 1).End(xlUp).Row
    With UserForm_1
        If s = "СУМА" Then
            .TextBox2 = Application.Sum([B:B])
            For i = 4 To LastRow
                If CDate(Cells(i, 1).Value) >= CDate(.txt_Дата_2) And CDate(Cells(i, 1).Value) <= CDate(.txt_Дата_3) Then
                    SummaStrok = SummaStrok + CDbl(Cells(i, 2).Value)
                End If
            Next i
            .txt_Дата_3 = Format(Date, "dd.mm.yyyy")
            .TextBox2 = SummaStrok: SummaStrok = 0
        Else
           For i = 4 To LastRow
 If CDate(Cells(i, 1).Value) >= CDate(.txt_Дата_2) And CDate(Cells(i, 1).Value) <= CDate(.txt_Дата_3) Then
SummaStrok = SummaStrok + CDbl(Cells(i, 2).Value)
        End If
        Next i
        End If
        If UserForm_1.TextBox2.Value >= 0 Then
        If UserForm_1.TextBox2.Value >= 0 Then UserForm_1.TextBox4.Value = Val(UserForm_1.TextBox2.Value) - Val(UserForm_1.TextBox3.Value)
        End If
    End With
End Sub


Спасибо заранее.
Изменено: Бонифаций - 05.02.2013 19:59:21
 
Откройте код Вашей UserForm_1, и в конце добавьте это

Код
Private Sub UserForm_Initialize()
dat_e = Format(Date, "dd.mm.yyyy")
With Me
    .txt_Дата_3.Text = dat_e
    '.txt_Дата_3.Enabled = False
    .txt_Дата_5.Text = dat_e
    '.txt_Дата_5.Enabled = False
    .txt_Дата_7.Text = dat_e
    '.txt_Дата_7.Enabled = False
    .txt_Дата_9.Text = dat_e
    '.txt_Дата_9.Enabled = False
End With

Если хотите эти текстбоксы тоже закрыть от ввода, то раскомментируйте строки в коде.
 
Супееееееееееееррррррр!!!!!! Спасибо.
 
Пожалуйста  :)
 
Заблокировать лучше не
Код
Enabled = False

а
Код
Locked = True
 
RAN,  Locked не проходит, там в текстбоксах на MouseDown прописан вызов календаря.
 
Вопрос если надо заблокировать - на кой там MouseDown? А если нужен MouseDown - зачем блокировать?  :)
Enabled  работать будет, но цвет текста сменит.
 
:)  Видимо концепция еще в процессе
Страницы: 1
Читают тему
Наверх