Excel VBA;从不同位置的多个工作簿中复制特定工作表

时间:2017-04-19 14:14:05

标签: excel vba excel-vba

我可以从一个目录中的6个单独的工作簿中复制一个名为“Alpha”的工作表,但我不知道如何让代码循环以获取其他文件中的工作表。名称略有不同的地点。

我以为我可以使用:

IF sheetname LIKE“ Alpha ”然后  sheetToCopy =使其成为我要复制的工作表的名称 结束如果

虽然它没有将工作表的名称传递给变量。我认为这是因为我已经使用文件名和数组循环遍历数组。号。

下面的代码适用于6张Alpha表,但它不会选择“Y Alpha”或“Alpha XZ”。

非常感谢任何帮助!

我使用以下代码:

int exist[26] = { 0 };

for(int i=0 ; i<x ; i++) {
   if (exist[a[i] - 'a'] == 0) {
      exist[a[i] - 'a']++;
      printf("%c ", a[i]);
   }
}

1 个答案:

答案 0 :(得分:0)

从我所看到的,你只想继续重新打开GetOpenFile对话框,直到用户取消(即不想再带来文件)。

Option Explicit

Sub AlphaTest()

    Dim FName As Variant
    'bunch of code here

    FName = Application.GetOpenFilename(filefilter:="Excel Files (*.xl*), *.xl*", _
                                    MultiSelect:=True)
    Do While FName <> "False"

        If IsArray(FName) Then
            'lots of code here
        End If

        FName = Application.GetOpenFilename(filefilter:="Excel Files (*.xl*), *.xl*", _
                                        MultiSelect:=True)
    Loop

ExitTheSub:
    'bunch of code here
End Sub