Přejít na hlavní obsah

Jak VBA Excel uložit soubor s jiným názvem

  • Kateřina Prokop
  • Tipy

Microsoft Excel je výkonný nástroj pro práci s daty, který uživatelům umožňuje nejen vytvářet a upravovat tabulky, ale také automatizovat většinu rutinních úkolů. Jedním z takových úkolů může být uložení souboru s jiným názvem. V VBA (Visual Basic for Applications), vestavěném programovacím jazyce v Excelu, existuje několik způsobů, jak tuto operaci provést.

Možnost použití VBA k uložení souboru s jiným názvem je užitečná, když potřebujete uložit kopii aktuálního souboru nebo jej uložit pod různým názvem v závislosti na konkrétních podmínkách. Můžete například použít VBA k uložení souboru s názvem obsahujícím aktuální datum nebo výsledky jakýchkoli výpočtů.

Chcete-li uložit soubor s jiným názvem Do aplikace VBA Excel, musíte použít metodu SaveAs. Tato metoda vám umožňuje zadat nový název souboru a cestu k němu. Případně můžete zadat možnosti pro uložení souboru v různých formátech, jako je xls, xlsx, csv a další. Metoda SaveAs také umožňuje zadat různé možnosti uložení, jako je heslo a ochrana proti změně. Použití metody SaveAs je poměrně jednoduché a umožňuje automatizovat ukládání souborů s jiným názvem v Excelu prostřednictvím VBA.

Jak uložit soubor do aplikace VBA Excel s jiným názvem

V programovacím jazyce VBA (Visual Basic for Applications) pro Excel je možné uložit soubor s jiným názvem pomocí funkce SaveAs. Tato funkce vám umožňuje uložit aktuální sešit aplikace Excel s novým názvem a / nebo do jiné složky.

Nejprve je třeba určit cestu a název nového souboru, ve kterém bude kniha uložena. K tomu lze použít dialogové okno Save As:

Dim path As StringDim fileName As StringWith Application.FileDialog(msoFileDialogSaveAs)If .Show = -1 Thenpath = .SelectedItems(1)ElseExit SubEnd IfEnd WithfileName = InputBox("Введите новое имя файла:")

Ve výše uvedeném kódu otevřeme dialogové okno Save As a uložíme vybranou cestu do proměnné path. Pokud uživatel nezvolil cestu, ukončíme provádění kódu. Poté pomocí funkce InputBox požádáme o nový název souboru a uložíme jej do proměnné fileName.

Poté můžete použít funkci SaveAs k uložení knihy s novým názvem:

Workbooks(1).SaveAs FileName:=path & "\" & fileName

Výše uvedený kód ukládá aktuální sešit aplikace Excel pod novým názvem pomocí cesty a názvu souboru uloženého do proměnných path a fileName. Všimněte si, že sloučíme cestu a název souboru pomocí symbolu "\".

V důsledku toho bude kniha uložena s novým názvem a / nebo v jiné složce zadané uživatelem v dialogovém okně Save As a funkci InputBox.

Tento přístup umožňuje softwarově ukládat soubory s jiným názvem do aplikace VBA Excel a může být užitečný při automatizaci úloh souvisejících se zpracováním dat v tabulkách aplikace Excel.

Uložení souboru s novým názvem Do aplikace VBA Excel

VBA Excel má možnost Uložit soubor s novým názvem pomocí metody SaveAs. Chcete-li to provést, musíte vytvořit objekt Workbook, zadat nový název souboru a vyvolat metodu SaveAs předáním nového názvu souboru jako možnosti. To může být užitečné, pokud chcete upravit soubor pod jiným názvem, aniž byste přepsali původní soubor.

Dim wb As WorkbookSet wb = ThisWorkbookDim newFileName As StringnewFileName = "Новое имя файла.xlsx"wb.SaveAs newFileNameSet wb = Nothing

V tomto příkladu se vytvoří objekt Workbook a přiřadí se aktivní kniha (ThisWorkbook). Poté se zadá nový název souboru (newFileName) a vyvolá se metoda SaveAs pro uložení souboru s novým názvem. Nakonec se objekt Workbook vyčistí, aby se uvolnila paměť.

Upozorňujeme, že nový název souboru musí obsahovat celý název souboru (včetně přípony). Ujistěte se také, že nový název souboru neodpovídá názvu existujícího souboru, jinak dojde k chybě.

Pomocí tohoto přístupu můžete snadno uložit soubor s novým názvem do aplikace VBA Excel a vyhnout se ztrátě zdrojových dat.

Změna názvu souboru při ukládání do aplikace VBA Excel

Při práci s VBA v Excelu je nutné uložit soubor s jiným názvem. K tomu existuje speciální vlastnost "Name" objektu "Workbook", kterou lze použít ke změně názvu souboru před uložením.

Postup ukládání souboru s jiným názvem může vypadat následovně:

Sub SaveFileWithDifferentName()Dim newFileName As StringnewFileName = "Новое_имя_файла.xlsx" ' Имя, которое необходимо задать новому файлу' Открываем активную книгуDim wb As WorkbookSet wb = ActiveWorkbook' Изменяем имя файлаwb.Activatewb.SaveAs newFileName' Освобождаем ресурсыSet wb = NothingEnd Sub

V tomto postupu nejprve zadáme nový název souboru do proměnné "newFileName". Poté otevřeme aktivní sešit a použijeme vlastnost "SaveAs" objektu "Workbook" k uložení souboru pod novým názvem.