移至下一个空行以从Userform填充单元格
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了移至下一个空行以从Userform填充单元格相关的知识,希望对你有一定的参考价值。
我目前正在创建一个使用VBA的系统,让学生在大学中选择他们的课程。我为学生创建了一个用户表单“AMForm”,每个班级都有相邻的选项按钮,因此如果他们想要在班级注册,可以选择“是”或“否”。 “机械工程”旁边有“是”或“否”选项按钮。
一旦他们提交表格 - 我希望能够在电子表格'AMChoices'上记录他们的选择。这个电子表格在上面的标题中有每个类,所以我想用'x'填充单元格,如果它已被选中,例如如果选择“机械工程”选项按钮,则会在此单元格下方填充“x”。
我正在为多个用户执行此操作,因此我希望它能够填充单元格,然后当下一个用户记录他们的选择时,他们的选择将填充到下一个空行中。
请看下面我的代码。
Set CurrentCell = Range("B2").End(xlDown).Offset(1, 0).Select
If Me.optAMIB1 Then
Total = Total + 20
Worksheets("AMChoices").Range("CurrentCell").Value = "X"
End If
答案
首先,没有必要Select
你想要添加值"X"
的单元格。
其次,在设置CurrentCell
范围对象后,可以直接将其与CurrentCell.Value2 = "X"
一起使用。
尝试下面的代码,代码中的更多解释:
Dim AMChoiceSht As Worksheet
Dim CurrentCell As Range
Dim LastRow As Long
' set the worksheet object
Set AMChoiceSht = ThisWorkbook.Worksheets("AMChoices")
With AMChoiceSht
LastRow = .Cells(.Rows.Count, "B").End(xlUp).Row ' find last row in column B
Set CurrentCell = .Range("B" & LastRow + 1) ' set the range of next empty row
End With
If Me.optAMIB1 Then
Total = Total + 20
CurrentCell.Value2 = "X"
End If
以上是关于移至下一个空行以从Userform填充单元格的主要内容,如果未能解决你的问题,请参考以下文章
Excel:如何创建快捷方式/浮动按钮以从工作表中的任何位置填充特定单元格?
UserForm 将 DatePicker 添加到 Monthview 并用数据填充 ActiveCell