首页 > 解决方案 > 以原始名称保存每张纸

问题描述

我有一个下面说明的代码,其中我将表单文件保存在 prn

我不想在保存文件时为其命名,我只想按其原始名称保存我的每张工作表(因此,工作表名称 raj、taj、bazz。它们都按其原始名称保存。

Sub CONVERT()
    Dim vcounter As Long
    Dim ws As Worksheet

    For Each ws In Sheets
        ws.Activate

        vcounter = 2
        While Range("A" & vcounter).Value <> ""
            Range("a" & vcounter).Value = Range("a" & vcounter).Value + 1
            vcounter = vcounter + 1
        Wend

        Application.DisplayAlerts = False
        ActiveSheet.SaveAs Filename:="D:\birla soft\apache.prn"
     Next ws
End Sub

标签: excelvba

解决方案


这段代码经过测试,它保存了一个ActiveSheet名称和扩展名相同的文件:

ActiveSheet.SaveAs Filename:="D:\birla soft\" & ActiveSheet.Name

如果您需要使用另一个扩展名保存它,请改用以下代码:

ActiveSheet.SaveAs Filename:="D:\birla soft\" & ActiveSheet.Name & ".prn"

在您的代码中,如果您需要使用其名称保存每个工作表,只需更改ActiveSheet您的ws变量,如下所示:

Sub CONVERT()
    Dim vcounter As Long
    Dim ws As Worksheet

    For Each ws In Sheets
        ws.Activate

        vcounter = 2
        While Range("A" & vcounter).Value <> ""
            Range("a" & vcounter).Value = Range("a" & vcounter).Value + 1
            vcounter = vcounter + 1
        Wend

        Application.DisplayAlerts = False
        ws.SaveAs Filename:="D:\birla soft\" & ws.Name & ".prn"
     Next ws
End Sub

推荐阅读