Makro for at tilføje daglig rapport - Excel-tip

Judith indsendte denne uges Excel-spørgsmål.

Jeg skal importere en fil dagligt. Jeg vil gerne tilføje filen hver dag til en eksisterende Excel-projektmappe og have regnearket navngivet d / m / y.

En kort visuel grundlæggende makro vil gøre dette til en simpel opgave. Et problem - fanens navn på et ark kan ikke indeholde en skråstreg. Så løsningen omdøber hver dags ark til at have et navn som "03. oktober 1999".

Løsningen indebærer at tilføje et top regneark til din eksisterende bog. Dette ark, kaldet "Menu", giver en enkel brugergrænseflade, så du kan aflevere denne opgave til en anden medarbejder, hvis det er nødvendigt. Det øverste ark indeholder celler, hvor brugeren kan angive stienavn og filnavn på den fil, der skal importeres. Hvis du importerer en fil oprettet af et andet system, ændres disse felter ikke fra dag til dag. Menuarket indeholder også en celle med den aktuelle dato formateret uden skråstreg. Jeg vil medtage en automatisk åbn makro, der automatisk udfylder denne celle for brugeren, men de er altid fri til at ændre den, før de klikker på knappen for at importere filen. Endelig har menuarket en stor knap, som brugeren klikker på.Denne knap påberåber makroen for at importere filen navngivet i menuen til den aktuelle bog med det angivne fanenavn.

Menu Arbejdsark

Åbn en ny projektmappe med kun et enkelt ark. Dobbeltklik på arkfanen og skriv et navn på arket kaldet "Menu". Tilføj en dejlig titel i celle A1. I celler C3: C5 skal du tilføje teksten som vist til venstre. I celle D3 skal du indtaste stienavnet for det bibliotek, hvor filen findes hver dag. I celle D4 skal du tilføje navnet på filen. Lad D5 være tom. Det er lettere at indstille knappen, når makroen er oprettet, så vi lader det være senere.

  • Start Macro Editor med alt = "" + F11
  • Vælg Indsæt - modul
  • Kopier følgende tekst til makroeditoren
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

Gå nu tilbage til Excel og tilføj en knap til menuarket.

Sådan tilføjes en knap til et regneark

Tilføj knap
  • Vis formularværktøjslinjen ved at vælge Vis - Værktøjslinjer - Formularer
  • Vælg knapværktøjet fra værktøjslinjen
  • Hold alt = "" nede, træk fra det øverste hjørne af B8 ind i celle C9
  • Fra dialogboksen Tildel makro skal du vælge vores makro kaldet GetFile og klikke på OK
  • Mens knappen stadig er valgt, kan du klikke og trække for at markere teksten på knappen. Erstat denne tekst med "Process!" eller enhver tekst efter eget valg

Du har nu den komplette ansøgning. Gem filen et passende sted. Når du har konfigureret din fil med de korrekte oplysninger i cellerne D3: D4, vil den daglige procedure være som følger:

  • Åbn den fil, vi lige har oprettet
  • Kontroller, at datoen vist i celle D5 er passende.
  • Klik på den store knap.
  • Gem filen

Her er nogle måder, du kan ændre makroen på:

  • Hvis du ønsker, at fanen skal navngives med den foregående dags dato, skal du tilføje en "-1" efter "NU ()" i makroen.
  • Hvis filen, der skal importeres, har flere ark, og målarket muligvis ikke er øverst, skal du tilføje ark ("arknavn"). Vælg efter File.Open-linjen ovenfor.

Interessante artikler...