Simptome

Atunci când rulați o macrocomandă Visual Basic pentru aplicații în Microsoft Excel, este posibil să primiți următorul sau un mesaj de eroare similar:

Run-time error '1004':Method 'SaveAs' of object '_Worksheet' failed

Cauză

Acest comportament poate apărea atunci când ambele condiții următoare sunt adevărate:

  • Utilizați o macrocomandă de Visual Basic pentru aplicații pentru a salva o foaie de lucru.-și-

  • Specificați formatul de fișier ca constantă xlWorkbookNormal.

De exemplu, următorul cod determină să apară această eroare:

Sub A()   Dim myNewSheet As Worksheet   Set myNewSheet = ActiveSheet   FileNameBin = "c:\ABC"   myNewSheet.SaveAs Filename:=FileNameBin, FileFormat:=xlWorkbookNormalEnd Sub

Soluție de evitare

Microsoft provides programming examples for illustration only, without warranty either expressed or implied, including, but not limited to, the implied warranties of merchantability and/or fitness for a particular purpose. Acest articol presupune că sunteți familiarizat cu limbajul de programare prezentat și cu instrumentele utilizate pentru a crea și a depana proceduri. Specialiștii în asistență Microsoft vă pot ajuta să explicați funcționalitatea unei anumite proceduri, dar aceștia nu vor modifica aceste exemple pentru a furniza funcționalități suplimentare sau proceduri de construcție care să îndeplinească cerințele dvs. specifice. Dacă aveți experiență de programare limitată, se poate să doriți să contactați un partener Microsoft certificat sau Serviciile de consultanță Microsoft. Pentru mai multe informații, vizitați aceste site-uri web Microsoft:Parteneri certificați Microsoft - https://partner.microsoft.com/global/30000104 Serviciile de consultanță Microsoft - http://support.microsoft.com/gp/advisoryservice Pentru mai multe informații despre opțiunile de asistență disponibile și despre cum să contactați Microsoft, vizitați următorul site web Microsoft:http://support.microsoft.com/default.aspx?scid=fh;EN-US;CNTACTMS Pentru a ocoli acest comportament, modificați specificația formatului de fișier din constantă xlWorkbookNormal la 1. Exemplul de cod funcționează normal dacă se modifică în:

Sub A()   Dim myNewSheet As Worksheet   Set myNewSheet = ActiveSheet   FileNameBin = "c:\ABC"   myNewSheet.SaveAs Filename:=FileNameBin, FileFormat:=1End Sub

NOTĂ Chiar dacă salvați o foaie de lucru, toate foile de lucru din registrul de lucru selectat sunt salvate atunci când formatul de fișier este setat la xlWorkbookNormal sau 1.

Stare

Microsoft a confirmat că aceasta este o problemă în produsele Microsoft care sunt listate la începutul acestui articol.

Aveți nevoie de ajutor suplimentar?

Doriți mai multe opțiuni?

Explorați avantajele abonamentului, navigați prin cursurile de instruire, aflați cum să vă securizați dispozitivul și multe altele.