Makro pro přidání denního přehledu - tipy pro Excel

Judith zveřejnila tento týden otázku v Excelu.

Potřebuji každý den importovat soubor. Chtěl bych každý den přidat soubor do existujícího sešitu aplikace Excel a mít list pojmenovaný pro d / m / y.

Díky krátkému makru jazyka Visual Basic bude tento jednoduchý úkol. Jeden problém - název karty listu nemůže obsahovat lomítko. Řešení tedy přejmenuje každý den list tak, aby měl název jako „3. října 1999“.

Řešení zahrnuje přidání špičkového listu do vaší stávající knihy. Tento list s názvem „Nabídka“ poskytuje jednoduché uživatelské rozhraní, takže v případě potřeby můžete tento úkol předat jinému zaměstnanci. Horní list obsahuje buňky, kde může uživatel zadat název cesty a název souboru, který se má importovat. Pokud importujete soubor vytvořený jiným systémem, tato pole se ze dne na den nezmění. List nabídky také obsahuje buňku s aktuálním datem naformátovanou bez lomítek. Zahrnu automaticky otevřené makro, které automaticky vyplní tuto buňku pro uživatele, ale vždy jej může změnit před kliknutím na tlačítko pro import souboru. Nakonec má list nabídky velké tlačítko, na které uživatel klikne.Toto tlačítko vyvolá makro k importu souboru s názvem v nabídce do aktuální knihy se zadaným názvem záložky.

List nabídky

Otevřete nový sešit pouze s jediným listem. Poklepejte na kartu listu a zadejte název listu s názvem „Nabídka“. Přidejte pěkný nadpis do buňky A1. Do buněk C3: C5 přidejte text, jak je znázorněno vlevo. V buňce D3 zadejte cestu k adresáři, kde je soubor každý den nalezen. Do buňky D4 přidejte název souboru. Ponechte D5 nevyplněný. Je jednodušší nastavit tlačítko po vytvoření makra, takže to necháme na později.

  • Spusťte editor maker pomocí alt = "" + F11
  • Zvolte Vložit - modul
  • Zkopírujte následující text do editoru maker
Sub Auto_Open() ' This macro will put today's date as the default new tab name Sheets("Menu").Select Range("D5").Select Selection.Formula = "=text(now(),""mmm dd yyyy"")" Selection.Copy Selection.PasteSpecial Paste:=xlValues Application.CutCopyMode = False Selection.Columns.AutoFit Range("D8").Value = "" End Sub Sub GetFile() ' This macro will import a file into this workbook ' Copyright 1999 www.MrExcel.com Sheets("Menu").Select PathName = Range("D3").Value Filename = Range("D4").Value TabName = Range("D5").Value ControlFile = ActiveWorkbook.Name Workbooks.Open Filename:=PathName & Filename ActiveSheet.Name = TabName Sheets(TabName).Copy After:=Workbooks(ControlFile).Sheets(1) Windows(Filename).Activate ActiveWorkbook.Close SaveChanges:=False Windows(ControlFile).Activate Sheets("Menu").Select Range("D8").Select ActiveCell.Value = "Completed" Range("D9").Select End Sub

Nyní se vraťte do aplikace Excel a přidejte tlačítko do listu nabídky.

Jak přidat tlačítko do listu

Tlačítko Přidat
  • Panel nástrojů Formuláře zobrazíte výběrem Zobrazit - Panely nástrojů - Formuláře
  • Na panelu nástrojů vyberte nástroj Tlačítko
  • Podržte klávesu alt = "" a táhněte z horního rohu B8 do buňky C9
  • V dialogu Přiřadit makro vyberte naše makro s názvem GetFile a klikněte na OK
  • Když je tlačítko stále vybráno, můžete klepnutím a tažením vybrat text na tlačítku. Nahraďte tento text textem „Zpracovat!“ nebo jakýkoli text podle vlastního výběru

Nyní máte kompletní aplikaci. Uložte soubor na vhodné místo. Jakmile nastavíte soubor se správnými informacemi v buňkách D3: D4, bude denní postup následující:

  • Otevřete soubor, který jsme právě vytvořili
  • Ověřte, zda je datum zobrazené v buňce D5 vhodné.
  • Klikněte na velké tlačítko.
  • Uložte soubor

Tady je několik způsobů, jak změnit makro:

  • Pokud chcete, aby byla karta pojmenována s datem předchozího dne, přidejte v makru za „NOW ()“ „-1“.
  • Pokud má soubor, který má být importován, více listů a cílový list nemusí být nahoře, přidejte listy ("název listu"). Vyberte po řádku File.Open výše.

Zajímavé články...