0

如何将选定的单选值从 VBA 表单插入 Excel 电子表格?单选值是指只有一种可能的选择。我正在努力在 VBA 中实现这一目标。


这是我的收音机值:

priority - 位于框架fr_Priority中的选项,两个可能的复选框选项:

  • priority_y - 如果用户选择此项,则将Yes插入单元格

  • priority_n - 如果用户选择此选项,则将No插入单元格

LectureStyle - 位于框架fr_LectureStyle中的选项,两个可能的复选框选项:

  • Lecturestyle_trad - 如果用户选择此选项,则将繁体插入到单元格中

  • Lecturestyle_sem - 如果用户选择此项,则研讨会将插入到单元格中

  • Lecturestyle_lab - 如果用户选择此选项,则Lab被插入到单元格中

  • Lecturestyle_any - 如果用户选择这个,那么Any被插入到单元格中

roomStructure - 位于框架fr_roomStruc中的选项,两个可能的复选框选项:

  • rs_Tiered - 如果用户选择此选项,则将分层插入单元格

  • rs_Flat - 如果用户选择这个,那么Flat被插入到单元格中


到目前为止,这是我的代码:

Private Sub btnSubmit_Click()
Dim ws As Worksheet, rng1 As Range
Set ws = Worksheets("main")

' Get last empty cell in column A
  Set rng1 = ws.Cells(Rows.Count, "a").End(xlUp)

' I'm strugging to insert the radio values inserted at this point, they 
' need to go into the cells specified below

' rng1.Offset(1, 10) = priority
' rng1.Offset(1, 11) = lectureStyle
' rng1.Offset(1, 12) = roomStructure

End Sub

非常感谢你的帮忙!

4

1 回答 1

1

对我来说,您似乎需要对单选框的值进行一些验证,这是您可以做到的一种方法

Private Sub btnSubmit_Click()

    Dim ws As Worksheet, rng1 As Range
    Set ws = Worksheets("main")

    'Get last empty cell in column A
    Set rng1 = ws.Cells(Rows.Count, "a").End(xlUp)

    ' I'm strugging to insert the radio values inserted at this point, they
    ' need to go into the cells specified below

    rng1.Offset(1, 10) = GetPriority

End Sub
Private Function GetPriority() As String

    Dim priority As String
    If Me.priority_y.Value = True Then
        priority = "Yes"
    ElseIf Me.priority_n.Value = True Then
        priority = "No"
    Else
        priority = "N/A"
    End If
    GetPriority = priority

End Function

于 2012-10-30T12:30:04.400 回答