Makrokomanda, skirta pridėti dienos ataskaitą - „Excel“ patarimai

Judita paskelbė šios savaitės „Excel“ klausimą.

Turiu importuoti failą kasdien. Norėčiau kiekvieną dieną pridėti failą prie esamos „Excel“ darbaknygės ir turėti darbalapį pavadinimu d / m / y.

Trumpas vizualinis pagrindinis makrokomandas padarys tai paprasta užduotimi. Viena problema - lapo skirtuko pavadinime negali būti pasvirojo brūkšnio. Taigi, sprendimas pakeis kiekvienos dienos lapo pavadinimą į „1999 03 03“ pavadinimą.

Sprendimas apima viršutinio darbalapio pridėjimą prie esamos knygos. Šiame lape, vadinamame „Meniu“, yra paprasta vartotojo sąsaja, kad prireikus galėtumėte perduoti šią užduotį kitam darbuotojui. Viršutiniame lape yra langeliai, kuriuose vartotojas gali nurodyti importuojamo failo kelią ir failo pavadinimą. Jei importuojate kitos sistemos sukurtą failą, šie laukai kiekvieną dieną nesikeis. Meniu lape taip pat yra langelis su dabartine data, suformatuota be pasvirųjų brūkšnių. Įtrauksiu automatiškai atidaromą makrokomandą, kuri automatiškai užpildys šį langelį vartotojui, tačiau jie visada gali laisvai jį pakeisti prieš spustelėdami mygtuką, kad importuotumėte failą. Galiausiai meniu lape yra didelis mygtukas, kurį spustelės vartotojas.Šis mygtukas pakvies makrokomandą importuoti meniu pavadintą failą į dabartinę knygą su nurodytu skirtuko pavadinimu.

Meniu darbalapis

Atidarykite naują darbaknygę tik su vienu lapu. Dukart spustelėkite lapo skirtuką ir įveskite lapo pavadinimą „Meniu“. A1 langelyje pridėkite gražų pavadinimą. Langeliuose C3: C5 pridėkite tekstą, kaip parodyta kairėje. Langelyje D3 įveskite katalogo, kuriame failas yra kiekvieną dieną, kelią. D4 langelyje pridėkite failo pavadinimą. Palikite D5 tuščią. Sukūrus makrokomandą lengviau nustatyti mygtuką, todėl paliksime tai vėliau.

  • Paleiskite „Macro Editor“ naudodami alt = "" + F11
  • Pasirinkite Įterpti - modulis
  • Nukopijuokite šį tekstą į makrokomandą
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

Dabar grįžkite į „Excel“ ir pridėkite mygtuką prie meniu lapo.

Kaip pridėti mygtuką prie darbalapio

Pridėti mygtuką
  • Parodykite „Forms“ įrankių juostą pasirinkdami „View“ - „Toolbars - Forms“
  • Įrankių juostoje pasirinkite mygtuką Mygtukas
  • Laikykite nuspaudę klavišą alt = "", vilkite iš viršutinio B8 kampo į langelį C9
  • Dialogo lange Priskirti makrokomandą pasirinkite makrokomandą pavadinimu „GetFile“ ir spustelėkite Gerai
  • Kol mygtukas vis dar pasirinktas, galite spustelėti ir vilkti, kad pasirinktumėte mygtuką. Pakeiskite šį tekstą į „Procesas!“ ar bet kurį savo pasirinktą tekstą

Dabar turite išsamią paraišką. Išsaugokite failą patogioje vietoje. Kai langeliuose D3: D4 sukursite teisingą informaciją, dienos procedūra bus tokia:

  • Atidarykite ką tik sukurtą failą
  • Patikrinkite, ar D5 langelyje nurodyta data yra tinkama.
  • Spustelėkite didelį mygtuką.
  • Išsaugokite failą

Štai keletas būdų, kaip galite pakeisti makrokomandą:

  • Jei norite, kad skirtukas būtų pavadintas praėjusios dienos data, makrokomandoje po „NOW ()“ pridėkite „-1“.
  • Jei importuotinas failas turi kelis lapus ir tikslinis lapas gali būti ne viršuje, tada pridėkite „Sheets“ („lapo pavadinimas“). Pasirinkite po aukščiau esančia eilute File.Open.

Įdomios straipsniai...