Programowe zapisywanie pliku na dysku sieciowym w programie Excel

Podsumowanie

W programie Microsoft Excel można zapisać plik na dowolnym dysku, na którym posiada się uprawnienia do zapisu i usuwania. Ponadto można użyć makra programu Visual Basic for Applications firmy Microsoft, aby zapisać aktywny skoroszyt i użyć zmiennej dla nazwy pliku. Zmiennych można używać z właściwości ActiveWorkbook.Nameproperty, danych pola wejściowego lub odwołania do komórki.

Uwaga

Jeśli używasz pełnej ścieżki dla nazwy pliku, program Microsoft Excel będzie dokładnie wiedzieć, gdzie zapisać plik. Jeśli ścieżka nie zostanie podana, program Microsoft Excel zapisze plik w aktualnie aktywnym katalogu lub folderze.

Więcej informacji

Firma Microsoft podaje przykłady programowania tylko dla celów ilustracyjnych, nie udzielając żadnej rękojmi, wyrażonej wprost ani dorozumianej, w tym także, ale nie tylko, dorozumianej rękojmi co do przydatności handlowej lub do określonych celów. W tym artykule zakłada się, że czytelnik zna demonstrowany język programowania oraz narzędzia używane do tworzenia i debugowania procedur. Wykwalifikowani pracownicy pomocy technicznej firmy Microsoft mogą pomóc w wyjaśnieniu, jak działa określona procedura, ale nie będą modyfikować tych przykładów ani dodawać żadnych funkcji i konstruować nowych procedur w celu dostosowania ich do określonych potrzeb użytkownika.

Przykładowe makro 1

Aby zapisać aktywny skoroszyt ze zmienną w określonej ścieżce, użyj następującego makra:

   Sub SaveWithVariable()
       Dim MyFile As String

       MyFile = ActiveWorkbook.Name
       ' Do not display the message about overwriting the existing file.
       Application.DisplayAlerts = False
       ' Save the active workbook with the name of the
       ' active workbook. Save it on the E drive to a folder called
       ' "User" with a subfolder called "JoeDoe."
       ActiveWorkbook.SaveAs Filename:="E:\User\JoeDoe\" & MyFile
       ' Close the workbook by using the following.
       ActiveWorkbook.Close
   End Sub

Przykładowe makro 2

Użyj nazwy pliku przechowywanej w komórce i zapisz plik na serwerze sieciowym. Aby to zrobić, skorzystaj z następującego makra:

   Sub SaveWithVariableFromCell()
       Dim SaveName As String
       SaveName = ActiveSheet.Range("A1").Text
       ActiveWorkbook.SaveAs Filename:="E:\User\JoeDoe\" & _
           SaveName & ".xls"
   End Sub