Home |
Search |
Today's Posts |
#1
Posted to microsoft.public.excel.programming
|
|||
|
|||
Writing Text Files
I would like to write a vb macro that writes a text file from a row in
a worksheet with the first entry of the row as the file name. i.e. A B Filename1 Data to be written as file Filename2 ... etc. Any help would be appreciated. |
#2
Posted to microsoft.public.excel.programming
|
|||
|
|||
Writing Text Files
No built in capability to do that. You could copy the row2 data to a new
sheet, make that sheet active, then do a File SaveAS, naming the file with the value in A1 of the original sheet. Or you could use low level file io: http://support.microsoft.com/support...eio/fileio.asp File Access with Visual Basic® for Applications -- Regards, Tom Ogilvy "RossD" wrote in message m... I would like to write a vb macro that writes a text file from a row in a worksheet with the first entry of the row as the file name. i.e. A B Filename1 Data to be written as file Filename2 ... etc. Any help would be appreciated. |
#3
Posted to microsoft.public.excel.programming
|
|||
|
|||
Writing Text Files
"Tom Ogilvy" wrote in message ...
No built in capability to do that. You could copy the row2 data to a new sheet, make that sheet active, then do a File SaveAS, naming the file with the value in A1 of the original sheet. Thanks, Tom. Actually, I made some progress on this since my post. I have: Sub FileCreation() Dim RowCount, FileNumber, File_Name Range("A6").Select RowCount = Range(Selection, Selection.End(xlDown)).Count For n = 1 To RowCount FileNumber = FreeFile ' Get unused file number. Open ActiveCell.Value & ".txt" For Output As #FileNumber ' Create file name. Write #FileNumber, ActiveCell.Offset(0, 1).Value ' Outputs text. Close #FileNumber ' Close file. ActiveCell.Offset(1, 0).Select Next n End Sub The only problem now is that the data in the text file had "" around it. I don't know how to eliminate the quotation marks. |
#4
Posted to microsoft.public.excel.programming
|
|||
|
|||
Writing Text Files
Use Print instead of Write in your output line. See Excel VBA help for
details. -- Regards, Tom Ogilvy "RossD" wrote in message om... "Tom Ogilvy" wrote in message ... No built in capability to do that. You could copy the row2 data to a new sheet, make that sheet active, then do a File SaveAS, naming the file with the value in A1 of the original sheet. Thanks, Tom. Actually, I made some progress on this since my post. I have: Sub FileCreation() Dim RowCount, FileNumber, File_Name Range("A6").Select RowCount = Range(Selection, Selection.End(xlDown)).Count For n = 1 To RowCount FileNumber = FreeFile ' Get unused file number. Open ActiveCell.Value & ".txt" For Output As #FileNumber ' Create file name. Write #FileNumber, ActiveCell.Offset(0, 1).Value ' Outputs text. Close #FileNumber ' Close file. ActiveCell.Offset(1, 0).Select Next n End Sub The only problem now is that the data in the text file had "" around it. I don't know how to eliminate the quotation marks. |
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
Similar Threads | ||||
Thread | Forum | |||
writing text to different cell after comparing | Excel Worksheet Functions | |||
using wordwrap in excel for text writing | Excel Worksheet Functions | |||
q; Writing to files | Excel Discussion (Misc queries) | |||
check writing text | Excel Programming | |||
writing to txt files | Excel Programming |