Excel 单元格中心的复选框

Excel checkbox in the center of cell

是否可以将复选框的框移动到单元格的中心?我正在创建复选框。复选框本身在左侧,文本在右侧。我正在删除文本,因此只剩下 "checkbox"。我希望单元格的整个区域为 "clickable"。因此,如果我调整字段大小,可点击区域会变小。有什么方法可以使复选框的大小与单元格大小保持一致,并将复选框移动到 middle/center?就像文本一样,有按钮可以将文本定位在左侧、中间和右侧?

非常简单。您必须获得要使复选框居中的单元格的 TopLeft 位置。所以...

Option Explicit

Sub CenterMyCheckbox()
    Dim myCheckbox As Shape
    Set myCheckbox = ActiveSheet.Shapes("Check Box 1")

    Dim cbCell As Range
    Set cbCell = ActiveSheet.Range("B3")

    '--- this just positions the checkbox even with the top, left of the cell
    myCheckbox.left = cbCell.left
    myCheckbox.top = cbCell.top

    '--- this centers the checkbox vertically
    Dim cellHeight As Double
    Dim cbHeight As Double
    cellHeight = cbCell.Height
    cbHeight = myCheckbox.Height
    myCheckbox.top = cbCell.top + (cellHeight / 2#) - (cbHeight / 2#)
End Sub