Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/24.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
Vba 运行时错误5-过程调用或参数无效_Vba_Excel_Runtime Error - Fatal编程技术网

Vba 运行时错误5-过程调用或参数无效

Vba 运行时错误5-过程调用或参数无效,vba,excel,runtime-error,Vba,Excel,Runtime Error,我需要这个宏的帮助。每次运行它,我都会得到下面的错误。我认为这是一个简单的宏,我可以让我的团队中的任何人使用它,使它比他们每次运行报表时手动创建此数据透视表所需的时间更短。但是,它不起作用。请参阅下面的错误并提出建议。我鼓起勇气,将错误斜体化 Sub LEDOTTR() ' ' LEDOTTR Macro ' ' Range("A87").Select Range(Selection, ActiveCell.SpecialCells(xlLastCell)).Select

我需要这个宏的帮助。每次运行它,我都会得到下面的错误。我认为这是一个简单的宏,我可以让我的团队中的任何人使用它,使它比他们每次运行报表时手动创建此数据透视表所需的时间更短。但是,它不起作用。请参阅下面的错误并提出建议。我鼓起勇气,将错误斜体化

Sub LEDOTTR()
'
' LEDOTTR Macro
'

'
    Range("A87").Select
    Range(Selection, ActiveCell.SpecialCells(xlLastCell)).Select
    ***ActiveWorkbook.PivotCaches.Create(SourceType:=xlDatabase, SourceData:= _
        "Sheet1!R87C1:R8214C25", Version:=xlPivotTableVersion14).CreatePivotTable _
        TableDestination:="LED OTTR!R1C1", TableName:="PivotTable6", _
        DefaultVersion:=xlPivotTableVersion14***
    Sheets("LED OTTR").Select
    Cells(1, 1).Select
    With ActiveSheet.PivotTables("PivotTable6").PivotFields("LED")
        .Orientation = xlPageField
        .Position = 1
    End With
    With ActiveSheet.PivotTables("PivotTable6").PivotFields("Hierarchy name")
        .Orientation = xlRowField
        .Position = 1
    End With
    ActiveSheet.PivotTables("PivotTable6").PivotFields("LED").CurrentPage = "(All)"
    With ActiveSheet.PivotTables("PivotTable6").PivotFields("LED")
        .PivotItems("LED Marine").Visible = False
        .PivotItems("LL48 Linear LED").Visible = False
        .PivotItems("Other").Visible = False
    End With
    ActiveSheet.PivotTables("PivotTable6").PivotFields("LED"). _
        EnableMultiplePageItems = True
    ActiveSheet.PivotTables("PivotTable6").AddDataField ActiveSheet.PivotTables( _
        "PivotTable6").PivotFields("   Late " & Chr(10) & "Indicator"), "Sum of    Late " & Chr(10) & "Indicator", _
        xlSum
    ActiveSheet.PivotTables("PivotTable6").AddDataField ActiveSheet.PivotTables( _
        "PivotTable6").PivotFields("Early /Ontime" & Chr(10) & "   Indicator"), _
        "Sum of Early /Ontime" & Chr(10) & "   Indicator", xlSum
End Sub


你问题的答案是

您在
TableDestination:=“LED Otter!R1C1”
中的工作表名称需要用单引号括起来才能正常工作
TableDestination:=“LED Otter!R1C1”


如果在重新运行代码之前不删除此数据透视表,则重复的名称也会出现问题。

在我的情况下,问题与Windows中的区域设置有关。我从internet下载了一个(受保护的)xlsm文件,打开时总是出现“运行时错误5-过程调用或参数无效”错误。另一个答案向我暗示这可能与语言设置有关。文件中的脚本显然是用德语编写的,而我的Windows设置为英语区域


在Windows 10的
Settings>Time&Language>Region
中,我将
Region
以及
Region格式
更改为德语。重新启动Excel后,文件正常工作。

我遇到了这个问题,错误是在隐藏的工作表上调用
工作表.ExportAsFixedFormat
方法引起的


我刚刚在代码中添加了
if工作表.Visible Then
条件,以防止出现
无效过程调用或参数
错误。

看起来您可能在为表提供固定值的名称时遇到问题。您正在调用它
数据透视表6
,但该名称仅在您第一次创建数据透视时可用。在那之后,你会有一个冲突。快速的回答也会找到答案。这种联系是第一个结果。奇怪的是,他们经历了和我一样的过程,看着重复的名字。作为参考,重复的名称给出了一个1004错误。@user3067028,很高兴听到。请标记为答案(在投票按钮下勾选),以便其他人知道答案。帮助我们所有人。