永发信息网

excel vba 如何实现批量选择

答案:3  悬赏:80  手机版
解决时间 2021-02-23 03:37
  • 提问者网友:十年饮冰
  • 2021-02-22 05:51
Sub SelectSheet()
Dim i As Long
Dim strPrnSheet As String
Dim arr(100)

For i= 1 To 100
If Worksheets("sheet1").Range("A" & CStr(i)).Value = 1 Then
arr(i) = Worksheets("sheet1").Range("B" & CStr(i)).Value

End If
Next
Worksheets().Select

End Sub

以上是程序,想要实现的功能是A列显示“是否选择的状态”,如果为1就要选择,B列写好工作表的名称,选择则把工作表名存入数组arr。
如下示意:
是否选择 工作表名
1 表1
0 表2
0 表3
1 表4
目前程序的arr()存储应该不是连续的,中间的arr(2),arr(3)是空值
目的是想要把表1和表4存入到数组中,形成arr(”表1“,”表2“)的形式,然后如何用worksheets.select批量选择,请问应该修改哪些语句?谢谢!
最佳答案
  • 五星知识达人网友:一把行者刀
  • 2021-02-22 07:05
亲,不用数组就可以啊,用这个命令 Sheets("表2").Select Add
全部回答
  • 1楼网友:未来江山和你
  • 2021-02-22 08:09
Sub SelectSheet()     Dim i As Long     Dim strPrnSheet As String     Dim arr()     Dim j As Long     ReDim arr(1 To Sheets.Count)     j = 1     For i = 1 To Sheets.Count         If Worksheets("sheet1").Range("A" & CStr(i)).Value = 1 Then             arr(j) = Worksheets("sheet1").Range("B" & CStr(i)).Value             j = j + 1         End If      Next     ReDim Preserve arr(1 To j - 1)     Sheets(arr()).Select End Sub
  • 2楼网友:洒脱疯子
  • 2021-02-22 07:44
如何用 excel vba 批量打印文件 有时候一个文件夹内有很多 excel 文件,几十个,上百个,如果一个个的打开, 然后再打印,显然重复劳动,效率低下。sub copy_data()dim wb as workbook, rng as range, sht as worksheetdim sht_name, thedatesht_name = "sheet1" '假设所有报表文件中的数据都在 sheet1set sht = activesheet '保存当前工作表对象fn = dir(thisworkbook.path & "\报表-*.xls",
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯