Skapa fellogg (FSO)


I detta exempel belyses hur vi enkelt kan skapa en fellogg mha av FSO. Här används s k early binding varför en referens måste anges till Microsoft Scripting Runtime.

 

Om ett felmeddelande erhålls vid kopiering till VBA-modul så läs mer här»
 

(© 2002 - 2003 All rights Colo - Used by permission)

 

Option Explicit

 Sub Skapa_Fellogg()

   '© 2003  Alla rättigheter XL-Dennis

   Dim fsoObj As Scripting.FileSystemObject

   Dim tsStream As Scripting.TextStream

   Dim lnFel As Long

   Dim stSokVag As String, stFelText As String, stFilNamn As String

 

   Set fsoObj = New FileSystemObject

 

   On Error GoTo ErrorHandling

 

   'Här skapas ett medvetet fel.

   Err.Raise 1004

 

ExitHere:

   Set tsStream = Nothing

   Set fsoObj = Nothing

   Exit Sub

 

ErrorHandling:

   With Err

      lnFel = .Number

      stFelText = .Description

      .Clear

   End With

 

   'Sökväg till arbetsbokens mapp

   stSokVag = ThisWorkbook.Path & "\"

 

   stFilNamn = "Fel.txt"

 

   'Öppnar filen för läsning och om den inte existerar skapa filen.

   Set tsStream = fsoObj.OpenTextFile(stSokVag & stFilNamn, ForAppending, True)

 

   'Skriver feluppgifterna samt stänger filen.

   With tsStream

      .WriteLine lnFel

      .WriteLine stFelText

      'Datum o tid

      .WriteLine Now

      .WriteBlankLines 1

      .Close

   End With

   Resume ExitHere

End Sub