Programowe zapisywanie dokumentów
Istnieje kilka sposobów zapisywania dokumentów programu Microsoft Office Word. Dokument można zapisać bez zmiany nazwy dokumentu lub zapisać dokument pod nową nazwą.
Dotyczy: informacje w tym temacie dotyczą projektów na poziomie dokumentu i projektów dodatków VSTO dla programu Word. Aby uzyskać więcej informacji, zobacz Funkcje dostępne przez aplikacja pakietu Office lication i typ projektu.
Zapisywanie dokumentu bez zmieniania nazwy
Aby zapisać dokument skojarzony z dostosowywaniem na poziomie dokumentu
Wywołaj metodę SaveDocument klasy . Aby użyć tego przykładu
ThisDocument
kodu, uruchom go z klasy w projekcie.
Aby zapisać aktywny dokument
Wywołaj metodę Save aktywnego dokumentu. Aby użyć tego przykładu kodu, uruchom go z
ThisDocument
klasy lubThisAddIn
w projekcie.Jeśli nie masz pewności, czy dokument, który chcesz zapisać, jest aktywnym dokumentem, możesz odwołać się do niego pod jego nazwą.
Aby zapisać dokument określony przez nazwę
Użyj nazwy dokumentu jako argumentu do kolekcji Documents . Aby użyć tego przykładu kodu, uruchom go z
ThisDocument
klasy lubThisAddIn
w projekcie.
Zapisywanie dokumentu pod nową nazwą
SaveAs
Użyj metody , aby zapisać dokument pod nową nazwą. Można użyć tej metody Document elementu hosta w projekcie programu Word na poziomie dokumentu lub obiektu natywnego Document w dowolnym projekcie programu Word. Ta metoda wymaga określenia nowej nazwy pliku, ale inne argumenty są opcjonalne.
Uwaga
Jeśli w programie obsługi ThisDocument
zdarzeń zostanie wyświetlone okno dialogowe DocumentBeforeSave SaveAs i ustawisz parametr Cancel na wartość false, aplikacja może nieoczekiwanie zakończyć działanie. Jeśli ustawisz wartość True dla parametru Anuluj, zostanie wyświetlony komunikat o błędzie wskazujący, że autozapis został wyłączony.
Aby zapisać dokument skojarzony z dostosowywaniem na poziomie dokumentu o nowej nazwie
Wywołaj metodę
SaveAs
ThisDocument
klasy w projekcie przy użyciu w pełni kwalifikowanej ścieżki i nazwy pliku. Jeśli plik o tej nazwie już istnieje w tym folderze, jest on dyskretnie zastępowany. Aby użyć tego przykładuThisDocument
kodu, uruchom go z klasy .Uwaga
Metoda
SaveAs
zgłasza wyjątek, jeśli katalog docelowy nie istnieje lub występują inne problemy z zapisywaniem pliku. Dobrym rozwiązaniem jest użycietry...catch
bloku wokółSaveAs
metody lub wewnątrz metody wywołującej.
Aby zapisać dokument natywny o nowej nazwie
Wywołaj metodę SaveAsDocument , którą chcesz zapisać, używając w pełni kwalifikowanej ścieżki i nazwy pliku. Jeśli plik o tej nazwie już istnieje w tym folderze, jest on dyskretnie zastępowany.
Poniższy przykład kodu zapisuje aktywny dokument o nowej nazwie. Aby użyć tego przykładu kodu, uruchom go z
ThisDocument
klasy lubThisAddIn
w projekcie.Uwaga
Metoda SaveAs zgłasza wyjątek, jeśli katalog docelowy nie istnieje lub występują inne problemy z zapisywaniem pliku. Dobrym rozwiązaniem jest wypróbowanie ... catch bloku wokół SaveAs metody lub wewnątrz metody wywołującej.
object fileName = @"C:\Test\NewDocument.docx"; this.Application.ActiveDocument.SaveAs(ref fileName, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing);
Kompilowanie kodu
Ten przykład kodu wymaga następujących elementów:
Aby zapisać dokument według nazwy, dokument o nazwie NewDocument.doc musi istnieć w katalogu o nazwie Test na dysku C.
Aby zapisać dokument o nowej nazwie, katalog o nazwie Test musi istnieć na dysku C.