如何在Excel中自动将复选框居中在单元格中?
如果您曾尝试在Excel中插入多个复选框,则可能会遇到安排它们的难度。由于复选框的随机放置,安排复选框将是一个令人恼火的过程。但是使用VBA代码,我们可以轻松地自动居中复选框。本教程将帮助您了解如何在Excel中将复选框自动居中在单元格中。
在Excel中自动将复选框居中在单元格中
在此,我们首先将插入一个VBA模块,然后运行它以完成我们的任务。 让我们通过一个简单的过程来了解如何使用VBA应用程序在Excel中自动居中复选框。 我们的过程将包括活动X和窗体控件复选框。 活动X和表单控件都存在于开发人员选项下。
第1步
考虑一个带有多个Active X和表单控件复选框的Excel表,如下图所示。
现在右键单击工作表名称并选择查看代码以打开VBA应用程序,然后单击“插入”、“选择模块”,并在文本框中键入如下图所示的程序。
程序
Sub CenterCheckbox()
'Updated By nirmal
Dim xRg As Range
Dim chkBox As OLEObject
Dim chkFBox As CheckBox
On Error Resume Next
Application.ScreenUpdating = False
For Each chkBox In ActiveSheet.OLEObjects
If TypeName(chkBox.Object) = "CheckBox" Then
Set xRg = chkBox.TopLeftCell
chkBox.Width = xRg.Width * 2 / 3
chkBox.Height = xRg.Height
chkBox.Left = xRg.Left + (xRg.Width - chkBox.Width) / 2
chkBox.Top = xRg.Top + (xRg.Height - chkBox.Height) / 2
End If
Next
For Each chkFBox In ActiveSheet.CheckBoxes
Set xRg = chkFBox.TopLeftCell
chkFBox.Width = xRg.Width * 2 / 3
chkFBox.Height = xRg.Height
chkFBox.Left = xRg.Left + (xRg.Width - chkFBox.Width) / 2
chkFBox.Top = xRg.Top + (xRg.Height - chkFBox.Height) / 2
Next
Application.ScreenUpdating = True
End Sub
第2步
现在将工作表保存为启用宏的模板,并单击F5运行代码,工作表中的所有复选框都将排列在中心位置,如下图所示。
结论
在本教程中,我们使用了一个简单的示例来演示如何在Excel中自动将复选框居中在单元格中。