Lista cellinnehåll i textfil

Här demonstreras en teknik för att erhålla t ex cellers formler i en textfil. 

Denna teknik kan vara effektiv för att granska större områden med många och komplexa formler. Även vid upprättandet av ren dokumentation för mallar mm så skapar proceduren ett mervärde.

För att exemplet ska fungera korrekt måste referens anges till  "Microsoft Scripting Runtime" - För närmare detaljer se Fil- och mapphantering.

Se också följande tips:

 

Option Explicit

Sub ListaFormler()

   '© 2002 Alla rättigheter XL-Dennis

   Dim fsoObj As Scripting.FileSystemObject

   Dim fsoTS As Scripting.TextStream

   Dim wbBok As Workbook

   Dim wsBlad As Worksheet

   Dim rnOmrade As Range, rnCell As Range

   Set wbBok = ThisWorkbook

   Set wsBlad = wbBok.Worksheets("Blad1")

 

   With wsBlad

      Set rnOmrade = Selection

   End With

 

   Set fsoObj = New FileSystemObject

   Set fsoTS = fsoObj.CreateTextFile(ThisWorkbook.Path & "\" & "Formler.txt", True, False)

 

   'Loopar igenom det markerade cellområdet i det aktiva arbetsbladet 

   'och skriver celladress och innehåll till textfil

   For Each rnCell In rnOmrade

      fsoTS.WriteLine rnCell.Address(, , xlA1) & vbTab & rnCell.FormulaLocal

   Next rnCell

 

   fsoTS.Close

   Set fsoObj = Nothing

 End Sub

"FormulaLocal" säkerhetsställer att formlerna anges på svenska. Anges inte det i vissa sammanhang erhålls istället de engelska formlerna... 

Vill man istället ha R1C1-cellreferenser ersätts "xlA1" i ovanstående procedur med "xlR1C1".

Resultatet - Formler.txt - kan se ut på följande sätt när filen öppnas:

$B$1 12
$B$2 13
$B$3 14
$B$4 =SUMMA(A4;C4)
$B$5 =SUMMA(A5;C5)
$B$6 =SUMMA(A6;C6)