从服务器合并文件与宏

时间:2017-11-13 09:15:42

标签: excel vba excel-vba csv

我有合并.csv文件的宏。 当我从桌面放置的文件夹中合并文件时它正在工作, 但是,当我尝试合并放在服务器上的文件时,宏不起作用。

任何想法为什么? 我可以用.csv文件显示选择文件夹的那一部分:

    Dim fileCount As Long

' Open the file dialog
With Application.FileDialog(msoFileDialogOpen)
    .AllowMultiSelect = True
    .Filters.Add "CSV files", "*.csv"
    .Show

    For fileCount = 1 To .SelectedItems.Count
        Debug.Print .SelectedItems(fileCount)
    Next fileCount

End With

我正在创建.txt文件以收集所有数据

'Create the bat file
        Open BatFileName For Output As #1
        Print #1, "Copy " & Chr(34) & foldername & "*.csv" _
                & Chr(34) & " " & TXTFileName
        Close #1

        'Run the Bat file to collect all data from the CSV files into a TXT file
        ShellAndWait BatFileName, 0
        If Dir(TXTFileName) = "" Then
            MsgBox "There are no csv files in this folder"
            Kill BatFileName
            Exit Sub
        End If

桌面上的文件与服务器上的文件有什么不同?

我在从服务器合并文件时收到消息:此文件夹中没有csv文件 但我确信有.csv文件。

由于

1 个答案:

答案 0 :(得分:1)

很难说出什么不起作用'实际意味着。我猜你没有安装Excel,但在发布之前你应该知道这是否正确,所以我们可以排除这个选项。更有可能的是,它不在基于Web的环境中工作。 VBA不适用于任何Web环境,如Web服务器,网站,SharePoint等。此外,请确保通过QEMC授予系统访问服务器中的宏的权限(系统,安装程序,QlikView服务器,展开然后单击右侧窗格中的“Seucrity”选项卡"允许在服务器上执行不安全的宏"以及"允许在服务器上执行宏"勾选)和在宏编辑器中,(Ctrl + M,左下角)下降)。最后,如果他们正在创建一些文件系统对象(例如excel文件),请确保使用IE插件。