vba - 当 VBA 中的组合框更改时,在多个文本框中添加月份名称
问题描述
我有一个带有月份名称列表和十二个文本框的组合框。
我想编写允许我在组合框中选择月份名称时添加月份名称的代码。
当您在组合框中选择一月时,textbox1 的值为一月,textbox2 的值为二月,依此类推...
我怎样才能完成这项任务?
解决方案
假设:组合框中的月份从一月开始按顺序排列(即一月索引 0,二月索引 1)。两个答案都使用 2000 年的通用日期并选择了月份,并在其中添加了一个月.. 将在 12 月之后循环回到 1 月。
此代码还假定文本框在表单上是有序的。
Private Sub cboMonth_Change2()
Dim TempDate As Date
TempDate = "2000-" & cboMonth.ListIndex + 1 & "-01"
Dim oControl As Control
For Each oControl In UserForm1.Controls
If TypeName(oControl) = "TextBox" Then
oControl.Text = Format(TempDate, "MMMM")
TempDate = DateAdd("M", 1, TempDate)
End If
Next
End Sub
这是一个稍微手动的过程,但您可以指定哪个文本框得到什么。
Private Sub cboMonth_Change()
Dim TempDate As Date
TempDate = "2000-" & cboMonth.ListIndex + 1 & "-01"
TextBox1.Text = Format(DateAdd("M", 0, TempDate), "MMMM")
TextBox2.Text = Format(DateAdd("M", 1, TempDate), "MMMM")
TextBox3.Text = Format(DateAdd("M", 2, TempDate), "MMMM")
...
End Sub
推荐阅读
- javascript - 为什么我的网页没有运行 React.js 或带有 CDN 的 JSX?
- r - 如何使用 purrr 添加多列?
- javascript - vuejs如何实时获取数据
- c - 了解 CS50 中的“Pset 2: Caesar”代码
- angular - 实现recaptcha的多个表单不显示徽章
- android - 嗨,我正在尝试开发一个以 firebase 作为后端的颤振应用程序。将 firebase Crashlytics 与我的应用程序连接时遇到问题
- svn - Unix 颠覆分支命令返回错误
- amazon-web-services - 将 lambda 输出转储到 csv 并将其作为附件通过电子邮件发送
- python - 如何从列表理解中返回字符串
- python - 如何按索引访问 pytorch 模块中的图层?