Userform флажок вопросы - PullRequest
       16

Userform флажок вопросы

0 голосов
/ 13 января 2020

Итак, я использовал предложенную кодировку, и она не работала. Поэтому я немного отредактировал и уточнил, надеясь, что, возможно, мой документ просто требователен, но это тоже не работает. Весь мой код для этого раздела ниже. Может кто-нибудь помочь мне понять, почему это не работает?

Строки ниже начинаются с перемещения полей текстового поля в мою базу данных, а затем моя база данных выполняет некоторые вычисления. Эти вычисления возвращают либо «Т», либо «F». Моя пользовательская форма затем извлекает эту информацию, и если поля имеют значение «T», то флажки в пользовательской форме проверяются в режиме реального времени. Я пытаюсь отключить кодирование, чтобы флажок не имел буквы "T" и не был отмечен, поэтому он не может быть помечен в пользовательской форме. Мне, однако, нужно, чтобы пользователь мог убрать галочки с флажков, которые имеют букву «Т» и отмечены флажком.

Мой код, который у меня есть, находится ниже, и он не отключает флажки, которые не отмечены и за ними не стоит буква "T".

' When time is entered, time transfers immediately to spreadsheet datafield and sends back to userform which meals are allowed.

Dim TargetRow As Integer
TargetRow = Sheets("Codes").Range("D43").Value + 1

With Sheets("Travel Expense Voucher").Range("Data_Start").Offset(TargetRow, 26)
 .Value = TimeValue(txtArrivalTime)
 .NumberFormat = "hh:mm" 'arrival time
End With

'''MEALS ALLOWED PER SPREADSHEET TO USERFORM'''
With Me.chkMorning
    If Sheets("Travel Expense Voucher").Range("Data_Start").Offset(TargetRow, 28).Value = "T" Then
        .Value = Checked
    Else
        .Value = Unchecked
        .Enabled = False
    End If
End With

With Me.chkMidday
    If Sheets("Travel Expense Voucher").Range("Data_Start").Offset(TargetRow, 30).Value = "T" Then
        .Value = Checked
    Else
        .Value = Unchecked
        .Enabled = False
    End If
End With

With Me.chkEvening
    If Sheets("Travel Expense Voucher").Range("Data_Start").Offset(TargetRow, 32).Value = "T" Then
        .Value = Checked
    Else
        .Value = Unchecked
        .Enabled = False
    End If
End With```

1 Ответ

0 голосов
/ 13 января 2020

Снимите флажки, которые пользователь не может использовать:

If Sheets("Travel Expense Voucher").Range("Data_Start").Offset(TargetRow, 28).Value = "T" Then
    frmUserTravel.chkMorning = Checked
Else
    frmUserTravel.chkMorning = Unchecked
    frmUserTravel.chkMorning.Enabled = False
End If
If Sheets("Travel Expense Voucher").Range("Data_Start").Offset(TargetRow, 30).Value = "T" Then
    frmUserTravel.chkMidday = Checked

Else
    frmUserTravel.chkMidday = Unchecked
    frmUserTravel.chkMidday.Enabled = False
End If

If Sheets("Travel Expense Voucher").Range("Data_Start").Offset(TargetRow, 32).Value = "T" Then
    frmUserTravel.chkEvening = Checked
Else
    frmUserTravel.chkEvening = Unchecked
    frmUserTravel.chkEvening.Enabled = False
End If
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...