activex 复选框循环 - 选择链接的单元格偏移量然后复制行

activex checkbox loop- selects linked cell offset then copies row

我有大约 50 个复选框,它们都链接到它们所在的单元格(例如,A2 中的复选框链接到单元格 A2)。我有一定程度的循环工作。 我遇到的问题是选择链接单元格并偏移 1 个单元格,然后复制留下链接单元格的行。 然后粘贴到不同的工作表到下一个空白行。

Sub CheckboxLoop()
Dim objx As OLEObject
Dim lastrow As Range

Application.ScreenUpdating = False

'Loop through Checkboxes
With ActiveSheet
    For Each objx In .OLEObjects
        If TypeName(objx.Object) = "CheckBox" Then
            If objx.Object.Value = True Then
                If objx.Object.LinkedCell = True Then   'runtime error 438 object doesn't support this property or method
                    objx.Object.LinkedCell.Offset(0, 1).Select
                    Range(Cells(Selection.Row, 1), Cells(Selection.Row, 3)).Select
                    Selection.Copy
                    Worksheet("Data").Select
                    Worksheet("Data").Range("A1").End(xlDown).Offset(1, 0).Select
                    Selection.PasteSpecial (xlPasteValues)
                    Application.CutCopyMode = False

                End If

            ElseIf objx.Object.Value = False Then


            ElseIf IsNull(objx.Object.Value) Then


            End If
        End If
    Next
End With
Application.ScreenUpdating = True
End Sub

当我单步执行宏时一切正常,直到我到达第 3 个如果我收到运行时错误 438 对象不支持此 属性 或方法

任何帮助都非常感谢

LinkedCell 属性 是 String 类型,stores/retrieves 链接到组合框的单元格地址

所以你想使用

         If objx.LinkedCell <>"" Then 
             .Range(objx.LinkedCell).Offset(0, 1).Select
             '... rest of your code

         End If