Vba 从不同的工作簿中排序

Vba 从不同的工作簿中排序,vba,excel,Vba,Excel,我不是VBA宏程序员,但我只知道一点点。请帮我解决这个问题。 有两个工作簿,WorkBookA和WorkBookB 工作簿A: 工作簿B: “浏览”选项卡用于浏览工作簿A,以及其他与工作簿A类似但内容不同的工作簿。刷新按钮将更新检查按钮的“已检查”或“未检查”状态。不太清楚。。。如果只希望复制选中的数据,可以编写如下子项: Sub UpdateCheck() Dim e, i As Integer i = 1 If CheckBox1.Value Then

我不是VBA宏程序员,但我只知道一点点。请帮我解决这个问题。
有两个工作簿,WorkBookA和WorkBookB

工作簿A:

工作簿B:


“浏览”选项卡用于浏览工作簿A,以及其他与工作簿A类似但内容不同的工作簿。刷新按钮将更新检查按钮的“已检查”或“未检查”状态。

不太清楚。。。如果只希望复制选中的数据,可以编写如下子项:

Sub UpdateCheck()
    Dim e, i As Integer

    i = 1
    If CheckBox1.Value Then
        Range("J" & i).Value = CheckBox1.Caption
        i = i + 1
    End If
    If CheckBox2.Value Then
        Range("J" & i).Value = CheckBox2.Caption
        i = i + 1
    End If
    If CheckBox3.Value Then
        Range("J" & i).Value = CheckBox3.Caption
        i = i + 1
    End If
    If CheckBox4.Value Then
        Range("J" & i).Value = CheckBox4.Caption
        i = i + 1
    End If
    If CheckBox5.Value Then
        Range("J" & i).Value = CheckBox5.Caption
        i = i + 1
    End If
    If CheckBox6.Value Then
        Range("J" & i).Value = CheckBox6.Caption
        i = i + 1
    End If
    If CheckBox7.Value Then
        Range("J" & i).Value = CheckBox7.Caption
        i = i + 1
    End If
    If CheckBox8.Value Then
        Range("J" & i).Value = CheckBox8.Caption
        i = i + 1
    End If

    For e = i To 8
        Range("J" & e).Value = ""
    Next

End Sub
此示例位于同一页上,但您只需添加范围内的引用

Sheets(2).Range ...
您可以直接在Sheet2中的按钮中调用sub UpdateCheck。或者,您可以通过添加代码自动更新:

Private Sub CheckBox1_Click()
   UpdateCheck
End Sub
对于工作表中的每个复选框
如果您想从更大的数据中复制数据或在过滤器中使用,则需要稍微复杂一点…

我不明白浏览按钮的用法…

@L42谢谢。忘了链接。唯一缺少的是你尝试了什么,你在哪里遇到了困难?这就是它的工作原理。解决特定代码上的特定编程问题。我尝试了很多次,但都失败了。所以现在我想有一个新的开始。这些图像是简化的问题。我将尝试编译所有内容,稍后再返回。非常感谢你的意见。谢谢你的意见。真的很有帮助。希望我编辑的问题将清除浏览按钮的功能。