Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/17.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 复制、粘贴值,另存为;文件路径。仅适用于值大于1的工作表_Vba_Excel - Fatal编程技术网

Vba 复制、粘贴值,另存为;文件路径。仅适用于值大于1的工作表

Vba 复制、粘贴值,另存为;文件路径。仅适用于值大于1的工作表,vba,excel,Vba,Excel,我正在尝试自动化一个过程。我们收到一份包含多家公司账单信息的报告。目前,我们将此报告粘贴到excel文档中,并将其过滤到每个单独公司的各个工作表中 我们有一个宏,可以将值复制、粘贴到新工作表并保存文件。问题是,宏会为excel文件中的每个工作表保存一个文件,我希望调整宏,使其仅保存当月有账单信息的文件 因此,我们没有保存新的工作表,没有为客户计费 目前,每个客户工作表的宏设置如下 例如:'BGNBINS Sheets("BGNBINS").Select Cells.Select Selectio

我正在尝试自动化一个过程。我们收到一份包含多家公司账单信息的报告。目前,我们将此报告粘贴到excel文档中,并将其过滤到每个单独公司的各个工作表中

我们有一个宏,可以将值复制、粘贴到新工作表并保存文件。问题是,宏会为excel文件中的每个工作表保存一个文件,我希望调整宏,使其仅保存当月有账单信息的文件

因此,我们没有保存新的工作表,没有为客户计费

目前,每个客户工作表的宏设置如下

例如:'BGNBINS

Sheets("BGNBINS").Select
Cells.Select
Selection.Copy
Workbooks.Add
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
    :=False, Transpose:=False
Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
    SkipBlanks:=False, Transpose:=False
Cells.Select
Cells.EntireColumn.AutoFit
Application.CutCopyMode = False
ActiveWindow.DisplayGridlines = False

'Save the new workbook and close it

ActiveWorkbook.SaveAs Filename:= _
    "G:\ACCTG RV\Breena's Admin & JDE\Weighbridge Reports (Breena)\3rd Party Tonnes\Customers 3rd Party\06.2015\BGNBINS 0615 WTS.xlsx" _
    , FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False
ActiveWorkbook.Close
“安慰

Sheets("CONSOLW").Select
Cells.Select
Selection.Copy
Workbooks.Add

'Paste special values and formats

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
    :=False, Transpose:=False
Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
    SkipBlanks:=False, Transpose:=False

'resize to fit gridlines
    Cells.Select
Cells.EntireColumn.AutoFit
ActiveWindow.DisplayGridlines = False

Range("A1").Select
Application.CutCopyMode = False

'save and close file in specified drive and name

ActiveWorkbook.SaveAs Filename:= _
    "G:\ACCTG RV\Breena's Admin & JDE\Weighbridge Reports (Breena)\3rd Party Tonnes\Customers 3rd Party\06.2015\CONSOLW 0615 WTS.xlsx" _
    , FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False
ActiveWorkbook.Close

对不起,您对工作表的工作原理有点模糊,但这是您想要的吗

If ActiveSheet.Range("a1") > 0 Then
      'Save the new workbook and close it
      ActiveWorkbook.SaveAs Filename:="File Path", FileFormat:=xlOpenXMLWorkbook,   CreateBackup:=False
      ActiveWorkbook.Close
End If

欢迎来到堆栈溢出。你的问题是什么?到目前为止你尝试了什么?谢谢,我只尝试了上面发布的编码,我想知道一个代码,它只会将值大于1的工作表复制粘贴到新的工作表中并保存。每个工作表选项卡中都有一个单元格引用,用于计算总账单值,因此可以引用VBA编码中的单元格编号吗?请不要使用MS Office/VBA。您好,安德鲁,非常感谢您的评论,并对其模糊性表示歉意,大约有50个工作表选项卡,每个选项卡都有自己独特的客户代码作为工作表名称。宏当前设置为重复相同的代码,但工作表名称是唯一的,文件名是“工作表名称MM/YY”。我需要一个宏,用于复制a1>0的所有工作表,粘贴值并另存为..”工作表名称和“MM/YY”。好的,我今晚会为您查看