excel - 公式自动填充日期列适用于工作表但不适用于表单
问题描述
只要在下一列中输入内容,我就会使用公式自动填充日期。
=If(B9="","",IF(A9="",NOW(),B9))
完成此操作后,我将公式应用于单元格,直到第 48 行。现在,当在源中输入任何内容(ref 的屏幕截图)时,日期都会自动填充。像魅力一样工作,一切都很好。
由于使用上述公式,设计了一个用于输入数据减去日期的用户表单。应该工作,但它没有。日期为1/1/1900
. 稍微偏离了一个世纪+18 年,没什么大不了的,哈哈。
您可以在我用于数据输入的屏幕截图中看到的代码。最初我将工作表设置为 48 行。由于在使用用户表单时,数据“仅”在第 48 行之后输入,因此表格不断扩展。我已经多次删除了 48 之后的行,以至于它不再有趣了。
现在 VBA 代码以某种方式关闭或不完整,这使得整个事情变得有趣。我怎样才能解决这个问题?
PS 使用 Excel 2016
表单上添加数据按钮的代码。为此,数据不会从第 9 行 B 列开始填充。它从第 48 行开始。
Private Sub CommandButton1_Click()
Dim dcc As Long
Dim abc As Worksheet
Set abc = Worksheets("January2019")
dcc = Sheets("January2019").Range("A" & Rows.Count).End(xlUp).Row
With abc
.Cells(dcc + 1, 2).Value = Me.TextBox1.Value
.Cells(dcc + 1, 3).Value = Me.TextBox2.Value
.Cells(dcc + 1, 4).Value = Me.TextBox3.Value
.Cells(dcc + 1, 5).Value = Me.TextBox4.Value
.Cells(dcc + 1, 6).Value = Me.TextBox5.Value
End With
日期代码。
=If(B9="","",IF(A9="",NOW(),B9))
如果手动输入数据,日期自动工作,但是当使用用户表单时,日期输入为 1/1/1900 并且上面提到该条目是在第 48 行之后进行的。
我希望/针对此代码和用户表单的目标是:
在用户表单中没有日期选项。我在第 9 行添加了日期公式,然后将其拖到第 48 行。使用户表单减去日期字段,因为一旦输入数据,日期就会自动填充。并且,数据从第一个可用行 B9 开始填充。所以现在我迷路了,因为我不知道故障出在哪里或发生了什么,这使得这个添加随机行并且日期很远。
解决方案
您可以替换您的公式,只需使用您当前的用户表单来添加今天的日期。
Private Sub CommandButton1_Click()
Dim dcc As Long
Dim abc As Worksheet
Set abc = Worksheets("January2019")
dcc = Sheets("January2019").Range("A" & Rows.Count).End(xlUp).Row
With abc
.Cells(dcc + 1, 1).Value = Date
.Cells(dcc + 1, 2).Value = Me.TextBox1.Value
.Cells(dcc + 1, 3).Value = Me.TextBox2.Value
.Cells(dcc + 1, 4).Value = Me.TextBox3.Value
.Cells(dcc + 1, 5).Value = Me.TextBox4.Value
.Cells(dcc + 1, 6).Value = Me.TextBox5.Value
End With
您无需在用户表单中为要输入的日期添加空格。
...如何从用户表单连接下拉列表,以便在选择 2019 年 2 月时,名为 2019 年 2 月的工作表获取数据...
这应该有效:
Dim abc As Worksheet
Set abc = Worksheets(me.ComboBox1.Value)
推荐阅读
- nginx - 一个 Kubernetes pod 中的双 nginx
- angular - Angular CLI 页面生成器路由和延迟加载
- typescript - 当设置`noImplicitAny`时,打字稿忽略`typeRoots`
- interrupt - 使用 STM32L476RG 时出现 UART 溢出错误
- ios - 在 View Controller 中运行 React Native
- tomcat - 将 Apache Tomcat 控制台日志重定向到 Intellij(输出选项卡)
- highslide - HighSlide - 更改打开的弹出窗口的宽度
- mongodb - Mongo db 分组,按条件计数
- c++ - 如果 std::map 被清除,则确保内存被释放
- c# - 在不使用任务调度程序的情况下调度 Windows 服务