Programmai Microsoft Excel ir dažādas funkcijas, un viena no tām ir pārskatu ģenerēšana automātiski. Jūs varat izveidot interaktīvas izklājlapas, lai vienkāršotu citu personu datu ievadīšanas procesu darbgrāmatā, vienlaikus automatizējot atskaišu ģenerēšanu. Abām šīm funkcijām ir nepieciešamas pietiekamas zināšanas par Visual Basic. Tālāk ir aprakstīti soļi abu uzdevumu veikšanai.
Solis
1. metode no 2: interaktīvas izklājlapas izveide
1. solis. Nosakiet izklājlapas izkārtojumu
Izklājlapas izkārtojums ir jāizdara tā, lai citi varētu atrast laukus, kas nepieciešami datu ievadīšanai.
Izklājlapu izkārtojumus var izvietot horizontāli vai vertikāli. Lielākajai daļai lietotāju ir vieglāk strādāt ar vertikālu izkārtojumu, it īpaši, ja izklājlapa tiks izdrukāta
2. solis. Izveidojiet izklājlapai teksta etiķetes
Uzrakstiet etiķeti katras kolonnas augšpusē un pa kreisi no katras kolonnas šūnas, kuru plānojat izmantot kā datu ievadi.
3. solis. Nospiediet taustiņus alt="Attēls" un F11
Šī taustiņu kombinācija atvērs Microsoft Visual Basic redaktoru.
Solis 4. Veiciet dubultklikšķi uz "Šī darbgrāmata" rūts "Project-VBA Project" augšējā kreisajā stūrī
Redaktora galvenajā sadaļā parādīsies logs koda rakstīšanai.
Solis 5. Izvēlnē Ievietot izvēlieties "Procedūra"
Parādīsies dialoglodziņš Pievienot procedūru.
6. solis Ievadiet procedūras nosaukumu laukā Nosaukums
Ievadiet jēgpilnu procedūras nosaukumu, piemēram, "SumExpenses", ja izklājlapa tiks izmantota, lai ziņotu par ceļa izdevumiem. Noklikšķiniet uz Labi, lai aizvērtu dialoglodziņu.
- Procedūru nosaukumos nedrīkst būt atstarpes, bet var izmantot pasvītrojumu (_), lai aizstātu atstarpes.
- Kad dialoglodziņš Pievienot procedūru tiek aizvērts, parādīsies rinda ar nosaukumu "Publiskais apakšnodaļa", kam seko procedūras nosaukums. Zem šīs līnijas ir atstarpe un vārdi "End Sub".
7. solis. Ievadiet izklājlapā katra ievades lauka kodu
Katram ierakstam jūs uzrakstīsit divas koda rindas.
- Pirmā koda rinda ir formā "Diapazons (" šūnas nosaukums "). Atlasiet", "šūnas nosaukums" apzīmē šūnu, kurā ievadīta ievade. Ievadiet šūnas nosaukumu, kas atrodas uzreiz pa labi no teksta etiķetes. Ja teksta etiķete atrodas šūnā A2, ievades lauks ir šūna B2 (Diapazons ("B2"). Atlasiet). Pēdiņas pirms un pēc šūnas nosaukuma joprojām tiek rakstītas šajā posmā, bet vairs nav iekļautas pilnā koda paziņojumā.
- Kods otrajā rindā ir "ActiveCell. Value = InputBox (" InputPrompt ")". "InputPrompt" apzīmē tekstu, kas parādīsies, lai informētu lietotāju par datu veidu, kas jāievada ievades šūnā. Piemēram, ja ievades šūna tiks aizpildīta ar pārtikas izdevumiem, aizstājiet “InputPrompt” ar “Ievadiet kopējos ēdināšanas izdevumus, ieskaitot padomus”. (Ievades instrukcijas teksta pēdiņas joprojām ir iekļautas, savukārt pēdiņas pirms un pēc komandas nav jāraksta.)
8. solis. Ievadiet katra aprēķina lauka kodu
Atkal abas izmantotās rindas ir tādas pašas kā iepriekš, bet šoreiz ActiveCell. Value ir skaitliskas funkcijas aprēķins, piemēram, SUM, kur ievades instrukciju parādīšanai tiek izmantota funkcija InputBox.
9. solis. Pievienojiet koda rindiņu, lai saglabātu savu interaktīvo izklājlapu
Formāts ir "ActiveWorkbook. SaveAs Filename: =" Filename.xls "." Filename "ir interaktīvās izklājlapas nosaukums. (Pēdiņas pirms un pēc" Filename.xls "paliek rakstītas, bet visu komandu pēdiņas ir nav nepieciešams.)
Ja izmantojat Microsoft Excel versiju 2007 vai jaunāku versiju, izmantojiet ".xlsx", nevis ".xls". Tomēr, ja ir interaktīvi izklājlapu lietotāji ar Excel 2003 un jaunāku versiju, viņi nevarēs izmantot izklājlapu bez lasītāja spraudņa
10. solis. Vienlaicīgi nospiediet taustiņus alt="Attēls" un Q
Visual Basic redaktors tiks aizvērts.
11. solis. Vienlaicīgi nospiediet taustiņus alt="Attēls" un F8
Parādīsies dialoglodziņš Makro.
12. solis Makro sarakstā noklikšķiniet uz procedūras nosaukuma
Ja izveidotā procedūra ir vienīgā sarakstā, tā tiks atlasīta automātiski.
13. solis. Noklikšķiniet uz pogas Opcijas
Jums tiks lūgts ievadīt tastatūras rakstzīmi, ko izmantot kā īsinājumtaustiņu ar taustiņu Ctrl. Izvēlieties nozīmīgu burtu, kas nav izmantots kā saīsnes rakstzīme, piemēram, "e", lai ievadītu.
14. solis. Noklikšķiniet uz "Labi", lai aizvērtu dialoglodziņu Makro opcijas
Tagad jūs varat izplatīt interaktīvas izklājlapas lietotājiem. Pēc tā atvēršanas lietotājs var izmantot īsinājumtaustiņus, lai veiktu ierakstus, un izpildīt norādījumus, ko izveidojāt, lai aizpildītu datus.
2. metode no 2: automatizēt pārskatu ģenerēšanu
1. darbība. Izveidojiet pārskatu rakurstabulā
PivotTable ir izveidotas, lai apkopotu datus, lai jūs varētu salīdzināt skaitļus un noteikt tendences. PivotTable jāattiecas uz datiem, kas atrodas kādā no datu apstrādātājiem vai importēti no konkrētas datu bāzes.
2. solis. Uzrakstiet Visual Basic skriptu, lai atvērtu un aizvērtu atskaiti
Skriptam jāspēj veikt dažādas tālāk uzskaitītās funkcijas. Katra funkcija tiks aprakstīta, kam seko iekavās norādītais kods tās ieviešanai. Rakstot faktisko kodu, ierakstiet to vienā blokā, aizstājot piemēra vārdu ar savu, un neiekļaujiet iekavas koda parauga sākumā un beigās.
- Atveriet izklājlapu tikai lasīšanas režīmā. [DIM XLAppSet XLApp = CreateObject ("Excel. App") xlapp.visible = falsexlapp.workbooks.open / excelloc / filename.xls, 3,]
- Pārlādējiet datus un saglabājiet pārskatu, šajā piemērā tas tiek saglabāts kā PDF fails ar datuma parakstu. [Truexlapp.activeworkbook. RefreshAllxlapp.activeworkbook. ExportAsFixedFormat xlTypePDF, / pdfloc / reportname_ & DatePart ("yyyy, Now ()) &"-"& Right (" 0 "& DatePart (" m ", Now ()), 2) & "-" Pa labi ("0" & DatePart ("d", Tagad ()), 2) & ".pdf"] Ja izvaddokumenta formāts ir atšķirīgs, aizstājiet ".pdf" formātu ar pareizu pagarinājumu pēc vēlēšanās.
- Aizveriet izklājlapu, to nesaglabājot, pēc tam aizveriet programmu Excel. [xlQualityStandardxlapp.activeworkbook.close Falsexlapp.quit]
- Izklājlapas beigās izmantojiet ".xlsx", nevis ".xls", ja izklājlapa ir saglabāta programmā Excel 2007 un jaunākā XML formātā.
3. solis. Lai sāktu Visual Basic skriptu, uzrakstiet sērijveida skriptu
Skripta rakstīšanas mērķis ir tāds, lai Visual Basic skripti varētu darboties automātiski. Bez sērijveida skripta VB skripti ir jāpalaiž manuāli.
Skripts ir uzrakstīts šādā formātā, šajā piemērā norādītajam vārdam aizstājot ar savu mapes nosaukumu un faila nosaukumu: [cscript /nologo / fileloc / script.vbs]
4. solis. Uzrakstiet sērijveida skriptu, lai pārliecinātos, ka izvades fails pastāv kā izveidots
Jūsu skriptam vajadzētu veikt tālāk norādītās funkcijas. Katrai funkcijai sekos kods, kas norādīts iekavās, lai to ieviestu. Rakstot faktisko kodu, ierakstiet to vienā blokā, aizstājot piemēra vārdu ar vajadzīgo nosaukumu, un neiekļaujiet iekavas parauga koda sākumā un beigās.
- Pārbaudiet, vai ir izvades fails. [For /f "tokens = 2-4 delims = /" %% a in ('date /t') do set rreport = reportname _ %% c-%% a-%% b.pdf)] Ja izvades faila formāts nav PDF, aizstājiet ".pdf" ar atbilstošu paplašinājumu.
- Ja izvades fails/ziņojums pastāv, nosūtiet to kā e -pastu personai, kurai tas nepieciešams. [Ja pastāv / pdfloc \%rreport%(sendmail -f [email protected] -t [email protected] -u plānotā atskaite -m ziņojums %% report%ir pievienots. -A / pdfloc \%rreport%-s jūsu serveris: ports -xu lietotājvārds -xp parole)]
- Ja izvades fails/atskaite nepastāv norādītajā vietā, izveidojiet procedūru, lai tā varētu jums nosūtīt ziņojumu, ka piegāde neizdevās. [Citādi (sendmail -f [email protected] -t [email protected] -u Ziņojums netika palaists -m fails % rreport % nepastāv / pdfloc / -s jūsu serverī: ports -xu lietotājvārds -xp parole)]
5. solis. Pārliecinieties, vai datorā atrodas mape "Desktop"
Jums jāpārbauda darbvirsmas mapes esamība gan 32 bitu, gan 64 bitu sistēmās. Pretējā gadījumā programma Excel un izklājlapa ir jāatver manuāli.
- 32 bitu sistēmas atrašanās vieta: c: / windows / system32 / config / systemprofile
- 64 bitu sistēmas atrašanās vieta: c: / windows / syswow64 / config / systemprofile
6. solis. Ieplānojiet uzdevumus, lai pēc vajadzības palaistu skriptus
Partijas skripti jāizpilda secīgi un nepārtraukti, pat ja neviens datoru neizmanto. Privilēģijām jābūt iestatītām pēc iespējas augstākā iestatījumā.