Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/delphi/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Excel VBA循环工作表_Excel_Vba_Loops - Fatal编程技术网

Excel VBA循环工作表

Excel VBA循环工作表,excel,vba,loops,Excel,Vba,Loops,我是新手。我正在努力编写一个脚本,将多个(~250)工作表中的特定单元格中的数据提取到主工作表中。例子: 我希望脚本从名为Cand4、Cand5、Cand6等工作表中的单元格B3:C3、E4、B15:C20中提取数据 我想我已经让循环部分正常工作了,但是我遗漏了一些其他的东西。救命啊! 有人猜剧本会是什么样子吗?谢谢 我会这样做的 创建一个新的工作表(让我们将其称为“结束”) 在此图纸中,创建要粘贴其数据的所有图纸名称的命名范围(ctrl-F3)。我们称之为“床单列表” 使用代码复制粘贴数据(如

我是新手。我正在努力编写一个脚本,将多个(~250)工作表中的特定单元格中的数据提取到主工作表中。例子: 我希望脚本从名为Cand4、Cand5、Cand6等工作表中的单元格B3:C3、E4、B15:C20中提取数据

我想我已经让循环部分正常工作了,但是我遗漏了一些其他的东西。救命啊!
有人猜剧本会是什么样子吗?谢谢

我会这样做的

  • 创建一个新的工作表(让我们将其称为“结束”)
  • 在此图纸中,创建要粘贴其数据的所有图纸名称的命名范围(ctrl-F3)。我们称之为“床单列表”
  • 使用代码复制粘贴数据(如下所示)
  • VBA代码:

    Option Explicit
    
    Sub Copy_Paste_Sheets()
    
    Dim i
    Dim Sheet_List As Range
    Dim Sheet_List_String As String
    
    For i = 1 To 250 'number of sheets
    
    Set Sheet_List = Range("Sheets_List")
    Sheet_List_String = Sheet_List.Cells(i, 1)
    
    'Range 1
    Sheets(Sheet_List_String).Range("B3:C3").Copy Sheets("Master").Cells(i,1) 'Destination 1 (i=row, 1=column)
    Application.CutCopyMode = False
    
    'Range 2
    Sheets(Sheet_List_String).Range("E4").Copy Sheets("Master").Cells(i,1) 'Destination 2 (i=row, 1=column)
    Application.CutCopyMode = False
    
    'Range 3
    Sheets(Sheet_List_String).Range("B15:C20").Copy Sheets("Master").Cells(i,1) 'Destination 3 (i=row, 1=column)
    Application.CutCopyMode = False
    
    Next i
    
    End Sub
    

    请用循环部分回答您的问题,这样可能会更清楚您还缺少什么。如果您发布了您已有的代码,我们将更容易帮助您。我已经做了更改。您可以将“i”和“1”更改为所需的目的地。是否不能使用代码中的所有select?例如,这一行将处理代码中的7行<代码>工作表(工作表列表字符串)。范围(“B3:C3”)。复制工作表(“主”)。单元格(i,1)