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:
- Exportera cellområdesdata till textfil
- Hantering av textfiler
- Importera textfiler med fler rader än 65536
- Rensa och konvertera importerad textdata
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)