我是编码的新手(我自己和我一起学习)并且遇到一个小问题,我只是不知道。我有一段代码已经工作了一段时间,现在似乎无法正常工作。我创建了一个服务工单表,以帮助为我们的服务部门保留准确的工作选项卡。代码非常简单,用户可以在他们需要的单元格中输入所有信息。完成后,他们可以按一个更新单独文件的按钮。按另一个,它将活动工作表的副本保存到指定的联网位置,打印副本,根据指定的单元格保存工作表,然后清除指定的单元格并更新PO#单元格。
代码运行良好,直到它停止将文件副本保存到指定的目录,并且我不知道它为什么会发生变化。
Sub SaveWorkOrderByAddress()
ChDir "\\BG-PC\SharedDocs\Service work orders\Service work orders"
Dim NewFN As Variant
Dim stFileName As String
'Save a new copy
NewFN = Range("C2").Value & ".xlsx"
stFileName = Range("C2").Value & ".xlsx"
If Dir(stFileName) <> "" Then
MsgBox "File already exists, please rename."
Else
ActiveSheet.Copy
ActiveWorkbook.SaveAs NewFN, FileFormat:=xlOpenXMLWorkbook
ActiveWorkbook.Close
PrintCurrentWO
NextWorkOrderNumber
ThisWorkbook.Save
End If
任何帮助都会受到最高的赞赏,而且我是新手,所以如果这是一个新的错误,我很抱歉。
答案 0 :(得分:1)
更改工作目录在这里没有用。只需在调用ActiveWorkbook.SaveAs
时将路径与文件名组合在一起。
像这样:
NewFN = "\\BG-PC\SharedDocs\Service work orders\Service work orders\" & Range("C2").Value & ".xlsx"