我正在尝试根据用户表单上文本框中的值自动填充连续的日期。但是,当代码运行时,只是将值复制到相邻的文本框中。(Ie C2的值为2-5月,C3的值为2-5月,依此类推)
为什么这不起作用?
datetxtbx.Value = Format(Now, "d-mmm")
Range("C2").Value = datetxtbx
Range("C2").Select
Selection.AutoFill Destination:=Range("C2:I2"), Type:=xlFillSeries
发布于 2017-06-03 09:23:28
您特别需要将看起来像日期的文本放入单元格,并期望它表现得像一个真正的数字日期。您也可以将abc放入一个单元格中,然后尝试将其串联填充到相邻的单元格中。你最终只会得到一堆abc。
下面将当前日期作为字符串传入textbox的值中。它将看起来像日期的文本转换为真正的日期,然后再将其放入C2。对于C2中的真实日期,如果您想要显示2-6月,则需要设置单元格的数字格式。在此之后,.AutoFill会将C2中的日期排序到指定的目标单元格中,并带上单元格的格式。
datetxtbx.Value = Format(Date, "d-mmm")
Range("C2").Value = CDate(datetxtbx)
Range("C2").NumberFormat = "d-mmm"
Range("C2").AutoFill Destination:=Range("C2:I2"), Type:=xlFillSeries
请注意,我已经更改了您的Now to Date。 date 是当前日期;Now是当前日期和时间。看起来你真的只想要当前的日期。
https://stackoverflow.com/questions/44339054
复制相似问题