Zapisujte datoteke pomoću VBA u programu Microsoft Excel

Anonim

U računalima je datoteka dnevnika datoteka koja bilježi događaje koji se događaju u operacijskom sustavu ili drugom pokretanju softvera ili poruke između različitih korisnika komunikacijskog softvera. Zapisivanje je čin vođenja dnevnika. U najjednostavnijem slučaju, poruke se zapisuju u jednu datoteku dnevnika.

Razmislite o scenariju, aplikacija bilježi podatke korisnika u datoteku dnevnika koji pristupaju aplikaciji.

Zapisničke datoteke korisne su u različitim situacijama, posebno za programere. Zapisničke datoteke su datoteke običnog teksta koje mogu pohraniti privremene ili trajnije informacije. Ne trebate mnogo koda za izradu datoteke dnevnika. U ovom ćemo se članku usredotočiti na stvaranje automatskih datoteka dnevnika u određenoj mapi.

Pitanje: Kako mogu stvoriti datoteku bilježnice koja sadrži trenutni datum, vrijeme i korisničko ime kad god se datoteka otvori?

Slijedi snimak radne knjige programa Excel koja sadrži financijske podatke:

U ovom primjeru rezultat će biti u obliku tekstualne datoteke. Bilježnica će sadržavati datum, vrijeme i druge pojedinosti; otprilike ovako:

Da bismo stvorili datoteke dnevnika, moramo slijediti korake u nastavku za pokretanje VB uređivača:

  • Kliknite karticu Developer
  • Iz grupe kodova odaberite Visual Basic

  • Pritisnite Umetni pa Modul

  • Ovo će stvoriti novi modul
  • Unesite sljedeći kôd u Modul
 Sub LogInformation (LogMessage As String) Const LogFileName As String = "D: \ FOLDERNAME \ TEXTFILE.LOG" Dim FileNum As Integer FileNum = FreeFile 'sljedeći broj datoteke Otvori LogFileName za Dodavanje kao #FileNum' stvara datoteku ako ne postoji Ispiši #FileNum, LogMessage 'upiši podatke na kraj tekstualne datoteke Zatvori #FileNum' zatvori datoteku End Sub 
 Public Sub DisplayLastLogInformation () Const LogFileName As String = "D: \ FOLDERNAME \ TEXTFILE.LOG" Dim FileNum As Integer, tLine As String FileNum = FreeFile 'sljedeći broj datoteke Otvori LogFileName Za pristup ulazu Pročitajte Dijeljeno kao #f' otvorite datoteku za čitanje Do While Not EOF (FileNum) Unos retka #FileNum, tLine 'čita redak iz tekstualne datoteke Petlja' dok se ne pročita posljednji redak Zatvori #FileNum 'zatvori datoteku MsgBox tLine, vbInformation, "Last log information:" End Sub 
 Sub DeleteLogFile (FullFileName As String) On Error Resume Next 'zanemari moguće greške Kill FullFileName' obriši datoteku ako postoji i moguće je On Error GoTo 0 'break on errors End Sub 

Kopirajte sljedeći kôd u modul ThisWorkbook

 Private Sub Workbook_Open () LogInformation ThisWorkbook.Name & "otvorio" & _ Application.UserName & "" & Format (Now, "yyyy-mm-dd hh: mm") End Sub 

  • Sada je VBA kôd spreman za rad; sljedeći put kada otvorimo excel radnu knjigu datum i vrijeme bit će spremljeni u bilježnicu; pogledajte donju sliku:

Makronaredba neće prebrisati podatke.

Zaključak: Makronaredba će se izvoditi svaki put kada se radna knjiga otvori na navedenoj putanji i mapi.

Ako vam se sviđaju naši blogovi, podijelite ih sa svojim prijateljima na Facebooku. Također nas možete pratiti na Twitteru i Facebooku.

Voljeli bismo čuti vaše mišljenje, javite nam kako možemo poboljšati, nadopuniti ili inovirati svoj rad i učiniti ga boljim za vas. Pišite nam na web stranici e -pošte