<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
		<id>http://www.vbex.ru/index.php?action=history&amp;feed=atom&amp;title=VBA%2FExcel%2FAccess%2FWord%2FFile_Path%2FFreeFile</id>
		<title>VBA/Excel/Access/Word/File Path/FreeFile - История изменений</title>
		<link rel="self" type="application/atom+xml" href="http://www.vbex.ru/index.php?action=history&amp;feed=atom&amp;title=VBA%2FExcel%2FAccess%2FWord%2FFile_Path%2FFreeFile"/>
		<link rel="alternate" type="text/html" href="http://www.vbex.ru/index.php?title=VBA/Excel/Access/Word/File_Path/FreeFile&amp;action=history"/>
		<updated>2026-04-05T06:14:02Z</updated>
		<subtitle>История изменений этой страницы в вики</subtitle>
		<generator>MediaWiki 1.30.0</generator>

	<entry>
		<id>http://www.vbex.ru/index.php?title=VBA/Excel/Access/Word/File_Path/FreeFile&amp;diff=1440&amp;oldid=prev</id>
		<title> в 16:33, 26 мая 2010</title>
		<link rel="alternate" type="text/html" href="http://www.vbex.ru/index.php?title=VBA/Excel/Access/Word/File_Path/FreeFile&amp;diff=1440&amp;oldid=prev"/>
				<updated>2010-05-26T16:33:00Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr style=&quot;vertical-align: top;&quot; lang=&quot;ru&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Предыдущая&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Версия 16:33, 26 мая 2010&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; style=&quot;text-align: center;&quot; lang=&quot;ru&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(нет различий)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
			</entry>

	<entry>
		<id>http://www.vbex.ru/index.php?title=VBA/Excel/Access/Word/File_Path/FreeFile&amp;diff=1441&amp;oldid=prev</id>
		<title>Admin: 1 версия</title>
		<link rel="alternate" type="text/html" href="http://www.vbex.ru/index.php?title=VBA/Excel/Access/Word/File_Path/FreeFile&amp;diff=1441&amp;oldid=prev"/>
				<updated>2010-05-26T12:47:06Z</updated>
		
		<summary type="html">&lt;p&gt;1 версия&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;==An Example Using Write # and Input #==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;vb&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Sub TestWriteInput()&lt;br /&gt;
    Dim lOutputFile As Long&lt;br /&gt;
    Dim rg As range&lt;br /&gt;
    Set rg = ThisWorkbook.Worksheets(1).range(&amp;quot;a1&amp;quot;)&lt;br /&gt;
    lOutputFile = FreeFile&lt;br /&gt;
    Open &amp;quot;C:\Write Example.txt&amp;quot; For Output As #lOutputFile&lt;br /&gt;
    Do Until IsEmpty(rg)&lt;br /&gt;
        Write #lOutputFile, rg.value, _&lt;br /&gt;
            rg.Offset(0, 1).value, _&lt;br /&gt;
            rg.Offset(0, 2).value, _&lt;br /&gt;
            rg.Offset(0, 3).value, _&lt;br /&gt;
            rg.Offset(0, 4).value, _&lt;br /&gt;
            rg.Offset(0, 5).value, _&lt;br /&gt;
            rg.Offset(0, 6).value, _&lt;br /&gt;
            rg.Offset(0, 7).value&lt;br /&gt;
        Set rg = rg.Offset(1, 0)&lt;br /&gt;
    Loop&lt;br /&gt;
    Set rg = Nothing&lt;br /&gt;
    Close lOutputFile&lt;br /&gt;
    Dim lInputFile As Long&lt;br /&gt;
    Dim v1, v2, v3, v4&lt;br /&gt;
    Dim v5, v6, v7, v8&lt;br /&gt;
    Set rg = ThisWorkbook.Worksheets(2).range(&amp;quot;a1&amp;quot;)&lt;br /&gt;
    rg.CurrentRegion.ClearContents&lt;br /&gt;
    lInputFile = FreeFile&lt;br /&gt;
    Open &amp;quot;C:\Write Example.txt&amp;quot; For Input As lInputFile&lt;br /&gt;
    Do Until EOF(lInputFile)&lt;br /&gt;
        Input #lInputFile, v1, v2, v3, v4, v5, v6, v7, v8&lt;br /&gt;
        rg.value = v1&lt;br /&gt;
        rg.Offset(0, 1).value = v2&lt;br /&gt;
        rg.Offset(0, 2).value = v3&lt;br /&gt;
        rg.Offset(0, 3).value = v4&lt;br /&gt;
        rg.Offset(0, 4).value = v5&lt;br /&gt;
        rg.Offset(0, 5).value = v6&lt;br /&gt;
        rg.Offset(0, 6).value = v7&lt;br /&gt;
        rg.Offset(0, 7).value = v8&lt;br /&gt;
        Set rg = rg.Offset(1, 0)&lt;br /&gt;
    Loop&lt;br /&gt;
    Set rg = Nothing&lt;br /&gt;
    Close lInputFile&lt;br /&gt;
End Sub&lt;br /&gt;
 &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Examples of the VBA Open Statement==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;vb&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Sub SimpleOpenExamples() &lt;br /&gt;
    Dim lInputFile As Long &lt;br /&gt;
    Dim lOutputFile As Long &lt;br /&gt;
    Dim lAppendFile As Long &lt;br /&gt;
    lInputFile = FreeFile &lt;br /&gt;
    Open &amp;quot;C:\MyInputFile.txt&amp;quot; For Input As #lInputFile &lt;br /&gt;
    lOutputFile = FreeFile &lt;br /&gt;
    Open &amp;quot;C:\MyNewOutputFile.txt&amp;quot; For Output As #lOutputFile &lt;br /&gt;
    lAppendFile = FreeFile &lt;br /&gt;
    Open &amp;quot;C:\MyAppendFile.txt&amp;quot; For Append As #lAppendFile &lt;br /&gt;
    Close lInputFile, lOutputFile, lAppendFile &lt;br /&gt;
End Sub &lt;br /&gt;
 &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Flexible Separators and Delimiters==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;vb&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
     Sub WriteStringsWithDelimiters()&lt;br /&gt;
         Dim sLine As String&lt;br /&gt;
         Dim sFName As String    &amp;quot;Path and name of text file&lt;br /&gt;
         Dim iFNumber As Integer    &amp;quot;File number&lt;br /&gt;
         Dim lRow As Long     &amp;quot;Row number in worksheet&lt;br /&gt;
         Const sVS As String = &amp;quot;;&amp;quot;   &amp;quot;Variable separator character&lt;br /&gt;
         Const sTD As String = &amp;quot;&amp;quot;&amp;quot;&amp;quot;  &amp;quot;Text delimiter character&lt;br /&gt;
         Const sDD As String = &amp;quot;#&amp;quot;    &amp;quot;Date delimiter character&lt;br /&gt;
         sFName = &amp;quot;C:\Delimited.txt&amp;quot;&lt;br /&gt;
         iFNumber = FreeFile&lt;br /&gt;
         Open sFName For Output As #iFNumber&lt;br /&gt;
         lRow = 2&lt;br /&gt;
         Do&lt;br /&gt;
             With Sheet1&lt;br /&gt;
               sLine = sDD &amp;amp; format(.cells(lRow, 1), &amp;quot;yyyy-mmm-dd&amp;quot;) &amp;amp; sDD &amp;amp; sVS&lt;br /&gt;
               sLine = sLine &amp;amp; sTD &amp;amp; .cells(lRow, 2) &amp;amp; sTD &amp;amp; sVS&lt;br /&gt;
               sLine = sLine &amp;amp; sTD &amp;amp; .cells(lRow, 4) &amp;amp; sTD &amp;amp; sVS&lt;br /&gt;
               sLine = sLine &amp;amp; format(.cells(lRow, 6), &amp;quot;0.00&amp;quot;)&lt;br /&gt;
             End With&lt;br /&gt;
             Print #iFNumber, sLine&lt;br /&gt;
             lRow = lRow + 1&lt;br /&gt;
         Loop Until IsEmpty(Sheet1.cells(lRow, 1))&lt;br /&gt;
         Close #iFNumber&lt;br /&gt;
     End Sub&lt;br /&gt;
 &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Handling Files with Low-Level File Handling==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;vb&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Sub LogErrorText()&lt;br /&gt;
    Dim intFile As Integer&lt;br /&gt;
    intFile = FreeFile&lt;br /&gt;
    Open CurDir &amp;amp; &amp;quot;\ErrorLog.Txt&amp;quot; For Append Shared As intFile&lt;br /&gt;
    Write #intFile, &amp;quot;LogErrorDemo&amp;quot;, Now, Err, Error, CurrentUser()&lt;br /&gt;
    Close intFile&lt;br /&gt;
End Sub&lt;br /&gt;
 &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Reading Data Strings==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;vb&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
     Sub ReadStrings()&lt;br /&gt;
           Dim sLine As String&lt;br /&gt;
           Dim sFName As String    &amp;quot;Path and name of text file&lt;br /&gt;
           Dim iFNumber As Integer    &amp;quot;File number&lt;br /&gt;
           Dim lRow As Long     &amp;quot;Row number in worksheet&lt;br /&gt;
           Dim lColumn As Long  &amp;quot;Column number in worksheet&lt;br /&gt;
           Dim vValues As Variant &amp;quot;Hold split values&lt;br /&gt;
           Dim iCount As Integer  &amp;quot;Counter&lt;br /&gt;
           sFName = &amp;quot;C:\Strings.txt&amp;quot;&lt;br /&gt;
           iFNumber = FreeFile&lt;br /&gt;
           Open sFName For Input As #iFNumber&lt;br /&gt;
           Do&lt;br /&gt;
           Line Input #iFNumber, sLine&lt;br /&gt;
           vValues = Split(sLine, &amp;quot;;&amp;quot;)&lt;br /&gt;
           For iCount = LBound(vValues) To UBound(vValues)&lt;br /&gt;
              Debug.Print  vValues(iCount)&lt;br /&gt;
           Next iCount&lt;br /&gt;
           Close #iFNumber&lt;br /&gt;
     End Sub&lt;br /&gt;
 &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Text Files and File Dialog==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;vb&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
     Sub WriteFile()&lt;br /&gt;
         Dim dDate As Date&lt;br /&gt;
         Dim sCustomer As String&lt;br /&gt;
         Dim sProduct As String&lt;br /&gt;
         Dim dPrice As Double&lt;br /&gt;
         Dim sFName As String    &amp;quot;Path and name of text file&lt;br /&gt;
         Dim iFNumber As Integer    &amp;quot;File number&lt;br /&gt;
         Dim lRow As Long     &amp;quot;Row number in worksheet&lt;br /&gt;
         sFName = &amp;quot;C:\Sales.txt&amp;quot;&lt;br /&gt;
         iFNumber = FreeFile&lt;br /&gt;
         Open sFName For Output As #iFNumber&lt;br /&gt;
         lRow = 2&lt;br /&gt;
         Do&lt;br /&gt;
             With Sheet1&lt;br /&gt;
                 dDate = .cells(lRow, 1)&lt;br /&gt;
                 sCustomer = .cells(lRow, 2)&lt;br /&gt;
                 sProduct = .cells(lRow, 4)&lt;br /&gt;
                 dPrice = .cells(lRow, 6)&lt;br /&gt;
             End With&lt;br /&gt;
             Write #iFNumber, dDate, sCustomer, sProduct, dPrice&lt;br /&gt;
             lRow = lRow + 1&lt;br /&gt;
         Loop Until IsEmpty(Sheet1.cells(lRow, 1))&lt;br /&gt;
         Close #iFNumber&lt;br /&gt;
     End Sub&lt;br /&gt;
 &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==uses the delimiter characters to decide the data type of each item and treat it appropriately:==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;vb&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
     Sub ReadStringsWithDelimiters()&lt;br /&gt;
           Dim sLine As String&lt;br /&gt;
           Dim sFName As String     &amp;quot;Path and name of text file&lt;br /&gt;
           Dim iFNumber As Integer    &amp;quot;File number&lt;br /&gt;
           Dim lRow As Long     &amp;quot;Row number in worksheet&lt;br /&gt;
           Dim lColumn As Long      &amp;quot;Column number in worksheet&lt;br /&gt;
           Dim vValues As Variant&lt;br /&gt;
           Dim vValue As Variant&lt;br /&gt;
           Dim iCount As Integer&lt;br /&gt;
           Const sVS As String = &amp;quot;;&amp;quot;   &amp;quot;Variable separator character&lt;br /&gt;
           Const sTD As String = &amp;quot;&amp;quot;&amp;quot;&amp;quot;  &amp;quot;Text delimiter character&lt;br /&gt;
           Const sDD As String = &amp;quot;#&amp;quot;    &amp;quot;Date delimiter character&lt;br /&gt;
           sFName = &amp;quot;C:\Delimited.txt&amp;quot;&lt;br /&gt;
           iFNumber = FreeFile&lt;br /&gt;
           Open sFName For Input As #iFNumber&lt;br /&gt;
             Do&lt;br /&gt;
                   Line Input #iFNumber, sLine&lt;br /&gt;
                   vValues = Split(sLine, sVS)&lt;br /&gt;
                   For Each vValue In vValues&lt;br /&gt;
                   Select Case Left(vValue, 1)&lt;br /&gt;
                         &amp;quot;String&lt;br /&gt;
                      Case sTD&lt;br /&gt;
                         Debug.Print Mid(vValue, 2, Len(vValue) - 2)&lt;br /&gt;
                         &amp;quot;Date&lt;br /&gt;
                      Case sDD&lt;br /&gt;
                         Debug.Print DateValue(Mid(vValue, 2, Len(vValue) - 2))&lt;br /&gt;
                         &amp;quot;Other&lt;br /&gt;
                      Case Else&lt;br /&gt;
                         Debug.Print vValue&lt;br /&gt;
                   End Select&lt;br /&gt;
                   Next vValue&lt;br /&gt;
                   &amp;quot;Loop until end of file&lt;br /&gt;
             Loop Until EOF(iFNumber)&lt;br /&gt;
     Close #iFNumber&lt;br /&gt;
 &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Writing to Text Files Using Print==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;vb&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
     Sub WriteStrings()&lt;br /&gt;
         Dim sLine As String&lt;br /&gt;
         Dim sFName As String    &amp;quot;Path and name of text file&lt;br /&gt;
         Dim iFNumber As Integer    &amp;quot;File number&lt;br /&gt;
         Dim lRow As Long     &amp;quot;Row number in worksheet&lt;br /&gt;
         sFName = &amp;quot;C:\Strings.txt&amp;quot;&lt;br /&gt;
         iFNumber = FreeFile&lt;br /&gt;
         Open sFName For Output As #iFNumber&lt;br /&gt;
         lRow = 2&lt;br /&gt;
         Do&lt;br /&gt;
             With Sheet1&lt;br /&gt;
                 sLine = Format(.Cells(lRow, 1), &amp;quot;yyyy-mmm-dd&amp;quot;) &amp;amp; &amp;quot;;&amp;quot;&lt;br /&gt;
                 sLine = sLine &amp;amp; .Cells(lRow, 2) &amp;amp; &amp;quot;;&amp;quot;&lt;br /&gt;
                 sLine = sLine &amp;amp; .Cells(lRow, 4) &amp;amp; &amp;quot;;&amp;quot;&lt;br /&gt;
                 sLine = sLine &amp;amp; Format(.Cells(lRow, 6), &amp;quot;0.00&amp;quot;)&lt;br /&gt;
             End With&lt;br /&gt;
             Print #iFNumber, sLine&lt;br /&gt;
             lRow = lRow + 1&lt;br /&gt;
         Loop Until IsEmpty(Sheet1.Cells(lRow, 1))&lt;br /&gt;
         Close #iFNumber&lt;br /&gt;
     End Sub&lt;br /&gt;
 &amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	</feed>