首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >复选框修改

复选框修改
EN

Stack Overflow用户
提问于 2015-06-16 19:54:07
回答 2查看 46关注 0票数 0

我有一个重要的问题没有找到答案,是否可以增加复选框的宽度和高度,是否可以将复选框导出到另一个工作表中,并将选中的值导出到另一个工作表?

是否可以创建多个复选框,比如500或1000行?

EN

回答 2

Stack Overflow用户

发布于 2015-06-16 20:35:55

对于您的第二个 question..............to,请按行填充多个CheckBoxes:

代码语言:javascript
运行
复制
Sub BoxMaker()
    For i = 1 To 4
        ActiveSheet.CheckBoxes.Add(358.5, 50, 100, 60).Select
    Next

    Dim s As Shape
    i = 2

    For Each s In ActiveSheet.Shapes
        s.Top = Cells(i, 1).Top
        s.Height = Cells(i, 1).Height
        s.Left = Cells(i, 1).Left
        s.Width = Cells(i, 1).Width
        i = i + 1
    Next
End Sub

对于您的第一个问题,只需更新.Height.Width即可

票数 1
EN

Stack Overflow用户

发布于 2015-06-17 18:24:30

关于导出,将复选框的值链接到工作表中的任何单元格,然后导出这些单元格值...这里有很多关于如何导出单元格数据的描述。

要将复选框链接到单元格,请使用

代码语言:javascript
运行
复制
Sub test()
Dim S As Shape

    Set S = ActiveSheet.Shapes(1)
    S.ControlFormat.LinkedCell = "B1"

End Sub

要将此代码添加到Gary的学生代码中...

代码语言:javascript
运行
复制
Sub BoxMaker()
    For i = 1 To 4
        ActiveSheet.CheckBoxes.Add(358.5, 50, 100, 60).Select
    Next

    Dim s As Shape
    i = 2

    For Each s In ActiveSheet.Shapes
        s.Top = Cells(i, 1).Top
        s.Height = Cells(i, 1).Height
        s.Left = Cells(i, 1).Left
        s.Width = Cells(i, 1).Width

        ' add Cell Link
        ' 2nd parameter of Cells(i, 2).Address sets column of linked cell ... in this case column B
        s.ControlFormat.LinkedCell = Cells(i, 2).Address

        i = i + 1
    Next
End Sub

第一次单击复选框后,将填充字段。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30866826

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档